github.com/jaylevin/jenkins-library@v1.230.4/resources/metadata/terraformExecute.yaml (about)

     1  metadata:
     2    name: terraformExecute
     3    description: Executes Terraform
     4    longDescription: |
     5      This step executes the terraform binary with the given command, and is able to fetch additional variables from vault.
     6  spec:
     7    inputs:
     8      secrets:
     9        - name: cliConfigFileCredentialsId
    10          description: Jenkins 'Secret file' credentials ID containing terraform CLI configuration. You can find more details about it in the [Terraform documentation](https://www.terraform.io/docs/cli/config/config-file.html#credentials).
    11          type: jenkins
    12      params:
    13        - name: command
    14          type: string
    15          scope:
    16            - PARAMETERS
    17            - STAGES
    18            - STEPS
    19          default: plan
    20        - name: terraformSecrets
    21          scope:
    22            - PARAMETERS
    23            - STAGES
    24            - STEPS
    25          type: string
    26          resourceRef:
    27            - type: vaultSecretFile
    28              name: terraformFileVaultSecretName
    29              default: terraform
    30        - name: globalOptions
    31          type: "[]string"
    32          scope:
    33            - PARAMETERS
    34            - STAGES
    35            - STEPS
    36        - name: additionalArgs
    37          type: "[]string"
    38          scope:
    39            - PARAMETERS
    40            - STAGES
    41            - STEPS
    42        - name: init
    43          type: bool
    44          descriptions: Executes terraform init prior to the configured command.
    45          scope:
    46            - PARAMETERS
    47            - STAGES
    48            - STEPS
    49          default: false
    50        - name: cliConfigFile
    51          type: string
    52          description: Path to the terraform CLI configuration file (https://www.terraform.io/docs/cli/config/config-file.html#credentials).
    53          scope:
    54            - PARAMETERS
    55            - STAGES
    56            - STEPS
    57          secret: true
    58          resourceRef:
    59            - name: cliConfigFileCredentialsId
    60              type: secret
    61            - type: vaultSecretFile
    62              name: cliConfigFileVaultSecretName
    63              default: terraform
    64        - name: workspace
    65          type: string
    66          descriptions: Name of the terraform workspace to operate on.
    67          scope:
    68            - PARAMETERS
    69            - STAGES
    70            - STEPS
    71    containers:
    72      - name: terraform
    73        image: hashicorp/terraform:1.0.10
    74        options:
    75          - name: --entrypoint
    76            value: ''
    77        env:
    78          - name: TF_IN_AUTOMATION
    79            value: piper
    80    outputs:
    81      resources:
    82        - name: commonPipelineEnvironment
    83          type: piperEnvironment
    84          params:
    85            - name: custom/terraformOutputs
    86              type: 'map[string]interface{}'