Commit ef84f43c authored by rajat.kulkarni's avatar rajat.kulkarni

Update .gitlab-ci.yml

parent c28945cf
Pipeline #23188 failed
# This file is a template, and might need editing before it works on your project.
# Official image for Hashicorp's Terraform. It uses light image which is Alpine
# based as it is much lighter.
#
# Entrypoint is also needed as image by default set `terraform` binary as an
# entrypoint.
# To contribute improvements to CI/CD templates, please follow the Development guide at:
# https://docs.gitlab.com/ee/development/cicd/templates.html
# This specific template is located at:
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Terraform.gitlab-ci.yml
image:
name: hashicorp/terraform:light
entrypoint:
- '/usr/bin/env'
- 'PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
- name: Terraform/Base.gitlab-ci.yml # https://gitlab.com/gitlab-org/gitlab/blob/master/lib/gitlab/ci/templates/Terraform/Base.latest.gitlab-ci.yml
# Default output file for Terraform plan
variables:
PLAN: plan.tfplan
TF_VAR_ACCESS_KEY: ${AWS_ACCESS_KEY_ID}
TF_VAR_SECRET_KEY: ${AWS_SECRET_ACCESS_KEY}
TF_VAR_AWS_REGION: ${AWS_DEFAULT_REGION}
cache:
paths:
- .terraform
before_script:
- terraform --version
- terraform init
stages:
- validate
- install
- build
- test
- deploy
- plan
- apply
- destroy
validate:
stage: validate
install:
tags:
- rr
stage: install
script:
- terraform validate
- curl -o terraform.zip https://releases.hashicorp.com/terraform/0.12.2/
plan:
only:
- master
build:
tags:
- rs
stage: build
script:
- terraform plan -out=$PLAN
artifacts:
name: plan
paths:
- $PLAN
# Separate apply job for manual launching Terraform as it can be destructive
# action.
- terraform --version
- terraform init
only:
- merge_requests
plan:
tags:
- rs
stage: plan
script:
- terraform plan
only:
- master
apply:
stage: deploy
environment:
name: production
tags:
- rs
stage: apply
script:
- terraform apply -input=false $PLAN
- terraform apply
dependencies:
- plan
- build
when: manual
only:
- master
destroy:
tags:
- rs
stage: destroy
script:
- echo "Destroying resources"
- terraform destroy
dependencies:
- apply
when: manual
only:
refs:
- master
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment