From 42bded3825e564728e49905b073e12de33dff487 Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Wed, 29 Jan 2025 17:30:46 +0200 Subject: [PATCH] test(ci-broker.md): verify event filter And Signed-off-by: Lars Wirzenius --- ci-broker.md | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/ci-broker.md b/ci-broker.md index cbaa7996..2744d580 100644 --- a/ci-broker.md +++ b/ci-broker.md @@ -1048,6 +1048,43 @@ triggers: ~~~ +## Filter predicate `And` + +_Want:_ We can allow a combination of events if they are all allowed +individually. + +_Why:_ This is for consistency. + +~~~scenario +given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh +given a Git repository xyzzy in the Radicle node + +given file config.yaml from filter-and.yaml + +when I run cibtool --db ci-broker.db event add --repo xyzzy --ref main --commit HEAD --kind branch-deleted +when I run cibtool --db ci-broker.db event add --repo xyzzy --ref oksa --commit HEAD --kind branch-created + +when I run ./env.sh cib --config config.yaml queued + +when I run cibtool --db ci-broker.db run list --json +then stdout contains "main" +then stdout contains "oksa" +~~~ + +~~~{#filter-and.yaml .file .json} +db: ci-broker.db +adapters: + default: + command: ./adapter.sh +triggers: + - adapter: default + filters: + - !And + - !Allow + - !Allow +~~~ + + # Acceptance criteria for test tooling The event synthesizer is a helper to feed the CI broker node events in