Skip to content

A number of updates and fixes for dockerized CHIP #1947

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

lauckhart
Copy link
Collaborator

  • We now pull tests from python files using the method name rather than the filename

  • Tests with multiple runs now generate as a suite with one test for each run

  • Tests can specify alternate PICS values

  • Implemented more flexible PICS configuration that will merge values from files, container files and/or memory

  • New ".matter-test.properties" configuration file allows for setting dev config such as disabling pulls

  • We now pass command pipe messages from the docker container to the test harness via UDP

  • We patch the centralized pipe message generator to delay for 20ms after sending a message

  • Updated various tests; mostly enabling tests that work now but also some renames and disabling of new tests we don't support

  • RVC tests use CHIP's specialized RVC PICS file

  • Removed Dockerfile step that was breaking builds and was no longer necessary due to CHIP updates

  • Added "debug" mode to dockerfile build to show verbose logs and drop into console if build fails

  • Added script to run command in new ephemeral container

  • Python test parser now supports arguments with quoted strings and removes arguments that we don't need/want

  • Fixed loading of PICS for some python scripts

  • Fix bug in managed arrays when value is null

  • Fixed matter-run to support execution of scripts outside of build tree

  • A few PICS updates

  • We now use a single command pipe for all test apps and ensure correct symlink is installed for each test

  • The root test descriptor in the container now contains a format version # to prevent container/test harness mismatches

  • Modernize eslint config

@lauckhart lauckhart force-pushed the chip-testing-updates branch 3 times, most recently from 655668c to 0ec603f Compare April 26, 2025 17:08
@lauckhart lauckhart force-pushed the chip-testing-updates branch from 0ec603f to ce83bdb Compare May 3, 2025 01:23
* We now pull tests from python files using the method name rather than the filename

* Tests with multiple runs now generate as a suite with one test for each run

* Tests can specify alternate PICS values

* Implemented more flexible PICS configuration that will merge values from files, container files and/or memory

* New ".matter-test.properties" configuration file allows for setting dev config such as disabling pulls

* We patch the centralized pipe message generator to delay for 20ms after sending a message

* Updated various tests; mostly enabling tests that work now but also some renames and disabling of new tests we don't support

* RVC tests use CHIP's specialized RVC PICS file

* Removed Dockerfile step that was breaking builds and was no longer necessary due to CHIP updates

* Added "debug" mode to dockerfile build to show verbose logs and drop into console if build fails

* Added script to run command in new ephemeral container

* Python test parser now supports arguments with quoted strings and removes arguments that we don't need/want

* Fixed loading of PICS for some python scripts

* Fix bug in managed arrays when value is null

* Fixed matter-run to support execution of scripts outside of build tree

* A few PICS updates

* We now use a single command pipe for all test apps and ensure correct symlink is installed for each test

* The root test descriptor in the container now contains a format version # to prevent container/test harness mismatches

* Modernize eslint config

* Use docker bake for builds

* Create new image for example apps and do not (currently) build by default

* Store current CHIP SHA in git so builds are consistent

* Enable repo cache for builds

* Patch CIPD config to drop installation of many unnecessary gigabytes of stuff

* Do not checkout some unnecessary submodules

* Do not use pigweed for bootstrapping beyond CIPD

* New workflow for building image and running tests

* Break CC out into its own test group because it is very slow
@lauckhart lauckhart force-pushed the chip-testing-updates branch from ce83bdb to d89a270 Compare May 3, 2025 09:53
node-version:
description: 'Node.js version'
required: true
default: '20.x'
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

upgrade to 22.x as other tests too?

- cron: 0 3 * * * # Every day at 03:00
workflow_dispatch: # Manually on demand
push:
branches: [ "main", "chip-testing-updates-dev" ]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

second branch name should be removed before merging?

// Exclude because of timing issues with the filesocket/backchannel commands
"OVENOPSTATE/2.1",
"OVENOPSTATE/2.2",

// Excluded because Pause and Resume are unsupported but test python file exists
// https://github.com/CHIP-Specifications/chip-test-plans/issues/5067
"OVENOPSTATE/2.3",
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can also remove this exclude because project-chip/connectedhomeip#38430 is soled so these tests disappeared anyway

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants