Scheduled checks #640
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: | |
schedule: | |
- cron: '0 8 * * 1-5' | |
name: Scheduled checks | |
jobs: | |
tests: | |
name: Run tests | |
runs-on: github-hosted-heavy-runner | |
strategy: | |
fail-fast: false | |
matrix: | |
profile: [ mainnet, mainnet-silo, testnet, testnet-silo ] | |
steps: | |
- name: Potential broken submodules fix | |
run: | | |
git checkout -f $(git -c user.name=x -c user.email=x@x commit-tree $(git hash-object -t tree /dev/null) < /dev/null) || : | |
- name: Install dependencies | |
run: | | |
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - | |
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list | |
sudo apt update && sudo apt install -y yarn build-essential pkg-config libclang-dev libssl-dev | |
- name: Clone the repository | |
uses: actions/checkout@v4 | |
- name: Install Rust toolchain | |
uses: actions-rust-lang/setup-rust-toolchain@v1 | |
with: | |
cache: false | |
toolchain: stable | |
override: false | |
- name: Cargo Cache | |
uses: actions/cache@v4 | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
target/ | |
key: ${{ matrix.profile }}-cargo-test | |
- name: Setup Node and cache | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
cache: yarn | |
cache-dependency-path: | | |
etc/eth-contracts | |
etc/tests/uniswap | |
- name: Install cargo-make | |
run: cargo +stable make -V || cargo +stable install cargo-make | |
- name: Build actual neard-sandbox | |
run: scripts/build-neard-sandbox.sh ${{ matrix.profile }} | |
- name: Test ${{ matrix.profile }} | |
run: cargo make --profile ${{ matrix.profile }} test-flow | |
- uses: 8398a7/action-slack@v3 | |
if: failure() | |
with: | |
status: ${{ job.status }} | |
fields: repo,message,commit,author,action,eventName,job,took | |
env: | |
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} | |
checks: | |
name: Run checks | |
runs-on: [ self-hosted, heavy ] | |
steps: | |
- name: Potential broken submodules fix | |
run: | | |
git checkout -f $(git -c user.name=x -c user.email=x@x commit-tree $(git hash-object -t tree /dev/null) < /dev/null) || : | |
- name: Clone the repository | |
uses: actions/checkout@v4 | |
- name: Update Node and Yarn | |
run: | | |
export NVM_DIR="$HOME/.nvm" | |
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" | |
nvm install 18 && nvm alias default 18 | |
npm install -g yarn | |
echo "$(dirname $(nvm which node))" >> $GITHUB_PATH | |
- name: Run checks | |
run: cargo make check | |
- uses: 8398a7/action-slack@v3 | |
if: failure() | |
with: | |
status: ${{ job.status }} | |
fields: repo,message,commit,author,action,eventName,job,took | |
env: | |
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} |