push-xc-admin-frontend-image.yml 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. name: xc_admin_frontend Docker Image
  2. on:
  3. push:
  4. branches: [main]
  5. paths: [governance/xc_admin/**]
  6. permissions:
  7. contents: read
  8. id-token: write
  9. packages: write
  10. env:
  11. REGISTRY: ghcr.io
  12. IMAGE_NAME: pyth-network/xc-admin-frontend
  13. jobs:
  14. xc-admin-frontend-image:
  15. runs-on: ubuntu-latest
  16. steps:
  17. - uses: actions/checkout@v2
  18. - name: Set image tag to timestamp and shortened commit hash
  19. run: |
  20. SHORT_HASH=$(echo ${{ github.sha }} | cut -c1-7)
  21. TIMESTAMP=$(date +%s)
  22. echo "IMAGE_TAG=${TIMESTAMP}-${SHORT_HASH}" >> "${GITHUB_ENV}"
  23. - name: Log in to the Container registry
  24. uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1
  25. with:
  26. registry: ${{ env.REGISTRY }}
  27. username: ${{ github.actor }}
  28. password: ${{ secrets.GITHUB_TOKEN }}
  29. - name: Build docker image
  30. run: |
  31. DOCKER_BUILDKIT=1 docker build -t builder-base --target builder-base -f Dockerfile.node .
  32. DOCKER_BUILDKIT=1 docker build -t runner-base --target runner-base -f Dockerfile.node .
  33. DOCKER_BUILDKIT=1 docker build -t ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ env.IMAGE_TAG }} \
  34. --build-arg NEXT_PUBLIC_RPC_POOL_TOKEN=${{ secrets.NEXT_PUBLIC_RPC_POOL_TOKEN }} \
  35. -f governance/xc_admin/packages/xc_admin_frontend/Dockerfile .
  36. - name: Push docker image
  37. if: github.ref == 'refs/heads/main'
  38. run: |
  39. docker push ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ env.IMAGE_TAG }}