terraform plan

This commit is contained in:
Jun-te Kim 2025-12-06 17:12:02 +00:00
parent 505aa2cc55
commit 5e7153204f

View file

@ -7,7 +7,7 @@ env:
TF_CLOUD_ORGANIZATION: "MealCraft"
TF_API_TOKEN: "${{ secrets.TF_API_TOKEN }}"
TF_WORKSPACE: "production"
CONFIG_DIRECTORY: "./"
CONFIG_DIRECTORY: ${{ github.workspace }}
TF_VAR_public_ip: "${{ secrets.PUBLIC_IP }}"
jobs:
@ -19,7 +19,13 @@ jobs:
permissions:
contents: read
pull-requests: write
steps:
- name: Install dependencies
run: |
apt-get update
apt-get install -y curl unzip jq ca-certificates
- name: Checkout
uses: actions/checkout@v3
@ -51,35 +57,43 @@ jobs:
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
// 1. Retrieve existing bot comments for the PR
const { data: comments } = await github.rest.issues.listComments({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
});
const botComment = comments.find(comment => {
return comment.user.type === 'Bot' && comment.body.includes('Terraform Cloud Plan Output')
return comment.user.type === 'Bot' && comment.body.includes('Terraform Cloud Plan Output');
});
const output = `#### Terraform Cloud Plan Output
\`\`\`
Plan: ${{ steps.plan-output.outputs.add }} to add, ${{ steps.plan-output.outputs.change }} to change, ${{ steps.plan-output.outputs.destroy }} to destroy.
\`\`\`
[Terraform Cloud Plan](${{ steps.plan-run.outputs.run_link }})
`;
\`\`\`
Plan: ${{
steps.plan-output.outputs.add
}} to add, ${{
steps.plan-output.outputs.change
}} to change, ${{
steps.plan-output.outputs.destroy
}} to destroy.
\`\`\`
[Terraform Cloud Plan](${{ steps.plan-run.outputs.run_link }})
`;
if (botComment) {
github.rest.issues.deleteComment({
await github.rest.issues.deleteComment({
owner: context.repo.owner,
repo: context.repo.repo,
comment_id: botComment.id,
});
}
github.rest.issues.createComment({
await github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: output
})
body: output,
});
- name: Print TF_VAR_public_ip
run: 'echo "📡 Public IP used by Terraform: $TF_VAR_public_ip"'
run: echo "📡 Public IP used by Terraform: $TF_VAR_public_ip"