name: Solidity on: # Triggers the workflow on push or pull request events but only for the main branch push: branches: [main] pull_request: branches: [main] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: jobs: optics-core: env: ETHERSCAN_API_KEY: "" runs-on: ubuntu-latest defaults: run: working-directory: ./solidity/optics-core steps: - uses: actions/checkout@v2 - name: Install run: | npm i cd ../../typescript/optics-tests npm i cd ../optics-deploy npm i cd ../typechain npm i - name: Lint run: npm run lint - name: Test run: npm test optics-xapps: env: ETHERSCAN_API_KEY: "" runs-on: ubuntu-latest defaults: run: working-directory: ./solidity/optics-xapps steps: - uses: actions/checkout@v2 - name: Install run: npm i - name: Lint run: npm run lint - name: Test run: npm test complete: runs-on: ubuntu-latest needs: [optics-core, optics-xapps] steps: - name: Solidity tests successful if: success() uses: peter-evans/repository-dispatch@v1 with: token: ${{ secrets.ACTIONS_PAT }} repository: ${{ github.repository }} event-type: solidity-tests-successful