Merge pull request #346 from iheomadev/feature/299-300-301-302-docs-e… #29
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: Scripts Check | |
| # Wires scripts/deploy-testnet.sh and scripts/integration_test.sh into CI | |
| # (issue #269): both are syntax/lint-checked on every push and PR, and | |
| # integration_test.sh is additionally run end-to-end against a local Soroban | |
| # network. | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Syntax-check shell scripts | |
| run: | | |
| bash -n scripts/deploy-testnet.sh | |
| bash -n scripts/integration_test.sh | |
| bash -n scripts/export-spec.sh | |
| bash -n scripts/check_resource_costs.sh | |
| - name: Install shellcheck | |
| run: sudo apt-get update && sudo apt-get install -y shellcheck | |
| - name: Run shellcheck | |
| run: shellcheck scripts/*.sh | |
| integration-test: | |
| runs-on: ubuntu-latest | |
| # Exercises the compiled wasm artifact against a real local Soroban | |
| # network (stellar-cli + Docker). Advisory for now (continue-on-error): | |
| # local-network startup depends on Docker image availability and timing | |
| # we don't yet have enough CI runs to trust as a hard gate -- same | |
| # "signal, not blocker" precedent as mutants.yml. Promote to blocking | |
| # once it's proven stable. | |
| continue-on-error: true | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install Rust | |
| uses: dtolnay/rust-toolchain@stable | |
| with: | |
| targets: wasm32v1-none | |
| - name: Cache cargo registry and build artifacts | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cargo/registry | |
| ~/.cargo/git | |
| target | |
| key: ${{ runner.os }}-cargo-integration-${{ hashFiles('**/Cargo.lock') }} | |
| - name: Install stellar-cli | |
| run: cargo install --locked stellar-cli --features opt | |
| - name: Run integration test against a local Soroban network | |
| run: ./scripts/integration_test.sh |