General repo improvements #341
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
on: ["push", "pull_request"] | |
name: main workflow | |
env: | |
# ETHERSCAN_TOKEN: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# WEB3_INFURA_PROJECT_ID: | |
# 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: | |
tests: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Cache Compiler Installations | |
uses: actions/cache@v2 | |
with: | |
path: | | |
~/.solcx | |
~/.vvm | |
key: compiler-cache | |
- name: Setup Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 16.x | |
cache: 'npm' | |
- run: npm install -g ganache | |
- name: Setup Python 3.8 | |
uses: actions/setup-python@v3 | |
with: | |
cache: 'pip' | |
python-version: '3.8' | |
- run: pip install -r requirements.txt | |
- name: Run Tests | |
run: ape test | |
- name: Deploy NuCypher Token | |
run: ape run scripts/deploy_nucypher_token.py --network ethereum:local | |
- name: Deploy TACo Application | |
run: ape run scripts/deploy_taco_application.py --network ethereum:local | |
- name: Deploy Staking Escrow | |
run: ape run scripts/deploy_staking_escrow.py --network ethereum:local | |
- name: Deploy Subscription Manager | |
run: ape run scripts/deploy_subscription_manager.py --network ethereum:local | |
linting: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install Solhint | |
run: npm install -g solhint | |
- name: Solidty Lint | |
run: solhint 'contracts/**/*.sol' | |
- name: Prettify code | |
uses: creyD/[email protected] | |
with: | |
prettier_plugins: prettier-plugin-solidity | |
prettier_options: --check contracts/**/*.sol | |
- name: Python lint | |
uses: cclauss/[email protected] | |
continue-on-error: true | |
with: | |
args: "pylint **/*.py" |