Skip to content

Test CI job

Test CI job #16

Workflow file for this run

name: Verify
on:
pull_request:
branches: [main]
workflow_call:
secrets:
MALACHITE_PRIVATE_REPO_SSH_KEY:
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
env:
MALACHITE_GIT_REF: "8a9f3702eb41199bc8a7f45139adba233a04744a"
jobs:
build:
timeout-minutes: 20
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: webfactory/ssh-agent@v0.9.0
with:
ssh-private-key: ${{ secrets.MALACHITE_PRIVATE_REPO_SSH_KEY }}
- name: Build via Docker Compose, exposing SSH agent to build container
run: docker compose build --ssh default
test:
timeout-minutes: 20
runs-on: ubuntu-latest
steps:
- name: Install Protoc
uses: arduino/setup-protoc@v3
- uses: actions/cache/restore@v4
id: malachite-cache
with:
path: ./malachite
key: ${{ runner.os }}-${{ runner.arch }}-${{ env.MALACHITE_GIT_REF }}
- if: ${{ steps.malachite-cache.outputs.cache-hit != 'true' }}
uses: actions/checkout@v4
with:
repository: farcasterxyz/malachite
ref: ${{ env.MALACHITE_GIT_REF }}
path: ./malachite
ssh-key: ${{ secrets.MALACHITE_PRIVATE_REPO_SSH_KEY }}
- if: ${{ steps.malachite-cache.outputs.cache-hit != 'true' }}
working-directory: ./malachite/code
run: cargo build
- if: ${{ steps.malachite-cache.outputs.cache-hit != 'true' }}
uses: actions/cache/save@v4
with:
path: ./malachite
key: ${{ runner.os }}-${{ runner.arch }}-${{ env.MALACHITE_GIT_REF }}
- uses: actions/cache/restore@v4
with:
path: ~/.cargo
key: ${{ runner.os }}-${{ runner.arch }}-cargo
- uses: actions/cache/restore@v4
id: snapchain-cache
with:
path: ./snapchain
key: ${{ runner.os }}-${{ runner.arch }}-snapchain
- uses: actions/checkout@v4
with:
path: ./snapchain
- working-directory: ./snapchain
run: cargo build --locked
- uses: actions/cache/save@v4
with:
path: ./snapchain
key: ${{ runner.os }}-${{ runner.arch }}-snapchain
- working-directory: ./snapchain
run: cargo test
- uses: actions/cache/save@v4
with:
path: ~/.cargo
key: ${{ runner.os }}-${{ runner.arch }}-cargo
- working-directory: ./snapchain
run: cargo fmt --all --check