Skip to content

duplicate detection via change store #514

duplicate detection via change store

duplicate detection via change store #514

Workflow file for this run

name: CI
on:
push:
branches:
- main
pull_request:
types:
- opened
- reopened
- synchronize
merge_group:
permissions:
contents: read
jobs:
# ---------------------------------------------------------------------------
# LINT (gofmt via Go SDK, yamlfmt via go run)
# ---------------------------------------------------------------------------
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup
- name: Run linters
run: make lint
# ---------------------------------------------------------------------------
# TIDY (module files + BUILD files in sync)
# ---------------------------------------------------------------------------
tidy:
name: Tidy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup
- name: Check module files are tidy
run: make check-tidy
- name: Check BUILD files are up to date
run: make check-gazelle
# ---------------------------------------------------------------------------
# BUILD AND UNIT TESTS
# ---------------------------------------------------------------------------
build-and-unit-test:
name: Build and Unit Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup
- name: Build project
run: make build
- name: Run unit tests
run: make test
# ---------------------------------------------------------------------------
# INTEGRATION TESTS (e2e, gateway, orchestrator)
# ---------------------------------------------------------------------------
e2e:
name: E2E Integration Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup
- name: Run E2E tests
run: make e2e-test
gateway-integration-test:
name: Gateway Integration Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup
- name: Run Gateway integration tests
run: make integration-test-gateway
orchestrator-integration-test:
name: Orchestrator Integration Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup
- name: Run Orchestrator integration tests
run: make integration-test-orchestrator
# ---------------------------------------------------------------------------
# EXTENSION TESTS
# ---------------------------------------------------------------------------
counter-integration-test:
name: Counter Extension Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup
- uses: ./.github/actions/run-bazel-test
with:
target: //test/integration/extension/counter/...
queue-integration-test:
name: Queue Extension Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup
- uses: ./.github/actions/run-bazel-test
with:
target: //test/integration/extension/queue/...
storage-integration-test:
name: Storage Extension Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup
- uses: ./.github/actions/run-bazel-test
with:
target: //test/integration/extension/storage/...
# ---------------------------------------------------------------------------
# CORE TESTS
# ---------------------------------------------------------------------------
consumer-integration-test:
name: Consumer Integration Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup
- uses: ./.github/actions/run-bazel-test
with:
target: //test/integration/core/consumer/...
# ---------------------------------------------------------------------------
# REQUIRED CHECKS GATE
# ---------------------------------------------------------------------------
required-checks:
name: Required Checks
runs-on: ubuntu-latest
needs:
- lint
- tidy
- build-and-unit-test
- e2e
- gateway-integration-test
- orchestrator-integration-test
- counter-integration-test
- queue-integration-test
- storage-integration-test
- consumer-integration-test
steps:
- name: All required checks passed
run: |
echo "All required checks passed!" >&2