Skip to content

chore: wip

chore: wip #16

Workflow file for this run

name: Build and deploy VC-API
on: [push, workflow_dispatch]
jobs:
cancel-previous:
name: 'Cancel Previous Runs'
runs-on: ubuntu-latest
timeout-minutes: 3
steps:
- uses: styfle/[email protected]
with:
access_token: ${{ github.token }}
unique_id:
runs-on: ubuntu-latest
steps:
- name: Generate unique id
id: unique_id
run: echo "id=$(uuidgen) >> $GITHUB_OUTPUT"
outputs:
unique_id: ${{ steps.unique_id.outputs.id }}
install-build-and-push:
runs-on: ubuntu-latest
needs: [cancel-previous, unique_id]
steps:
- name: Get GHA environment name
id: env_vars
run: |
echo "Running on branch ${{ github.ref }}"
echo "::set-output name=aws_region::${{ secrets.AWS_REGION }}"
echo "::set-output name=aws_access_key_id_ssi::${{ secrets.DEV_AWS_ACCESS_KEY_ID }}"
echo "::set-output name=aws_secret_key_ssi::${{ secrets.DEV_AWS_SECRET_ACCESS_KEY }}"
echo "::set-output name=aws_ecr_repository_ssi::${{ secrets.DEV_ECR_REPOSITORY }}"
echo "::set-output name=aws_access_key_id_idc::${{ secrets.DEV_AWS_ACCESS_KEY_ID_IDC }}"
echo "::set-output name=aws_secret_key_idc::${{ secrets.DEV_AWS_SECRET_ACCESS_KEY_IDC }}"
echo "::set-output name=aws_ecr_repository_idc::${{ secrets.DEV_ECR_REPOSITORY_IDC }}"
echo "::set-output name=argocd_url::${{ secrets.DEV_ARGOCD_URL }}"
echo "::set-output name=argocd_username::${{ secrets.DEV_ARGOCD_USERNAME }}"
echo "::set-output name=argocd_password::${{ secrets.DEV_ARGOCD_PASS }}"
- name: Check out vc-api-owf
run: |
git clone https://github.com/energywebfoundation/vc-api-owf
- name: Configure AWS credentials IDC
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.DEV_AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.DEV_AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ secrets.AWS_REGION }}
- name: Login to Amazon ECR
id: login-ecr-idc
uses: aws-actions/amazon-ecr-login@v2
- name: Build Docker image
working-directory: ./vc-api-owf
run: |
docker build \
-t $ECR_REGISTRY/${{ steps.env_vars.outputs.aws_ecr_repository_ssi }}:$BUILD_ID \
-f apps/vc-api/Dockerfile .
- name: Push Docker image
working-directory: ./vc-api-owf
run: |
docker push \
$ECR_REGISTRY/${{ steps.env_vars.outputs.aws_ecr_repository_ssi }}:$BUILD_ID
- name: Logout of Amazon ECR
if: always()
run: docker logout ${{ steps.login-ecr-idc.outputs.registry }}