Skip to content

Page manager with buffer pool #781

Page manager with buffer pool

Page manager with buffer pool #781

Workflow file for this run

name: PR
on:
push:
branches: [ "main" ]
pull_request:
env:
CARGO_TERM_COLOR: always
jobs:
build:
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
profile: [dev, release]
runs-on: ${{ matrix.os }}
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@6c439dc8bdf85cadbbce9ed30d1c7b959517bc49 # v2.12.2
with:
egress-policy: audit
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Build source
run: cargo build --verbose --profile=${{ matrix.profile }}
- name: Build CLI
run: cargo build --verbose --manifest-path=cli/Cargo.toml --profile=${{ matrix.profile }}
format:
runs-on: ubuntu-latest
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@6c439dc8bdf85cadbbce9ed30d1c7b959517bc49 # v2.12.2
with:
egress-policy: audit
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: dtolnay/rust-toolchain@b95584d8105b9ab200e15821fa671848cf2b7017 # nightly
with:
components: rustfmt
- name: Format
run: |
cargo +nightly fmt --all -- --check
if [ $? -ne 0 ]; then
echo "::error::Formatting check failed. Please run 'make format' locally and commit the changes."
cargo +nightly fmt --all -- --check
exit 1
fi
lint:
runs-on: ubuntu-latest
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@6c439dc8bdf85cadbbce9ed30d1c7b959517bc49 # v2.12.2
with:
egress-policy: audit
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Lint
run: cargo clippy --all-targets -- --deny=warnings
unit-tests:
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
profile: [dev, release]
backend: [mmap_backend, buffer_pool_backend]
runs-on: ${{ matrix.os }}
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@6c439dc8bdf85cadbbce9ed30d1c7b959517bc49 # v2.12.2
with:
egress-policy: audit
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Run unit tests
run: |
make unit-tests cargo_flags='--verbose --profile=${{ matrix.profile }} --no-default-features --features ${{ matrix.backend }}'
integration-tests:
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
profile: [dev, release]
backend: [mmap_backend, buffer_pool_backend]
runs-on: ${{ matrix.os }}
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@6c439dc8bdf85cadbbce9ed30d1c7b959517bc49 # v2.12.2
with:
egress-policy: audit
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Run integration tests
run:
make integration-tests cargo_flags='--profile=${{ matrix.profile }} --no-default-features --features ${{ matrix.backend }}' test_flags=--nocapture
check-cli-lockfile:
runs-on: ubuntu-latest
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@6c439dc8bdf85cadbbce9ed30d1c7b959517bc49 # v2.12.2
with:
egress-policy: audit
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Check CLI Cargo.lock is up-to-date
run: |
cd cli
cargo check --locked
if [ $? -ne 0 ]; then
echo "::error::CLI Cargo.lock is out of date. Please run 'cargo update' in the cli directory and commit the changes."
exit 1
fi