Skip to content

Migrate backend to renamed ASAPPlanner APIs #1162

Migrate backend to renamed ASAPPlanner APIs

Migrate backend to renamed ASAPPlanner APIs #1162

Workflow file for this run

name: MVP CI
on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
push:
branches: [main]
permissions:
contents: read
concurrency:
group: mvp-ci-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
backend:
name: MVP backend
if: github.event_name != 'pull_request' || !github.event.pull_request.draft
runs-on: ubuntu-latest
timeout-minutes: 60
env:
# The full workspace links multiple DataFusion-heavy process test binaries.
CARGO_PROFILE_DEV_DEBUG: "0"
CARGO_PROFILE_TEST_DEBUG: "0"
CARGO_INCREMENTAL: "0"
steps:
- name: Checkout ASAPQuery-backend
uses: actions/checkout@v4
with:
path: ASAPQuery-backend
- name: Install Rust components
run: rustup component add rustfmt clippy
- name: Install protobuf compiler
run: sudo apt-get update && sudo apt-get install --yes protobuf-compiler
- name: Configure private Cargo dependencies
env:
ASAP_CI_REPO_TOKEN: ${{ secrets.ASAP_CI_REPO_TOKEN }}
run: git config --global url."https://x-access-token:${ASAP_CI_REPO_TOKEN}@github.com/".insteadOf "https://github.com/"
- name: Cache Rust build
uses: Swatinem/rust-cache@v2
with:
workspaces: ASAPQuery-backend
# The compiled workspace fills the hosted runner before the cache
# post-step can package `target`; registry/git inputs are sufficient.
cache-targets: false
- name: Check workspace formatting
working-directory: ASAPQuery-backend
# `--all` also follows this workspace's sibling path dependencies.
# Keep the gate scoped to every backend-owned workspace member.
run: cargo fmt -p control_plane -p data_plane -p asap_types -p asap_otel_proto -- --check
- name: Check workspace
env:
CARGO_NET_GIT_FETCH_WITH_CLI: "true"
working-directory: ASAPQuery-backend
run: cargo check --workspace
- name: Lint workspace
env:
CARGO_NET_GIT_FETCH_WITH_CLI: "true"
working-directory: ASAPQuery-backend
# Preserve the existing warning policy while expanding runtime coverage.
run: cargo clippy --workspace --all-targets -- -D warnings
- name: Build process-test control plane
env:
CARGO_NET_GIT_FETCH_WITH_CLI: "true"
working-directory: ASAPQuery-backend
run: cargo build -p control_plane --bin control_plane
- name: Test workspace
env:
CARGO_NET_GIT_FETCH_WITH_CLI: "true"
# Give background flusher/sealer waits headroom on hosted runners.
ASAP_TEST_TIMEOUT_SCALE: "4"
working-directory: ASAPQuery-backend
# Persistence tests wait on background flushers with bounded deadlines.
# Match scripts/e2e.sh to avoid competing flushers exhausting those waits.
run: |
export ASAP_E2E_CONTROL_PLANE_BIN="$PWD/target/debug/control_plane"
cargo test --workspace -- --test-threads=1