Skip to content

feat: add disk based event buffering #2367

feat: add disk based event buffering

feat: add disk based event buffering #2367

Workflow file for this run

name: CI
on:
pull_request:
push:
branches:
- main
env:
CARGO_TERM_COLOR: always
CLICOLOR: 1
RUST_NIGHTLY_VERSION: nightly-2025-01-24
CI: true
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
lockfile:
name: Validate Lockfile
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust
uses: ./.github/actions/setup-rust
- run: cargo update --workspace --locked
publish-crates-check:
name: Publish Check
needs:
- lockfile
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust
uses: ./.github/actions/setup-rust
with:
cache: false
- name: Publish crate check
uses: katyo/publish-crates@v2
with:
no-verify: true
dry-run: true
check-repo: false
ignore-unpublished-changes: true
cargo-verifications:
name: Cargo verifications
needs:
- lockfile
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust
uses: ./.github/actions/setup-rust
with:
toolchain: ${{ env.RUST_NIGHTLY_VERSION }}
- name: Setup Bun
uses: ./.github/actions/setup-bun
- name: Check for typos
uses: crate-ci/typos@master
with:
config: ./.typos.toml
- uses: taiki-e/install-action@cargo-machete
- name: Lint project
run: make lint
install-deps:
name: Install dependencies
needs:
- cargo-verifications
- publish-crates-check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust
uses: ./.github/actions/setup-rust
with:
toolchain: ${{ env.RUST_NIGHTLY_VERSION }}
cache: true
- name: Install nextest
uses: taiki-e/cache-cargo-install-action@v3
with:
tool: cargo-nextest@0.9.100
locked: true
- name: Install dependencies
run: cargo fetch
test:
needs: install-deps
name: Running tests
runs-on: ubuntu-latest
env:
AWS_STORAGE_ENV: local
AWS_ENDPOINT_URL: http://localhost:4566
AWS_REGION: us-east-1
AWS_S3_BUCKET_NAME: fuel-streams-local
NETWORK: local
STORAGE_MAX_RETRIES: 5
services:
localstack:
image: localstack/localstack:latest
ports:
- 4566:4566
env:
SERVICES: s3
DEBUG: 1
steps:
- uses: actions/checkout@v4
- name: Install Rust
uses: ./.github/actions/setup-rust
with:
toolchain: ${{ env.RUST_NIGHTLY_VERSION }}
- name: Run tests
run: cargo test --workspace
release:
name: Create Release
if: >-
(github.event_name == 'push' &&
github.ref == 'refs/heads/main' &&
contains(github.event.head_commit.message, 'ci(release): Preparing')) ||
github.event_name == 'workflow_dispatch'
needs:
- test
runs-on: ubuntu-latest
permissions:
contents: write
actions: write
steps:
- name: Checkout Repository
uses: actions/checkout@v4