Skip to content

docs: consolidate backlog to 12 high-quality issues #28

docs: consolidate backlog to 12 high-quality issues

docs: consolidate backlog to 12 high-quality issues #28

Workflow file for this run

name: CI
on:
push:
branches: [main, develop]
pull_request:
branches: [main]
jobs:
server-build:
name: Server Build & Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: "20"
cache: "npm"
cache-dependency-path: Server/package-lock.json
- name: Install dependencies
working-directory: Server
run: npm ci
- name: Generate Prisma client
working-directory: Server
run: npx prisma generate
- name: Build TypeScript
working-directory: Server
run: npm run build
- name: Run unit tests
working-directory: Server
run: npm test
server-integration:
name: Server Integration Tests
runs-on: ubuntu-latest
services:
mysql:
image: mysql:8.0
env:
MYSQL_ROOT_PASSWORD: test
MYSQL_DATABASE: zcore_test
ports:
- 3306:3306
options: >-
--health-cmd="mysqladmin ping -h 127.0.0.1 -uroot -ptest"
--health-interval=10s
--health-timeout=5s
--health-retries=10
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: "20"
cache: "npm"
cache-dependency-path: Server/package-lock.json
- name: Install dependencies
working-directory: Server
run: npm ci
- name: Generate Prisma client
working-directory: Server
run: npx prisma generate
- name: Apply migrations
working-directory: Server
run: npx prisma migrate deploy
env:
DATABASE_URL: mysql://root:test@127.0.0.1:3306/zcore_test
- name: Run integration tests
working-directory: Server
run: npm run test:integration
env:
DATABASE_URL: mysql://root:test@127.0.0.1:3306/zcore_test
JWT_SECRET: test_jwt_secret_ci
ADMIN_SECRET: test_admin_ci
mock-contract-test:
name: Mock Soroban Contract Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
- name: Run mock contract tests
working-directory: Contracts/mock-score-registry
run: cargo test
lender-sdk-build:
name: Lender SDK Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: "20"
- name: Install and build
working-directory: packages/lender-sdk
run: npm install && npm run build
front-build:
name: Frontend Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: "20"
cache: "npm"
cache-dependency-path: Front/package-lock.json
- name: Install dependencies
working-directory: Front
run: npm ci --legacy-peer-deps
- name: Type check
working-directory: Front
run: npx tsc --noEmit
- name: Build Next.js
working-directory: Front
run: npm run build
env:
NEXT_PUBLIC_API_BASE_URL: https://zcore-api.vercel.app
NEXT_PUBLIC_STELLAR_NETWORK: testnet