Skip to content

ci: add voting to regression testing #116

ci: add voting to regression testing

ci: add voting to regression testing #116

Workflow file for this run

name: Regression Tests
on: [workflow_dispatch, push]
# .github/workflows/ci.yaml
permissions: # least-privilege principle
contents: read # widen only if you need more
pull-requests: write
jobs:
regression:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- config: config_samples/ethereum/mainnet/vaults/vaults_config.json
hardhat: hardhat_configs/mainnet_hardhat_config.ts
network: mainnet
flags: ""
- config: config_samples/ethereum/mainnet/vaults/vaults_voting_config.json
hardhat: hardhat_configs/mainnet_hardhat_config.ts
network: mainnet
flags: ""
- config: config_samples/ethereum/mainnet/vaults/vaults_easy_track_config.json
hardhat: hardhat_configs/mainnet_hardhat_config.ts
network: mainnet
flags: >
--allow-source-diff 0x194A46DA1947E98c9D79af13E06Cfbee0D8610cC
--allow-source-diff 0xE73842AEbEC99Dacf2aAEec61409fD01A033f478
--allow-source-diff 0x8Bdc726a3147D8187820391D7c6F9F942606aEe6
--allow-source-diff 0xf23559De8ab37fF7a154384B0822dA867Cfa7Eac
--allow-source-diff 0xa29173C7BCf39dA48D5E404146A652d7464aee14
--allow-source-diff 0x73f80240ad9363d5d3C5C3626953C351cA36Bfe9
--allow-source-diff 0x5292A1284e4695B95C0840CF8ea25A818751C17F
--allow-source-diff 0xe2DE6d2DefF15588a71849c0429101F8ca9FB14D
--allow-source-diff 0x93F1DEE4473Ee9F42c8257C201e33a6Da30E5d67
--allow-source-diff 0x5C3bDFa3E7f312d8cf72F56F2b797b026f6B471c
--allow-source-diff 0x6C968cD89CA358fbAf57B18e77a8973Fa869a6aA
--allow-source-diff 0x1dF50522A1D868C12bF71747Bb6F24A18Fe6d32C
--allow-source-diff 0x4E5Cc771c7b77f1417fa6BA9262d83C6CCc1e969
- config: config_samples/ethereum/mainnet/tw/tw_config.json
hardhat: hardhat_configs/mainnet_hardhat_config.ts
network: mainnet
flags: ""
- config: config_samples/ethereum/mainnet/tw/tw_easy_track_config.json
hardhat: hardhat_configs/mainnet_hardhat_config.ts
network: mainnet
flags: >
--allow-source-diff 0x8aa34dAaF0fC263203A15Bcfa0Ed926D466e59F3
--allow-source-diff 0xB7668B5485d0f826B86a75b0115e088bB9ee03eE
- config: config_samples/ethereum/hoodi/vaults/hoodi_vaults_testnet_config.json
hardhat: hardhat_configs/hoodi_hardhat_config.ts
network: hoodi
flags: >
--allow-source-diff 0x1d10DB6a66EF8D2A6f6D36Ad4dc7092Ef7C12569
--allow-source-diff 0x7D25D43D5a69ae0521440211C655C11840aF0FD6
--allow-source-diff 0xbf95Cd394cC03cD03fEA62A435ac347314877f1d
--allow-source-diff 0x95F00b016bB31b7182D96D25074684518246E42a
--allow-source-diff 0x933b84D2C01B04C2f53cD2FB1b7055241E122C83
--allow-source-diff 0xE22486EA7cE77daE718fFa7B7114fD50CF73Cbac
--allow-source-diff 0xd253b0ca059343e70474e685Beb2974F10CCFa67
--allow-bytecode-diff 0x7E99eE3C66636DE415D2d7C880938F2f40f94De4
--allow-bytecode-diff 0x2F0303F20E0795E6CCd17BD5efE791A586f28E03
--allow-bytecode-diff 0x6d1a9bBFF97f7565e9532FEB7b499982848E5e07
- config: config_samples/ethereum/hoodi/vaults/hoodi_vaults_easy_track_config.json
hardhat: hardhat_configs/hoodi_hardhat_config.ts
network: hoodi
flags: >
--allow-source-diff 0xfEF8B796Fea42b3C68E342364Adcf88F1d6145a6
--allow-source-diff 0x56Ff87F41a8CF795764E15E496124240Ac17695b
--allow-source-diff 0x4DF806111AC58e93d90E6D2fBE8522a76be6F499
--allow-source-diff 0xF21f98cac0Ba38f02b4d5be1667cc345929E8877
--allow-source-diff 0xBC2bb8310730F3D2b514Cb26f7e0A8776De879Ac
--allow-source-diff 0xc3FA83D65a900303e1d99cDBBF762c6630562c04
--allow-source-diff 0x351426775c75aB5127de860Cdcaf1953F1D622a2
--allow-source-diff 0x83DfE5Fe8ac8b7DB38c020F4F54BF09b65D92c63
--allow-source-diff 0xa11906bBBBaC5207b8FDA4F7F294d7EcB8dcc758
--allow-source-diff 0xc5dCd2A9642ceA9B71A632BF5b8ff52424Ea1B40
env:
ETHERSCAN_EXPLORER_TOKEN: ${{ secrets.ETHERSCAN_EXPLORER_TOKEN }}
GITHUB_API_TOKEN: ${{ github.token }}
LOCAL_RPC_URL: "http://127.0.0.1:7545"
REMOTE_RPC_URL: ${{ matrix.network == 'mainnet' && secrets['REMOTE_RPC_URL_MAINNET'] || secrets['REMOTE_RPC_URL_HOODI'] }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- uses: actions/setup-node@v4
with:
node-version: "22"
- name: Install Poetry
run: |
pip install poetry~=2.2
- name: Install dependencies
run: |
poetry install --no-interaction
npm ci
- name: Restore diffyscan caches
uses: actions/cache@v4
with:
path: .diffyscan_cache
key: diffyscan-cache-${{ matrix.config }}-${{ github.run_id }}
restore-keys: |
diffyscan-cache-${{ matrix.config }}-
diffyscan-cache-
- name: Run unit tests
run: |
poetry run pytest -q
- name: Run diffyscan
run: |
FLAGS="${{ matrix.flags }}"
poetry run diffyscan --hardhat-path ${{ matrix.hardhat }} -Y -E -G ${{ matrix.config }} ${FLAGS}