[CI] Add build check for Fabric Bridge example app (#33401)
diff --git a/.github/workflows/examples-linux-standalone.yaml b/.github/workflows/examples-linux-standalone.yaml
index 820056f..919704e 100644
--- a/.github/workflows/examples-linux-standalone.yaml
+++ b/.github/workflows/examples-linux-standalone.yaml
@@ -198,6 +198,16 @@
linux debug air-purifier-app \
out/linux-x64-air-purifier/chip-air-purifier-app \
/tmp/bloat_reports/
+ - name: Build example Fabric Bridge App
+ run: |
+ ./scripts/run_in_build_env.sh \
+ "./scripts/build/build_examples.py \
+ --target linux-x64-fabric-bridge \
+ build"
+ .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
+ linux debug fabric-bridge-app \
+ out/linux-x64-fabric-bridge/fabric-bridge-app \
+ /tmp/bloat_reports/
- name: Uploading Size Reports
uses: ./.github/actions/upload-size-reports
if: ${{ !env.ACT }}
diff --git a/scripts/build/build/targets.py b/scripts/build/build/targets.py
index ab0092d..1456c24 100755
--- a/scripts/build/build/targets.py
+++ b/scripts/build/build/targets.py
@@ -129,6 +129,7 @@
TargetPart('tv-app', app=HostApp.TV_APP),
TargetPart('tv-casting-app', app=HostApp.TV_CASTING),
TargetPart('bridge', app=HostApp.BRIDGE),
+ TargetPart('fabric-bridge', app=HostApp.FABRIC_BRIDGE),
TargetPart('tests', app=HostApp.TESTS),
TargetPart('chip-cert', app=HostApp.CERT_TOOL),
TargetPart('address-resolve-tool', app=HostApp.ADDRESS_RESOLVE),
diff --git a/scripts/build/builders/host.py b/scripts/build/builders/host.py
index 568e683..c68e0d1 100644
--- a/scripts/build/builders/host.py
+++ b/scripts/build/builders/host.py
@@ -67,6 +67,7 @@
EFR32_TEST_RUNNER = auto()
TV_CASTING = auto()
BRIDGE = auto()
+ FABRIC_BRIDGE = auto()
JAVA_MATTER_CONTROLLER = auto()
KOTLIN_MATTER_CONTROLLER = auto()
CONTACT_SENSOR = auto()
@@ -119,6 +120,8 @@
return 'tv-casting-app/linux'
elif self == HostApp.BRIDGE:
return 'bridge-app/linux'
+ elif self == HostApp.FABRIC_BRIDGE:
+ return 'fabric-bridge-app/linux'
elif self == HostApp.JAVA_MATTER_CONTROLLER:
return 'java-matter-controller'
elif self == HostApp.KOTLIN_MATTER_CONTROLLER:
@@ -216,6 +219,9 @@
elif self == HostApp.BRIDGE:
yield 'chip-bridge-app'
yield 'chip-bridge-app.map'
+ elif self == HostApp.FABRIC_BRIDGE:
+ yield 'fabric-bridge-app'
+ yield 'fabric-bridge-app.map'
elif self == HostApp.JAVA_MATTER_CONTROLLER:
yield 'java-matter-controller'
yield 'java-matter-controller.map'
diff --git a/scripts/build/testdata/all_targets_linux_x64.txt b/scripts/build/testdata/all_targets_linux_x64.txt
index 9c9fb46..fcdf79b 100644
--- a/scripts/build/testdata/all_targets_linux_x64.txt
+++ b/scripts/build/testdata/all_targets_linux_x64.txt
@@ -9,7 +9,7 @@
esp32-{m5stack,c3devkit,devkitc,qemu}-{all-clusters,all-clusters-minimal,energy-management,ota-provider,ota-requestor,shell,light,lock,bridge,temperature-measurement,ota-requestor,tests}[-rpc][-ipv6only][-tracing]
genio-lighting-app
linux-fake-tests[-mbedtls][-boringssl][-asan][-tsan][-ubsan][-libfuzzer][-ossfuzz][-coverage][-dmalloc][-clang]
-linux-{x64,arm64}-{rpc-console,all-clusters,all-clusters-minimal,chip-tool,thermostat,java-matter-controller,kotlin-matter-controller,minmdns,light,lock,shell,ota-provider,ota-requestor,simulated-app1,simulated-app2,python-bindings,tv-app,tv-casting-app,bridge,tests,chip-cert,address-resolve-tool,contact-sensor,dishwasher,microwave-oven,refrigerator,rvc,air-purifier,lit-icd,air-quality-sensor,network-manager,energy-management}[-nodeps][-nlfaultinject][-platform-mdns][-minmdns-verbose][-libnl][-same-event-loop][-no-interactive][-ipv6only][-no-ble][-no-wifi][-no-thread][-mbedtls][-boringssl][-asan][-tsan][-ubsan][-libfuzzer][-ossfuzz][-coverage][-dmalloc][-clang][-test][-rpc][-with-ui][-evse-test-event][-enable-dnssd-tests][-disable-dnssd-tests]
+linux-{x64,arm64}-{rpc-console,all-clusters,all-clusters-minimal,chip-tool,thermostat,java-matter-controller,kotlin-matter-controller,minmdns,light,lock,shell,ota-provider,ota-requestor,simulated-app1,simulated-app2,python-bindings,tv-app,tv-casting-app,bridge,fabric-bridge,tests,chip-cert,address-resolve-tool,contact-sensor,dishwasher,microwave-oven,refrigerator,rvc,air-purifier,lit-icd,air-quality-sensor,network-manager,energy-management}[-nodeps][-nlfaultinject][-platform-mdns][-minmdns-verbose][-libnl][-same-event-loop][-no-interactive][-ipv6only][-no-ble][-no-wifi][-no-thread][-mbedtls][-boringssl][-asan][-tsan][-ubsan][-libfuzzer][-ossfuzz][-coverage][-dmalloc][-clang][-test][-rpc][-with-ui][-evse-test-event][-enable-dnssd-tests][-disable-dnssd-tests]
linux-x64-efr32-test-runner[-clang]
imx-{chip-tool,lighting-app,thermostat,all-clusters-app,all-clusters-minimal-app,ota-provider-app}[-release]
infineon-psoc6-{lock,light,all-clusters,all-clusters-minimal}[-ota][-updateimage][-trustm]