drmofu.fortiflexvm.fortiflexvm_configs_create (2.0.0) — module

Create a new FortiFlex Configuration.

| "added in version" 1.0.0 of drmofu.fortiflexvm"

Authors: Xinwei Du (@DrMofu)

Install collection

Install with ansible-galaxy collection install drmofu.fortiflexvm:==2.0.0


Add to requirements.yml

  collections:
    - name: drmofu.fortiflexvm
      version: 2.0.0

Description

This module creates a new FortiFlex Configuration under a program.

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Create entitlement configuration
  hosts: localhost
  collections:
    - fortinet.fortiflexvm
  vars:
    username: "<your_own_value>"
    password: "<your_own_value>"
  tasks:
    - name: Create a configuration
      fortinet.fortiflexvm.fortiflexvm_configs_create:
        username: "{{ username }}"
        password: "{{ password }}"
        programSerialNumber: "ELAVMS000000XXXX"
        name: "ansible"

        # If FortiFlex API supports new params while FortiFlex Ansible does not support them yet,
        # you can set bypass_validation: true. The FortiFlex Ansible will allow you to use new param
        # without perforam any sanity check. The default value is false.
        bypass_validation: false

        # Check whether the parameters are set correctly before sending the data. The default value is false.
        # If set to true, FortiFlexVM Ansible will check the parameter correctness based on the rules.
        # It is only for debugging purposes, not recommended to set it as true since the rules in FortiFlexVM Ansible may be outdated.
        check_parameters: false

        # Please only use one of the following.
        fortiGateBundle:
          cpu: "2"      # "1", "2", "4", "8", "16", "32", "2147483647"
          service: "FC" # "FC", "UTM", "ENT", "ATP"
          vdom: 10      # 0 ~ 500

        # fortiManager:
        #   device: 1                         # 1 ~ 100000
        #   adom: 1                           # 1 ~ 100000

        # fortiWeb:
        #   cpu: "4"                          # "1", "2", "4", "8", "16"
        #   service: "FWBSTD"                 # "FWBSTD" or "FWBADV"

        # fortiGateLCS:
        #   cpu: 4                            # 1 ~ 96
        #   fortiGuardServices: []            # "IPS", "AVDB", "FGSA", "DLDB", "FAIS", "FURLDNS"
        #   supportService: "FC247"           # "FC247", "ASET"
        #   vdom: 1                           # 1 ~ 500
        #   cloudServices: ["FAMS", "SWNM"]   # "FAMS", "SWNM", "AFAC", "FAZC"

        # fortiAnalyzer:
        #   storage: 5                        # 5 ~ 8300
        #   adom: 1                           # 0 ~ 1200
        #   service: "FAZFC247"               # "FAZFC247"

        # fortiPortal:
        #   device: 1                         # 0 ~ 100000

        # fortiADC:
        #   cpu: "1"                          # "1", "2", "4", "8", "16", "32"
        #   service: "FDVSTD"                 # "FDVSTD", "FDVADV" or "FDVFC247"

        # fortiGateHardware:
        #   model: "FGT40F"                   # "FGT40F", "FGT60F", "FGT70F", "FGT80F", "FG100F", "FGT60E", "FGT61F",
        #                                     # "FG100E", "FG101F", "FG200E", "FG200F", "FG201F", "FG4H0F", "FG6H0F"
        #   service: "FGHWFC247"              # "FGHWFC247", "FGHWFCEL", "FDVFC247", "FGHWUTP" or "FGHWENT"
        #   addons: "NONE"

      register: result

    - name: Display response
      debug:
        var: result.configs

Inputs

    
name:
    description:
    - The name of your Flex VM Configuration.
    required: true
    type: str

fortiADC:
    description:
    - FortiADC Virtual Machine.
    required: false
    suboptions:
      cpu:
        description:
        - Number of CPUs. The value of this attribute is one of "1", "2", "4", "8", "16"
          or "32".
        required: true
        type: str
      service:
        description:
        - Support Service. "FDVSTD" (Standard), "FDVADV" (Advanced) or "FDVFC247" (FortiCare
          Premium).
        required: true
        type: str
    type: dict
    version_added: 2.0.0
    version_added_collection: drmofu.fortiflexvm

fortiWeb:
    description:
    - FortiWeb Virtual Machine - Service Bundle.
    required: false
    suboptions:
      cpu:
        description:
        - Number of CPUs. The value of this attribute is one of "1", "2" "4", "8" or "16".
        required: true
        type: str
      service:
        description:
        - Service Package. Valid values are "FWBSTD" (Standard) or "FWBADV" (Advanced).
        required: true
        type: str
    type: dict

password:
    description:
    - The password to authenticate. If not declared, the code will read the environment
      variable FORTIFLEX_ACCESS_PASSWORD.
    required: false
    type: str

username:
    description:
    - The username to authenticate. If not declared, the code will read the environment
      variable FORTIFLEX_ACCESS_USERNAME.
    required: false
    type: str

fortiPortal:
    description:
    - FortiPortal Virtual Machine.
    required: false
    suboptions:
      device:
        description:
        - Number of managed devices. A number between 0 and 100000 (inclusive).
        required: true
        type: int
    type: dict

fortiGateLCS:
    description:
    - FortiGate Virtual Machine - A La Carte Services.
    required: false
    suboptions:
      cloudServices:
        default: []
        description:
        - The cloud services this FortiGate Virtual Machine supports. The default value
          is an empty list.
        - It should contain zero, one or more elements of ["FAMS", "SWNM", "AFAC", "FAZC"].
        elements: str
        required: false
        type: list
      cpu:
        description:
        - The number of CPUs. A number between 1 and 96 (inclusive).
        required: true
        type: int
      fortiGuardServices:
        default: []
        description:
        - The fortiguard services this FortiGate Virtual Machine supports. The default
          value is an empty list.
        - It should contain zero, one or more elements of ["IPS", "AVDB", "FGSA", "DLDB",
          "FAIS", "FURLDNS"].
        elements: str
        required: false
        type: list
      supportService:
        description:
        - Valid values are "FC247" (FortiCare 24x7) or "ASET" (FortiCare Elite).
        required: true
        type: str
      vdom:
        description:
        - Number of VDOMs. A number between 1 and 500 (inclusive).
        required: true
        type: int
    type: dict

fortiManager:
    description:
    - FortiManager Virtual Machine.
    required: false
    suboptions:
      adom:
        description:
        - Number of ADOMs. A number between 1 and 100000 (inclusive).
        required: true
        type: int
      device:
        description:
        - Number of managed devices. A number between 1 and 100000 (inclusive).
        required: true
        type: int
    type: dict

fortiAnalyzer:
    description:
    - FortiAnalyzer Virtual Machine.
    required: false
    suboptions:
      adom:
        description:
        - Number of ADOMs. A number between 0 and 1200 (inclusive).
        required: true
        type: int
      service:
        description:
        - Support Service. Currently, the only available option is "FAZFC247" (FortiCare
          Premium). The default value is "FAZFC247".
        required: true
        type: str
      storage:
        description:
        - Daily Storage (GB). A number between 5 and 8300 (inclusive).
        required: true
        type: int
    type: dict

fortiGateBundle:
    description:
    - FortiGate Virtual Machine - Service Bundle.
    required: false
    suboptions:
      cpu:
        description:
        - The number of CPUs. The value of this attribute is one of "1", "2", "4", "8",
          "16",  "32" or "2147483647" (unlimited).
        required: true
        type: str
      service:
        description:
        - The value of this attribute is one of "FC" (FortiCare), "UTM", "ENT" (Enterprise)
          or "ATP".
        required: true
        type: str
      vdom:
        default: 0
        description:
        - Number of VDOMs. A number between 0 and 500 (inclusive). The default number
          is 0.
        required: false
        type: int
    type: dict

check_parameters:
    default: false
    description:
    - Check whether the parameters are set correctly before sending the data.
    - If set to true, FortiFlexVM Ansible will check the parameter correctness based on
      the rules.
    - It is only for debugging purposes, not recommended to set it as true since the rules
      in FortiFlexVM Ansible may be outdated.
    required: false
    type: bool
    version_added: 2.0.0
    version_added_collection: drmofu.fortiflexvm

bypass_validation:
    default: false
    description:
    - Only set to True when module schema diffs with FortiFlex API structure, module continues
      to execute without validating parameters.
    required: false
    type: bool
    version_added: 2.0.0
    version_added_collection: drmofu.fortiflexvm

fortiGateHardware:
    description:
    - FortiGate Hardware.
    required: false
    suboptions:
      addons:
        default: NONE
        description:
        - Addons. Only support "NONE" now, will support "FGHWFCELU" (FortiCare Elite Upgrade)
          in the future.
        required: false
        type: str
      model:
        description:
        - The device model. Possible values are
        - FGT40F (FortiGate-40F), FGT60F (FortiGate-60F), FGT70F (FortiGate-70F), FGT80F
          (FortiGate-80F),
        - FG100F (FortiGate-100F), FGT60E (FortiGate-60E), FGT61F (FortiGate-61F), FG100E
          (FortiGate-100E),
        - FG101F (FortiGate-101F), FG200E (FortiGate-200E), FG200F (FortiGate-200F), FG201F
          (FortiGate-201F),
        - FG4H0F (FortiGate-400F), FG6H0F (FortiGate-600F).
        required: true
        type: str
      service:
        description:
        - Support Service. Possible values are FGHWFC247 (FortiCare Premium), FGHWFCEL
          (FortiCare Elite),
        - FDVFC247 (ATP), FGHWUTP (UTP) or FGHWENT (Enterprise).
        required: true
        type: str
    type: dict
    version_added: 2.0.0
    version_added_collection: drmofu.fortiflexvm

programSerialNumber:
    description:
    - The serial number of your Flex VM Program.
    required: true
    type: str

Outputs

configs:
  contains:
    fortiADC:
      contains:
        cpu:
          description:
          - Number of CPUs. The value of this attribute is one of "1", "2", "4", "8",
            "16" or "32".
          returned: always
          type: str
        service:
          description:
          - Support Service. "FDVSTD" (Standard), "FDVADV" (Advanced) or "FDVFC247"
            (FortiCare Premium).
          returned: always
          type: str
      description:
      - FortiADC Virtual Machine.
      returned: changed
      type: dict
    fortiAnalyzer:
      contains:
        adom:
          description:
          - Number of ADOMs. A number between 0 and 1200 (inclusive).
          returned: always
          type: int
        service:
          description:
          - Support Service. Currently, the only available option is "FAZFC247" (FortiCare
            Premium).
          - The default value is "FAZFC247".
          returned: always
          type: str
        storage:
          description:
          - Daily Storage (GB). A number between 5 and 8300 (inclusive).
          returned: always
          type: int
      description:
      - FortiAnalyzer Virtual Machine.
      returned: changed
      type: dict
    fortiGateBundle:
      contains:
        cpu:
          description:
          - The number of CPUs. The value of this attribute is one of "1", "2", "4",
            "8", "16",  "32" or "2147483647" (unlimited).
          returned: always
          type: str
        service:
          description:
          - he value of this attribute is one of "FC" (FortiCare), "UTM", "ENT" (Enterprise)
            or "ATP".
          returned: always
          type: str
        vdom:
          description:
          - Number of VDOMs. A number between 0 and 500 (inclusive). The default number
            is 0.
          returned: always
          type: int
      description:
      - FortiGate Virtual Machine - Service Bundle.
      returned: changed
      type: dict
    fortiGateHardware:
      contains:
        addons:
          description:
          - Addons. Only support "NONE" now, will support "FGHWFCELU" (FortiCare Elite
            Upgrade) in the future.
          returned: always
          type: str
        model:
          description:
          - The device model. Possible values are
          - FGT40F (FortiGate-40F), FGT60F (FortiGate-60F), FGT70F (FortiGate-70F),
            FGT80F (FortiGate-80F),
          - FG100F (FortiGate-100F), FGT60E (FortiGate-60E), FGT61F (FortiGate-61F),
            FG100E (FortiGate-100E),
          - FG101F (FortiGate-101F), FG200E (FortiGate-200E), FG200F (FortiGate-200F),
            FG201F (FortiGate-201F),
          - FG4H0F (FortiGate-400F), FG6H0F (FortiGate-600F).
          returned: always
          type: str
        service:
          description:
          - Support Service. Possible values are FGHWFC247 (FortiCare Premium), FGHWFCEL
            (FortiCare Elite),
          - FDVFC247 (ATP), FGHWUTP (UTP) or FGHWENT (Enterprise).
          returned: always
          type: str
      description:
      - FortiGate Hardware.
      returned: changed
      type: dict
    fortiGateLCS:
      contains:
        cloudServices:
          description:
          - The cloud services this FortiGate Virtual Machine supports. The default
            value is an empty list.
          - It should contain zero, one or more elements of ["FAMS", "SWNM", "AFAC",
            "FAZC"].
          returned: always
          type: list
        cpu:
          description:
          - The number of CPUs. A number between 1 and 96 (inclusive).
          returned: always
          type: int
        fortiGuardServices:
          description:
          - The fortiguard services this FortiGate Virtual Machine supports. The default
            value is an empty list.
          - It should contain zero, one or more elements of ["IPS", "AVDB", "FGSA",
            "DLDB", "FAIS", "FURLDNS"].
          returned: always
          type: list
        supportService:
          description:
          - Valid values are "FC247" (FortiCare 24x7) or "ASET" (FortiCare Elite).
          returned: always
          type: str
        vdom:
          description:
          - Number of VDOMs. A number between 1 and 500 (inclusive).
          returned: always
          type: int
      description:
      - FortiGate Virtual Machine - A La Carte Services.
      returned: changed
      type: dict
    fortiManager:
      contains:
        adom:
          description:
          - Number of ADOMs. A number between 1 and 100000 (inclusive).
          returned: always
          type: int
        device:
          description:
          - Number of managed devices. A number between 1 and 100000 (inclusive).
          returned: always
          type: int
      description:
      - FortiManager Virtual Machine.
      returned: changed
      type: dict
    fortiPortal:
      contains:
        device:
          description:
          - Number of managed devices. A number between 0 and 100000 (inclusive).
          returned: always
          type: str
      description:
      - FortiPortal Virtual Machine.
      returned: changed
      type: dict
    fortiWeb:
      contains:
        cpu:
          description:
          - Number of CPUs. The value of this attribute is one of "1", "2", "4", "8"
            or "16".
          returned: always
          type: str
        service:
          description:
          - Service Package. Valid values are "FWBSTD" (Standard) or "FWBADV" (Advanced).
          returned: always
          type: str
      description:
      - FortiWeb Virtual Machine - Service Bundle.
      returned: changed
      type: dict
    id:
      description: The ID of the configuration.
      returned: always
      sample: 21
      type: int
    name:
      description: The name of the configuration.
      returned: always
      sample: Configuration Name
      type: str
    programSerialNumber:
      description: The program serial number the configuration belongs to.
      returned: always
      sample: ELAVMR0000000101
      type: str
    status:
      description: The status of the configuration.
      returned: always
      sample: ACTIVE
      type: str
  description: The configuration you create.
  returned: always
  type: dict