Skip to content

Commit

Permalink
chore: implement GH CI workflows
Browse files Browse the repository at this point in the history
  • Loading branch information
facuspagnuolo committed Jun 19, 2023
1 parent ea43b95 commit f17ed36
Show file tree
Hide file tree
Showing 11 changed files with 587 additions and 0 deletions.
20 changes: 20 additions & 0 deletions .github/actions/setup/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Setup

runs:
using: composite
steps:
- name: Install node
uses: actions/setup-node@v3
with:
node-version: 16
cache: yarn
- name: Cache
uses: actions/cache@v2
id: cache
with:
path: '**/node_modules'
key: yarn-v1-${{ hashFiles('**/yarn.lock') }}
- name: Install
if: steps.cache.outputs.cache-hit != 'true'
shell: bash
run: yarn --prefer-offline
28 changes: 28 additions & 0 deletions .github/scripts/setup-hardhat-config.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
#!/bin/sh
MAINNET_URL="$1"
POLYGON_URL="$2"
OPTIMISM_URL="$3"
ARBITRUM_URL="$4"
GNOSIS_URL="$5"
BSC_URL="$6"
FANTOM_URL="$7"
AVALANCHE_URL="$8"

set -o errexit

mkdir -p $HOME/.hardhat

echo "
{
\"networks\": {
\"mainnet\": { \"url\": \"${MAINNET_URL}\" },
\"polygon\": { \"url\": \"${POLYGON_URL}\" },
\"optimism\": { \"url\": \"${OPTIMISM_URL}\" },
\"arbitrum\": { \"url\": \"${ARBITRUM_URL}\" },
\"gnosis\": { \"url\": \"${GNOSIS_URL}\" },
\"bsc\": { \"url\": \"${BSC_URL}\" },
\"fantom\": { \"url\": \"${FANTOM_URL}\" },
\"avalanche\": { \"url\": \"${AVALANCHE_URL}\" }
}
}
" > $HOME/.hardhat/networks.mimic.json
35 changes: 35 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Build

env:
CI: true

on:
push:
branches: "*"
pull_request:
branches: "*"

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/setup
- name: Build
run: yarn build
- name: Job failed
uses: rjstone/discord-webhook-notify@v1
if: failure()
with:
severity: error
details: Job failed!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
- name: Job cancelled
uses: rjstone/discord-webhook-notify@v1
if: cancelled()
with:
severity: warn
details: Job cancelled!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
63 changes: 63 additions & 0 deletions .github/workflows/ci-authorizer.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Authorizer CI

env:
CI: true

on:
push:
branches: "*"
paths:
- packages/authorizer/**
pull_request:
branches: "*"
paths:
- packages/authorizer/**

jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/setup
- name: Lint
run: yarn workspace @mimic-fi/v3-authorizer lint
- name: Job failed
uses: rjstone/discord-webhook-notify@v1
if: failure()
with:
severity: error
details: Job failed!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
- name: Job cancelled
uses: rjstone/discord-webhook-notify@v1
if: cancelled()
with:
severity: warn
details: Job cancelled!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}

test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/setup
- name: Test
run: yarn workspace @mimic-fi/v3-authorizer test
- name: Job failed
uses: rjstone/discord-webhook-notify@v1
if: failure()
with:
severity: error
details: Job failed!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
- name: Job cancelled
uses: rjstone/discord-webhook-notify@v1
if: cancelled()
with:
severity: warn
details: Job cancelled!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
63 changes: 63 additions & 0 deletions .github/workflows/ci-deployer.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Deployer CI

env:
CI: true

on:
push:
branches: "*"
paths:
- packages/deployer/**
pull_request:
branches: "*"
paths:
- packages/deployer/**

jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/setup
- name: Lint
run: yarn workspace @mimic-fi/v3-deployer lint
- name: Job failed
uses: rjstone/discord-webhook-notify@v1
if: failure()
with:
severity: error
details: Job failed!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
- name: Job cancelled
uses: rjstone/discord-webhook-notify@v1
if: cancelled()
with:
severity: warn
details: Job cancelled!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}

test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/setup
- name: Test
run: yarn workspace @mimic-fi/v3-deployer test
- name: Job failed
uses: rjstone/discord-webhook-notify@v1
if: failure()
with:
severity: error
details: Job failed!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
- name: Job cancelled
uses: rjstone/discord-webhook-notify@v1
if: cancelled()
with:
severity: warn
details: Job cancelled!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
63 changes: 63 additions & 0 deletions .github/workflows/ci-fee-controller.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Fee Controller CI

env:
CI: true

on:
push:
branches: "*"
paths:
- packages/fee-controller/**
pull_request:
branches: "*"
paths:
- packages/fee-controller/**

jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/setup
- name: Lint
run: yarn workspace @mimic-fi/v3-fee-controller lint
- name: Job failed
uses: rjstone/discord-webhook-notify@v1
if: failure()
with:
severity: error
details: Job failed!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
- name: Job cancelled
uses: rjstone/discord-webhook-notify@v1
if: cancelled()
with:
severity: warn
details: Job cancelled!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}

test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/setup
- name: Test
run: yarn workspace @mimic-fi/v3-fee-controller test
- name: Job failed
uses: rjstone/discord-webhook-notify@v1
if: failure()
with:
severity: error
details: Job failed!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
- name: Job cancelled
uses: rjstone/discord-webhook-notify@v1
if: cancelled()
with:
severity: warn
details: Job cancelled!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
63 changes: 63 additions & 0 deletions .github/workflows/ci-helpers.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Helpers CI

env:
CI: true

on:
push:
branches: "*"
paths:
- packages/helpers/**
pull_request:
branches: "*"
paths:
- packages/helpers/**

jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/setup
- name: Lint
run: yarn workspace @mimic-fi/v3-helpers lint
- name: Job failed
uses: rjstone/discord-webhook-notify@v1
if: failure()
with:
severity: error
details: Job failed!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
- name: Job cancelled
uses: rjstone/discord-webhook-notify@v1
if: cancelled()
with:
severity: warn
details: Job cancelled!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}

test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up environment
uses: ./.github/actions/setup
- name: Test
run: yarn workspace @mimic-fi/v3-helpers test
- name: Job failed
uses: rjstone/discord-webhook-notify@v1
if: failure()
with:
severity: error
details: Job failed!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
- name: Job cancelled
uses: rjstone/discord-webhook-notify@v1
if: cancelled()
with:
severity: warn
details: Job cancelled!
webhookUrl: ${{ secrets.DISCORD_WEBHOOK }}
Loading

0 comments on commit f17ed36

Please sign in to comment.