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{}'