Skip to content

docs: add comprehensive invoice storage and indexing documentation #275

docs: add comprehensive invoice storage and indexing documentation

docs: add comprehensive invoice storage and indexing documentation #275

Workflow file for this run

name: Soroban Smart Contracts CI
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
env:
CARGO_TERM_COLOR: always
jobs:
build:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust
run: |
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
source $HOME/.cargo/env
- name: Install Rust target for Soroban
run: |
source $HOME/.cargo/env
rustup target add wasm32v1-none
- name: Install Stellar CLI with Homebrew
run: |
brew update
brew install stellar-cli
stellar --version
- name: Build Cargo project
run: |
cd quicklendx-contracts
cargo build --verbose
- name: Check code quality
run: |
source $HOME/.cargo/env
cd quicklendx-contracts
cargo check --lib --verbose
- name: Build Soroban contract
run: |
source $HOME/.cargo/env
cd quicklendx-contracts
stellar contract build --verbose
- name: Check WASM size budget
run: |
cd quicklendx-contracts
WASM_PATH="target/wasm32v1-none/release/quicklendx_contracts.wasm"
MAX_BYTES=262144
SIZE=$(wc -c < "$WASM_PATH" | tr -d ' ')
echo "WASM size: $SIZE bytes (max $MAX_BYTES)"
if [ "$SIZE" -gt "$MAX_BYTES" ]; then
echo "::error::WASM size $SIZE exceeds budget $MAX_BYTES bytes"
exit 1
fi
# Note: Tests temporarily disabled due to known soroban-sdk 22.0.x compilation issue
# The contract builds successfully and is functional
# Uncomment when soroban-sdk test issue is resolved
# - name: Run Cargo tests
# run: |
# source $HOME/.cargo/env
# cd quicklendx-contracts
# cargo test --verbose