Merge branch 'main' into feat/xls-65-single-asset-vault #194
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
| on: | ||
| push: | ||
| branches: | ||
| - main | ||
| pull_request: | ||
| branches: | ||
| - main | ||
| - dev | ||
| name: Integration Test | ||
| env: | ||
| <<<<<<< feat/xls-65-single-asset-vault | ||
| # Pin to known-good digest; rippleci/rippled:develop broke after 2026-04-01 | ||
| RIPPLED_DOCKER_IMAGE: rippleci/rippled:develop@sha256:328175bf14b7b83db9e5e6b50c7458bf828b02b2855453efc038233094aa8d85 | ||
| ======= | ||
| # rippled binary was renamed to xrpld; use the new image name. | ||
| # Tracks xrpl.js PR #3270 (https://github.com/XRPLF/xrpl.js/pull/3270). | ||
| XRPLD_DOCKER_IMAGE: rippleci/xrpld:develop | ||
| >>>>>>> main | ||
| jobs: | ||
| integration_test: | ||
| name: Integration Test | ||
| runs-on: ubuntu-latest | ||
| timeout-minutes: 30 | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - name: Run xrpld in standalone mode | ||
| run: | | ||
| <<<<<<< feat/xls-65-single-asset-vault | ||
| for i in $(seq 1 30); do | ||
| if ! docker ps -q -f name=rippled-service | grep -q .; then | ||
| echo "Container exited unexpectedly" | ||
| docker logs rippled-service 2>&1 || true | ||
| exit 1 | ||
| fi | ||
| STATUS=$(docker inspect --format='{{.State.Health.Status}}' rippled-service 2>/dev/null || echo "unknown") | ||
| echo "Attempt $i/30: $STATUS" | ||
| if [ "$STATUS" = "healthy" ]; then | ||
| exit 0 | ||
| fi | ||
| sleep 2 | ||
| done | ||
| echo "Timed out waiting for rippled" | ||
| docker logs rippled-service 2>&1 || true | ||
| exit 1 | ||
| ======= | ||
| docker run \ | ||
| --detach \ | ||
| --rm \ | ||
| --publish 5005:5005 \ | ||
| --publish 6006:6006 \ | ||
| --volume "${{ github.workspace }}/.ci-config/":"/etc/xrpld/" \ | ||
| --name xrpld-service \ | ||
| ${{ env.XRPLD_DOCKER_IMAGE }} --standalone | ||
| >>>>>>> main | ||
| - uses: dtolnay/rust-toolchain@stable | ||
| - name: Cache cargo registry | ||
| uses: actions/cache@v4 | ||
| with: | ||
| path: | | ||
| ~/.cargo/registry | ||
| ~/.cargo/git | ||
| target | ||
| key: ${{ runner.os }}-cargo-integration-${{ hashFiles('**/Cargo.lock') }} | ||
| restore-keys: | | ||
| ${{ runner.os }}-cargo-integration- | ||
| - name: Run integration tests | ||
| run: cargo test --release --features std,json-rpc,helpers,integration --test integration_test -- --test-threads=1 | ||
| env: | ||
| RUST_BACKTRACE: 1 | ||
| - name: Dump xrpld logs and stop container | ||
| if: always() | ||
| run: | | ||
| docker logs xrpld-service 2>&1 || echo "::warning::xrpld-service container not present for logs" | ||
| docker stop xrpld-service 2>/dev/null || true | ||