Skip to content

feat: add REST API relay server #23

feat: add REST API relay server

feat: add REST API relay server #23

Workflow file for this run

name: CI
permissions: {}
on:
push:
pull_request:
workflow_dispatch:
env:
FOUNDRY_PROFILE: ci
jobs:
check:
name: Foundry project
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v5
with:
persist-credentials: false
submodules: recursive
- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1
- name: Show Forge version
run: forge --version
- name: Run Forge fmt
run: forge fmt --check
- name: Run Forge build
run: forge build --sizes
- name: Run Forge tests
run: forge test -vvv
subgraph:
name: Subgraph
runs-on: ubuntu-22.04
permissions:
contents: read
defaults:
run:
working-directory: subgraph
steps:
- uses: actions/checkout@v5
with:
persist-credentials: false
submodules: recursive
- uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install dependencies
run: npm ci
- name: Prepare manifest
run: npm run prepare:base-sepolia
- name: Generate types
run: npm run codegen
- name: Build subgraph
run: npm run build
- name: Run tests
run: npm run test
api:
name: API (lint + test)
runs-on: ubuntu-latest
permissions:
contents: read
defaults:
run:
working-directory: api
steps:
- uses: actions/checkout@v5
with:
persist-credentials: false
submodules: recursive
- uses: pnpm/action-setup@v4
with:
version: 9
- uses: actions/setup-node@v4
with:
node-version: "20"
cache: pnpm
cache-dependency-path: "**/pnpm-lock.yaml"
- name: Install dependencies
run: pnpm install --frozen-lockfile
working-directory: .
- name: Build SDK
run: cd ../sdk && pnpm build
- name: Typecheck
run: pnpm typecheck
- name: Run tests
run: pnpm test
env:
RPC_URL: https://sepolia.base.org
SUBGRAPH_URL: https://api.studio.thegraph.com/query/1742229/aegis-protocol/v0.1.0
CHAIN: base-sepolia