Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Prod Release Deployment | |
on: | |
release: | |
types: created | |
env: | |
REACT_APP_INFURA_ID: ${{ secrets.REACT_APP_INFURA_ID }} | |
REACT_APP_MULTI_SEND_CONTRACT: "0xA238CBeb142c10Ef7Ad8442C6D1f9E89e07e7761" | |
REACT_APP_BACKEND_API_URL: "https://api.zodiac.gnosisguild.org/api" | |
REACT_APP_ETHERSCAN_KEY: ${{ secrets.REACT_APP_ETHERSCAN_KEY }} | |
REACT_APP_GNOSISSCAN_KEY: ${{ secrets.REACT_APP_GNOSISSCAN_KEY }} | |
REACT_APP_POLYGONSCAN_KEY: ${{ secrets.REACT_APP_POLYGONSCAN_KEY }} | |
REACT_APP_BSCSCAN_KEY: ${{ secrets.REACT_APP_BSCSCAN_KEY }} | |
REACT_APP_OPTIMISTIC_ETHERSCAN_KEY: ${{ secrets.REACT_APP_OPTIMISTIC_ETHERSCAN_KEY }} | |
REACT_APP_ARBISCAN_KEY: ${{ secrets.REACT_APP_ARBISCAN_KEY }} | |
REACT_APP_SNOWTRACE_KEY: ${{ secrets.REACT_APP_SNOWTRACE_KEY }} | |
jobs: | |
deploy: | |
runs-on: ubuntu-latest | |
name: Deploy to Prod | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions/setup-node@v1 | |
with: | |
node-version: 16 | |
- run: npm install -g yarn | |
- name: Install deps and build | |
working-directory: ./packages/app | |
run: | | |
yarn install --frozen-lockfile | |
yarn build | |
- name: Pin to IPFS | |
id: upload | |
uses: anantaramdas/ipfs-pinata-deploy-action@39bbda1ce1fe24c69c6f57861b8038278d53688d | |
with: | |
pin-name: Zodiac Safe App - Prod — ${ GITHUB_SHA } | |
path: "./packages/app/build" | |
pinata-api-key: ${{ secrets.PINATA_API_KEY }} | |
pinata-secret-api-key: ${{ secrets.PINATA_API_SECRET_KEY }} | |
- name: Pin to Crust | |
uses: crustio/[email protected] | |
continue-on-error: true | |
timeout-minutes: 2 | |
with: | |
cid: ${{ steps.upload.outputs.hash }} | |
seeds: ${{ secrets.CRUST_SEEDS }} | |
- name: Convert CIDv0 to CIDv1 | |
id: convert_cidv0 | |
uses: uniswap/[email protected] | |
with: | |
cidv0: ${{ steps.upload.outputs.hash }} | |
- name: Update DNS with new IPFS hash | |
env: | |
CLOUDFLARE_TOKEN: ${{ secrets.CLOUDFLARE_TOKEN }} | |
RECORD_DOMAIN: "gnosisguild.org" | |
RECORD_NAME: "_dnslink.zodiac" | |
CLOUDFLARE_ZONE_ID: ${{ secrets.CLOUDFLARE_ZONE_ID }} | |
uses: textileio/cloudflare-update-dnslink@0fe7b7a1ffc865db3a4da9773f0f987447ad5848 | |
with: | |
cid: ${{ steps.upload.outputs.hash }} | |
- name: update release | |
id: update_release | |
uses: tubone24/[email protected] | |
env: | |
GITHUB_TOKEN: ${{ github.token }} | |
TAG_NAME: ${{ github.ref }} | |
with: | |
is_append_body: true | |
body: | | |
<br /> | |
IPFS hash of the deployment: | |
- CIDv0: `${{ steps.upload.outputs.hash }}` | |
- CIDv1: `${{ steps.convert_cidv0.outputs.cidv1 }}` | |
IPFS gateways: | |
- https://${{ steps.convert_cidv0.outputs.cidv1 }}.ipfs.dweb.link/ | |
- https://${{ steps.convert_cidv0.outputs.cidv1 }}.ipfs.cf-ipfs.com/ | |
- name: Deploy to Github Pages | |
uses: JamesIves/[email protected] | |
with: | |
branch: gh-pages # The branch the action should deploy to. | |
folder: packages/app/build | |
# Deploys a production instance of the backend api to vercel | |
- name: Install Vercel CLI | |
run: npm install --global vercel@latest | |
- name: Pull Vercel Environment Information | |
run: vercel pull --yes --environment=production --scope gnosis-guild --token=${{ secrets.VERCEL_TOKEN }} | |
- name: Build Project Artifacts | |
run: vercel build --prod --token=${{ secrets.VERCEL_TOKEN }} | |
- name: Deploy Project Artifacts to Vercel | |
run: vercel deploy --prebuilt --prod --token=${{ secrets.VERCEL_TOKEN }} |