Skip to content

Update Groups Daily (prod) #765

Update Groups Daily (prod)

Update Groups Daily (prod) #765

name: Update Groups Daily (prod)
on:
workflow_dispatch:
schedule:
- cron: "0 13 * * *"
jobs:
generate-groups:
name: Update Groups Daily Prod
runs-on: ubuntu-latest
environment:
name: prod
url: https://hub.sismo.io/doc
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Workflow wait for previous run
uses: ahmadnassri/action-workflow-queue@v1
with:
timeout: 7200000
delay: 60000
- name: Generate groups
uses: ./.github/actions/generate-groups
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
role-to-assume: ${{ secrets.AWS_EXECUTION_ROLE }}
sh-s3-data-bucket-name: "sismo-prod-hub-data"
sh-s3-data-endpoint: "https://sismo-prod-hub-data.s3.eu-west-1.amazonaws.com"
sh-dynamodb-global-table-name: sismo-prod-hub-global-table
sh-default-configuration-env: prod
sh-generate-groups-frequency: daily
sh-last-generation-time-interval: "43200"
decentralized-subgraph-api-key: ${{ secrets.DECENTRALIZED_SUBGRAPH_API_KEY }}
google-application-credentials: ${{ secrets.GOOGLE_APPLICATION_CREDENTIALS }}
sh-ignore-resolving-errors: "true"
hive-api-key: ${{ secrets.HIVE_API_KEY }}
json-rpc-url: ${{ secrets.JSON_RPC_URL }}
discord-webhook: ${{ secrets.DISCORD_WEBHOOK }}
transpose-api-key: ${{ secrets.TRANSPOSE_API_KEY }}
alchemy-api-key: ${{ secrets.ALCHEMY_API_KEY }}
dune-api-key: ${{secrets.DUNE_API_KEY}}
gitcoin-api-key: ${{ secrets.GITCOIN_API_KEY }}
ankr-api-key: ${{ secrets.ANKR_API_KEY }}
github-token: ${{ secrets.SH_GITHUB_TOKEN }}
tally-api-key: ${{ secrets.TALLY_API_KEY }}
twitter-api-key: ${{ secrets.TWITTER_API_KEY }}
telegram-api-hash: ${{ secrets.TELEGRAM_API_HASH }}
telegram-api-id: ${{ secrets.TELEGRAM_API_ID }}
telegram-bot-token: ${{ secrets.TELEGRAM_BOT_TOKEN }}
telegram-bot-session: ${{ secrets.TELEGRAM_BOT_SESSION }}
roci-api-key: ${{ secrets.ROCI_API_KEY }}
compute-registry-tree:
needs: generate-groups
name: Compute Registry Tree
runs-on: ubuntu-latest
environment:
name: prod
url: https://hub.sismo.io/doc
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Workflow wait for previous run
uses: ahmadnassri/action-workflow-queue@v1
with:
timeout: 7200000
delay: 60000
- name: Compute registry tree
uses: ./.github/actions/send-on-chain
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
role-to-assume: ${{ secrets.AWS_EXECUTION_ROLE }}
sh-s3-data-bucket-name: "sismo-prod-hub-data"
sh-s3-data-endpoint: "https://sismo-prod-hub-data.s3.eu-west-1.amazonaws.com"
sh-dynamodb-global-table-name: sismo-prod-hub-global-table
sh-default-configuration-env: prod
sh-relay-defender-api-keys: ${{ secrets.SH_RELAY_DEFENDER_API_KEYS }}
roots-registry-owner-mnemonic: ${{ secrets.ROOTS_REGISTRY_OWNER_MNEMONIC }}
sh-registry-tree-networks: gnosis
# Run it in dry run mode to compute all cache
sh-additional-params: "--dry-run"
# Send on chain in parallel, all except gnosis (which need to arrive in last position)
send-on-chain:
needs: compute-registry-tree
name: Send on-chain
runs-on: ubuntu-latest
environment:
name: prod
url: https://hub.sismo.io/doc
strategy:
matrix:
network:
[
polygon,
mumbai,
mainnet,
goerli,
sepolia,
optimism,
optimism-goerli,
arbitrum-one,
arbitrum-goerli,
base,
base-goerli,
]
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Send on chain
uses: ./.github/actions/send-on-chain
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
role-to-assume: ${{ secrets.AWS_EXECUTION_ROLE }}
sh-s3-data-bucket-name: "sismo-prod-hub-data"
sh-s3-data-endpoint: "https://sismo-prod-hub-data.s3.eu-west-1.amazonaws.com"
sh-dynamodb-global-table-name: sismo-prod-hub-global-table
sh-default-configuration-env: prod
sh-relay-defender-api-keys: ${{ secrets.SH_RELAY_DEFENDER_API_KEYS }}
roots-registry-owner-mnemonic: ${{ secrets.ROOTS_REGISTRY_OWNER_MNEMONIC }}
sh-last-generation-time-interval: "43200"
sh-registry-tree-networks: ${{ matrix.network }}
send-on-chain-gnosis:
name: Send on-chain (gnosis)
needs: send-on-chain
runs-on: ubuntu-latest
environment:
name: prod
url: https://hub.sismo.io/doc
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Workflow wait for previous run
uses: ahmadnassri/action-workflow-queue@v1
with:
timeout: 7200000
delay: 60000
- name: Send on chain (Gnosis)
uses: ./.github/actions/send-on-chain
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
role-to-assume: ${{ secrets.AWS_EXECUTION_ROLE }}
sh-s3-data-bucket-name: "sismo-prod-hub-data"
sh-s3-data-endpoint: "https://sismo-prod-hub-data.s3.eu-west-1.amazonaws.com"
sh-dynamodb-global-table-name: sismo-prod-hub-global-table
sh-default-configuration-env: prod
sh-relay-defender-api-keys: ${{ secrets.SH_RELAY_DEFENDER_API_KEYS }}
roots-registry-owner-mnemonic: ${{ secrets.ROOTS_REGISTRY_OWNER_MNEMONIC }}
sh-last-generation-time-interval: "43200"
sh-registry-tree-networks: gnosis