# Add cleanup job to remove everything that have been created on your cloud provider by Terraform.

Pipeline step10

The final step is the time to cleanup what we built previously.

To remove all things created by Terraform, we will create a destroy job which simply call a terraform destroy command.

Follow those steps to apply all changes described in this step

stack-lambda/pipeline/pipeline.yml





 





 











 


 

groups:
  - name: all
    jobs:
...
  - name: destroy
    jobs:
    - terraform-destroy

jobs:
...
  - name: terraform-destroy
    max_in_flight: 1
    build_logs_to_retain: 10
    plan:
      - do:
          - get: git_stack
            trigger: false
          - get: git_config
            trigger: false
          - *task-merge-stack-and-config
          - put: tfstate
            params:
              action: destroy
              terraform_source: merged-stack/
            get_params:
              action: destroy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

As you are familiar enough, create a new job which gets our Git, merge parts, get also the tfstate file to know the current state of what have been created by Terraform, then call terraform resource to destroy it. The only specificity is that we created a dedicated group for this job called destroy in order to have it into a dedicated section of our pipeline view.

Add and commit those changes in Git:

git add .
git commit -m "Step 9"
git push origin stacks
1
2
3

Get back to Cycloid's dashboard, click on the Refresh pipeline button Refresh pipeline.

Call this new job and that's it, all cleaned up!

destroy

You did it! Well done. Now is the time to review our Advanced Guide.