Add Foundry deployment scripts #781
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: Overlay V1 Core Test Python | |
on: | |
push: | |
branches: | |
- main | |
- staging | |
pull_request: | |
branches: | |
- main | |
- staging | |
env: | |
# increasing available memory for node reduces issues with ganache crashing | |
# https://nodejs.org/api/cli.html#cli_max_old_space_size_size_in_megabytes | |
NODE_OPTIONS: --max_old_space_size=4096 | |
jobs: | |
core: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
python-version: [3.9] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Install Foundry | |
uses: foundry-rs/foundry-toolchain@v1 | |
with: | |
version: nightly | |
- name: Run Forge install | |
run: forge install | |
- name: Create .env | |
run: | | |
touch .env | |
echo WEB3_INFURA_PROJECT_ID=${{ secrets.WEB3_INFURA_PROJECT_ID }} >> .env | |
echo export ARBISCAN_TOKEN=${{ secrets.ARBISCAN_TOKEN }} >> .env | |
cat .env | |
- name: Cache Compiler Installations | |
uses: actions/cache@v2 | |
with: | |
path: | | |
~/.solcx | |
~/.vvm | |
key: compiler-cache | |
- name: Setup Node.js | |
uses: actions/setup-node@v4 | |
- name: Install Ganache | |
run: npm install -g ganache@7.9.2 | |
- name: Setup Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install Requirements | |
run: pip install -r requirements.txt | |
- name: Compile Code | |
run: brownie compile --size | |
- name: Configure Arbitrum | |
run: | | |
brownie networks add Development arbitrum-main-fork name="Ganache-CLI (Aribtrum-Mainnet Fork)" host=http://127.0.0.1 cmd=ganache-cli accounts=10 evm_version=istanbul fork=arbitrum-main mnemonic=brownie port=8545 | |
brownie networks modify arbitrum-main host="https://arbitrum-mainnet.infura.io/v3/\$WEB3_INFURA_PROJECT_ID" provider=infura | |
- name: Run Tests | |
run: brownie test -vv -s --gas |