dynamically enabling Matter/Zigbee only components for CMP (#1427) #98
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Zigbee code generation | |
permissions: | |
contents: write | |
on: | |
push: | |
pull_request: | |
workflow_dispatch: | |
env: | |
ZAP_TEST_TIMEOUT: 3600000 | |
ZAP_TEMPSTATE: 1 | |
BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }} | |
P12_PASSWORD: ${{ secrets.P12_PASSWORD }} | |
TRUSTED_CERTIFICATE_BASE64: ${{ secrets.TRUSTED_CERTIFICATE_BASE64 }} | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
KEYCHAIN_PASSWORD: silabs | |
jobs: | |
prepare-zap-and-regenerate-zigbee: | |
name: Prepare Zap and regenerate Zigbee | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
node-version: [20.x] | |
os: [ubuntu-22.04] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v3.0.0 | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: 'npm' | |
- run: sudo ./src-script/install-packages-ubuntu | |
- run: sudo apt-get install --fix-missing libxml2-utils | |
- run: node --version | |
- run: npm --version | |
- run: npm ci | |
- run: npm rebuild canvas --update-binary | |
- run: npm rebuild libxmljs --update-binary | |
- run: npm run metafile-check | |
- run: npm run version-stamp | |
- run: npm run build-spa | |
- run: npm run self-check | |
- name: Clone the public GSDK | |
env: | |
GIT_CLONE_PROTECTION_ACTIVE: false | |
run: git clone https://github.com/SiliconLabs/gecko_sdk.git gecko_sdk | |
- name: Create the temp regen directory for this PR. | |
run: mkdir regen-pr | |
- name: Run the zigbee regen with the cloned gsdk, using latest. | |
run: node ./src-script/gsdk-public-regen.js ./gecko_sdk/ ./regen-pr | |
- name: Create the temp regen directory for master. | |
run: mkdir regen-master | |
- uses: actions/checkout@v3 | |
with: | |
ref: master | |
clean: false | |
- run: npm ci | |
- run: npm rebuild canvas --update-binary | |
- run: npm rebuild libxmljs --update-binary | |
- name: Rebuild with master | |
run: npm run build | |
- name: Run the zigbee regen with the cloned gsdk, using master. | |
run: node ./src-script/gsdk-public-regen.js ./gecko_sdk/ ./regen-master | |
- name: Remove genResult files just in case. | |
run: find ./regen-master -name genResult.json -exec rm -f {} \; | |
- uses: actions/checkout@v3 | |
with: | |
clean: false | |
- name: Diff | |
run: node ./src-script/run-conditionally.js regenTest.zigbee.failOnDiff==true diff -r ./regen-pr ./regen-master |