1+ name : ' Terraform GitHub Actions'
2+ on :
3+ - pull_request
4+
5+ jobs :
6+ terraform :
7+ name : ' Terraform'
8+ runs-on : ubuntu-latest
9+ steps :
10+
11+ - name : ' Checkout'
12+ uses : actions/checkout@master
13+
14+ - name : ' Terraform Format'
15+ uses : clouddrove/github-actions@v2.0
16+ with :
17+ actions_subcommand : ' fmt'
18+
19+ - name : ' Terraform Init For Generate-certificate-dns'
20+ uses : clouddrove/github-actions@v2.0
21+ with :
22+ actions_subcommand : ' init'
23+ tf_actions_working_dir : ./_example/generate-certificate-dns
24+
25+ - name : ' Terraform Init For Generate-certificate-email'
26+ uses : clouddrove/github-actions@v2.0
27+ with :
28+ actions_subcommand : ' init'
29+ tf_actions_working_dir : ./_example/generate-certificate-email
30+
31+ - name : Configure AWS Credentials
32+ uses : clouddrove/configure-aws-credentials@v1
33+ with :
34+ aws-access-key-id : ${{ secrets.AWS_ACCESS_KEY_ID }}
35+ aws-secret-access-key : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
36+ aws-region : us-east-2
37+
38+ - name : ' Terraform Plan For Generate-certificate-dns'
39+ uses : clouddrove/github-actions@v2.0
40+ with :
41+ actions_subcommand : ' plan'
42+ tf_actions_working_dir : ./_example/generate-certificate-dns
43+ env :
44+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
45+
46+ - name : ' Terraform Plan For Generate-certificate-email'
47+ uses : clouddrove/github-actions@v2.0
48+ with :
49+ actions_subcommand : ' plan'
50+ tf_actions_working_dir : ./_example/generate-certificate-email
51+ env :
52+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
53+
54+ - name : ' Terratest for Generate-certificate-dns'
55+ uses : clouddrove/github-actions@v2.0
56+ with :
57+ actions_subcommand : ' terratest'
58+ tf_actions_working_dir : ./_test/generate-certificate-dns
59+
60+ - name : ' Terratest for Generate-certificate-email'
61+ uses : clouddrove/github-actions@v2.0
62+ with :
63+ actions_subcommand : ' terratest'
64+ tf_actions_working_dir : ./_test/generate-certificate-email
65+ env :
66+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
67+
68+ - name : ' Slack Notification'
69+ uses : clouddrove/action-slack@v2
70+ with :
71+ status : ${{ job.status }}
72+ fields : repo,author
73+ author_name : ' Clouddrove'
74+ env :
75+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }} # required
76+ SLACK_WEBHOOK_URL : ${{ secrets.SLACK_WEBHOOK }} # required
77+ if : always()
0 commit comments