From e19cd3152204cdf39a1eac228bca0b718e4c29e1 Mon Sep 17 00:00:00 2001 From: Taylor Monacelli Date: Mon, 20 Jan 2025 11:51:04 -0800 Subject: [PATCH] create 3rd and 4th attempts not refactored --- .github/workflows/packer.yml | 84 ++++++++++++++++++++++++++++++++++-- 1 file changed, 80 insertions(+), 4 deletions(-) diff --git a/.github/workflows/packer.yml b/.github/workflows/packer.yml index 05885e3..cacb862 100644 --- a/.github/workflows/packer.yml +++ b/.github/workflows/packer.yml @@ -9,7 +9,7 @@ jobs: name: Packer First Attempt steps: - name: Checkout Repository - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: submodules: "true" - name: Setup `packer` @@ -46,11 +46,85 @@ jobs: name: Packer Second Attempt steps: - name: Checkout Repository - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: submodules: "true" - name: Setup `packer` - uses: hashicorp/setup-packer@1aa358be5cf73883762b302a3a03abd66e75b232 # v3.1.0 + uses: hashicorp/setup-packer@1aa358be5cf73883762b302a3a03abd66e75b232 + id: setup + with: + version: ${{ env.PRODUCT_VERSION }} + - name: Run `packer init` + id: init + run: packer init . + - name: Run `packer fmt` + id: fmt + run: packer fmt -check . + - name: Run `packer validate` + id: validate + run: packer validate -syntax-only . + - name: Run `packer build` + id: build + run: packer build -force -var-file=variables.json aws-ubuntu.pkr.hcl + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + AWS_VPC_ID: ${{ secrets.AWS_VPC_ID }} + AWS_SUBNET_ID: ${{ secrets.AWS_SUBNET_ID }} + AWS_DEFAULT_REGION: ${{ secrets.AWS_DEFAULT_REGION }} + - name: Cleanup Packer Resources + if: failure() || cancelled() + run: | + pkill packer + packer-third-attempt: + needs: packer-second-attempt + if: failure() + runs-on: ubuntu-latest + name: Packer Third Attempt + steps: + - name: Checkout Repository + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + with: + submodules: "true" + - name: Setup `packer` + uses: hashicorp/setup-packer@1aa358be5cf73883762b302a3a03abd66e75b232 + id: setup + with: + version: ${{ env.PRODUCT_VERSION }} + - name: Run `packer init` + id: init + run: packer init . + - name: Run `packer fmt` + id: fmt + run: packer fmt -check . + - name: Run `packer validate` + id: validate + run: packer validate -syntax-only . + - name: Run `packer build` + id: build + run: packer build -force -var-file=variables.json aws-ubuntu.pkr.hcl + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + AWS_VPC_ID: ${{ secrets.AWS_VPC_ID }} + AWS_SUBNET_ID: ${{ secrets.AWS_SUBNET_ID }} + AWS_DEFAULT_REGION: ${{ secrets.AWS_DEFAULT_REGION }} + - name: Cleanup Packer Resources + if: failure() || cancelled() + run: | + pkill packer + packer-fourth-attempt: + needs: packer-third-attempt + if: failure() + runs-on: ubuntu-latest + name: Packer Fourth Attempt + steps: + - name: Checkout Repository + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + with: + submodules: "true" + - name: Setup `packer` + uses: hashicorp/setup-packer@1aa358be5cf73883762b302a3a03abd66e75b232 id: setup with: version: ${{ env.PRODUCT_VERSION }} @@ -81,9 +155,11 @@ jobs: needs: - packer-first-attempt - packer-second-attempt + - packer-third-attempt + - packer-fourth-attempt if: | always() && - (needs.packer-first-attempt.result == 'success' || needs.packer-second-attempt.result == 'success') + (needs.packer-first-attempt.result == 'success' || needs.packer-second-attempt.result == 'success' || needs.packer-third-attempt.result == 'success' || needs.packer-fourth-attempt.result == 'success') runs-on: ubuntu-latest steps: - run: echo "All tests passed!"