chore: drive release-please version bumps from inline markers (#159) #596
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: CI | |
| on: | |
| push: | |
| jobs: | |
| fmt: | |
| name: Format | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 | |
| - uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9 # v1 | |
| with: | |
| toolchain: stable | |
| components: rustfmt | |
| - run: cargo fmt --check | |
| clippy: | |
| name: Clippy | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 | |
| - uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9 # v1 | |
| with: | |
| toolchain: stable | |
| components: clippy | |
| - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2 | |
| - run: cargo clippy -- -D warnings | |
| test: | |
| name: Unit Tests | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 | |
| - uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9 # v1 | |
| with: | |
| toolchain: stable | |
| - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2 | |
| - run: cargo test | |
| check: | |
| name: Cargo Check | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 | |
| - uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9 # v1 | |
| with: | |
| toolchain: stable | |
| - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2 | |
| - run: cargo check --locked | |
| check-wasm: | |
| name: Cargo Check (WASM) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 | |
| - uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9 # v1 | |
| with: | |
| toolchain: stable | |
| targets: wasm32-unknown-unknown | |
| - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2 | |
| - run: cargo check -p multistore-cf-workers --target wasm32-unknown-unknown | |
| audit: | |
| name: Audit | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 | |
| - uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9 # v1 | |
| with: | |
| toolchain: stable | |
| - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2 | |
| - run: cargo install cargo-audit | |
| - run: cargo audit | |
| integration: | |
| name: Integration Tests | |
| runs-on: ubuntu-latest | |
| permissions: | |
| id-token: write | |
| steps: | |
| - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 | |
| - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0 | |
| with: | |
| node-version: "lts/*" | |
| - uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9 # v1 | |
| with: | |
| toolchain: stable | |
| targets: wasm32-unknown-unknown | |
| - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2 | |
| - name: Start RustFS | |
| run: | | |
| docker run -d --name rustfs \ | |
| -p 9000:9000 \ | |
| -e RUSTFS_ACCESS_KEY=minioadmin \ | |
| -e RUSTFS_SECRET_KEY=minioadmin \ | |
| rustfs/rustfs:1.0.0 | |
| # Wait for RustFS to be ready | |
| for i in $(seq 1 30); do | |
| if curl -sf http://localhost:9000/health > /dev/null 2>&1; then | |
| echo "RustFS is ready" | |
| break | |
| fi | |
| sleep 1 | |
| done | |
| - name: Seed buckets | |
| env: | |
| AWS_ACCESS_KEY_ID: minioadmin | |
| AWS_SECRET_ACCESS_KEY: minioadmin | |
| AWS_DEFAULT_REGION: us-east-1 | |
| run: | | |
| s3() { aws --endpoint-url http://localhost:9000 s3 "$@"; } | |
| s3 mb s3://public-data | |
| s3 mb s3://private-uploads | |
| echo "Hello from s3-proxy!" | s3 cp - s3://public-data/hello.txt | |
| echo '{"status":"ok"}' | s3 cp - s3://public-data/health.json | |
| echo "Secret payload" | s3 cp - s3://private-uploads/docs/secret.txt | |
| - name: Build worker | |
| working-directory: examples/cf-workers | |
| run: | | |
| # worker-build ^0.7 to match worker 0.7.x in Cargo.toml. | |
| # worker-build 0.8+ requires worker 0.8+ (a separate upgrade). | |
| cargo install worker-build --version "^0.7" | |
| worker-build --release | |
| - name: Write .dev.vars | |
| run: | | |
| echo "SESSION_TOKEN_KEY=$(openssl rand -base64 32)" > examples/cf-workers/.dev.vars | |
| - name: Start wrangler dev | |
| working-directory: examples/cf-workers | |
| run: | | |
| npx wrangler dev --config wrangler.integration.toml --port 8787 & | |
| # Wait for wrangler to be ready | |
| for i in $(seq 1 30); do | |
| if curl -so /dev/null http://localhost:8787/ 2>/dev/null; then | |
| echo "Wrangler dev is ready" | |
| break | |
| fi | |
| if [ "$i" -eq 30 ]; then | |
| echo "ERROR: wrangler dev failed to start within 60 seconds" | |
| exit 1 | |
| fi | |
| sleep 2 | |
| done | |
| - uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0 | |
| - name: Run integration tests | |
| run: uvx --with pytest,boto3,requests pytest tests/integration/ -v |