docs: add comprehensive invoice storage and indexing documentation #275
Workflow file for this run
This file contains hidden or 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
| 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 |