pipeline: validate: image: alpine:3.16 when: path: "dns/**" event: pull_request commands: - apk add --no-cache terraform - terraform version - cd dns - env - terraform init - terraform validate - terraform plan -var "token=$LINODE_TOKEN" secrets: - source: linode_token target: LINODE_TOKEN - source: aws_access_key_id target: AWS_ACCESS_KEY_ID - source: aws_secret_access_key target: AWS_SECRET_ACCESS_KEY deploy: image: alpine:3.16 when: path: "dns/**" branch: main event: push commands: - apk add --no-cache terraform - terraform version - cd dns - terraform init - terraform validate - terraform plan -out deploy.plan -var "token=$LINODE_TOKEN" - terraform apply deploy.plan -var "token=$LINODE_TOKEN" secrets: [linode_token, aws_access_key_id, aws_secret_access_key]