From 7224854b1ee3281dd9986aeb5b2c33411cdd4e6b Mon Sep 17 00:00:00 2001 From: "Michael S. Molina" Date: Sun, 23 Apr 2023 14:33:45 -0300 Subject: [PATCH] fix: Docker ephemeral env --- .github/workflows/docker-ephemeral-env.yml | 124 ++++++++++----------- 1 file changed, 62 insertions(+), 62 deletions(-) diff --git a/.github/workflows/docker-ephemeral-env.yml b/.github/workflows/docker-ephemeral-env.yml index 544c1c8b1f421..e3ca7473d2aa9 100644 --- a/.github/workflows/docker-ephemeral-env.yml +++ b/.github/workflows/docker-ephemeral-env.yml @@ -1,4 +1,4 @@ -name: Push ephmereral env image +name: Push ephemeral env image on: workflow_run: @@ -17,14 +17,14 @@ jobs: id: check shell: bash run: | - aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - if [ -n "${{ (secrets.AWS_ACCESS_KEY_ID != '' && - secrets.AWS_ACCESS_KEY_ID != '' && - secrets.AWS_SECRET_ACCESS_KEY != '' && - secrets.AWS_SECRET_ACCESS_KEY != '') || '' }}" ]; then - echo "has-secrets=1" >> "$GITHUB_OUTPUT" - fi + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + if [ -n "${{ (secrets.AWS_ACCESS_KEY_ID != '' && + secrets.AWS_ACCESS_KEY_ID != '' && + secrets.AWS_SECRET_ACCESS_KEY != '' && + secrets.AWS_SECRET_ACCESS_KEY != '') || '' }}" ]; then + echo "has-secrets=1" >> "$GITHUB_OUTPUT" + fi docker_ephemeral_env: needs: config @@ -33,66 +33,66 @@ jobs: runs-on: ubuntu-latest steps: - - name: 'Download artifact' - uses: actions/github-script@v3.1.0 - with: - script: | - const artifacts = await github.actions.listWorkflowRunArtifacts({ - owner: context.repo.owner, - repo: context.repo.repo, - run_id: ${{ github.event.workflow_run.id }}, - }); + - name: "Download artifact" + uses: actions/github-script@v3.1.0 + with: + script: | + const artifacts = await github.actions.listWorkflowRunArtifacts({ + owner: context.repo.owner, + repo: context.repo.repo, + run_id: ${{ github.event.workflow_run.id }}, + }); - core.info('*** artifacts') - core.info(JSON.stringify(artifacts)) + core.info('*** artifacts') + core.info(JSON.stringify(artifacts)) - const matchArtifact = artifacts.data.artifacts.filter((artifact) => { - return artifact.name == "build" - })[0]; - if(!matchArtifact) return core.setFailed("Build artifacts not found") + const matchArtifact = artifacts.data.artifacts.filter((artifact) => { + return artifact.name == "build" + })[0]; + if(!matchArtifact) return core.setFailed("Build artifacts not found") - const download = await github.actions.downloadArtifact({ - owner: context.repo.owner, - repo: context.repo.repo, - artifact_id: matchArtifact.id, - archive_format: 'zip', - }); - var fs = require('fs'); - fs.writeFileSync('${{github.workspace}}/build.zip', Buffer.from(download.data)); + const download = await github.actions.downloadArtifact({ + owner: context.repo.owner, + repo: context.repo.repo, + artifact_id: matchArtifact.id, + archive_format: 'zip', + }); + var fs = require('fs'); + fs.writeFileSync('${{github.workspace}}/build.zip', Buffer.from(download.data)); - - run: unzip build.zip + - run: unzip build.zip - - name: Display downloaded files (debug) - run: ls -la + - name: Display downloaded files (debug) + run: ls -la - - name: Get SHA - id: get-sha - run: echo "::set-output name=sha::$(cat ./SHA)" + - name: Get SHA + id: get-sha + run: echo "::set-output name=sha::$(cat ./SHA)" - - name: Get PR - id: get-pr - run: echo "::set-output name=num::$(cat ./PR-NUM)" + - name: Get PR + id: get-pr + run: echo "::set-output name=num::$(cat ./PR-NUM)" - - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v1 - with: - aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - aws-region: us-west-2 + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v1 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: us-west-2 - - name: Login to Amazon ECR - id: login-ecr - uses: aws-actions/amazon-ecr-login@v1 + - name: Login to Amazon ECR + id: login-ecr + uses: aws-actions/amazon-ecr-login@v1 - - name: Load, tag and push image to ECR - id: push-image - env: - ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }} - ECR_REPOSITORY: superset-ci - SHA: ${{ steps.get-sha.outputs.sha }} - IMAGE_TAG: pr-${{ steps.get-pr.outputs.num }} - run: | - docker load < $SHA.tar.gz - docker tag $SHA $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG - docker tag $SHA $ECR_REGISTRY/$ECR_REPOSITORY:$SHA - docker push -a $ECR_REGISTRY/$ECR_REPOSITORY + - name: Load, tag and push image to ECR + id: push-image + env: + ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }} + ECR_REPOSITORY: superset-ci + SHA: ${{ steps.get-sha.outputs.sha }} + IMAGE_TAG: pr-${{ steps.get-pr.outputs.num }} + run: | + docker load < $SHA.tar.gz + docker tag $SHA $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG + docker tag $SHA $ECR_REGISTRY/$ECR_REPOSITORY:$SHA + docker push -a $ECR_REGISTRY/$ECR_REPOSITORY