forked from project-chip/connectedhomeip
-
Notifications
You must be signed in to change notification settings - Fork 28
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add example conformance report tool (project-chip#36913)
* Add example conformance report tool * Integrate report into app engine * Restyled by isort * fix lint errors * Add more targets * Restyled by isort * Add python build to startup script * Update readme for the compute_engine VM * fix spelling * spelling * Restyled by prettier-markdown * limit ninja_jobs to cpu_count() - 2 * Fix typo; group cmds in the script * Improved comments on find_executables(dirs) --------- Co-authored-by: Restyled.io <[email protected]>
- Loading branch information
1 parent
84399bd
commit 6139d98
Showing
4 changed files
with
448 additions
and
29 deletions.
There are no files selected for viewing
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,29 +1,33 @@ | ||
## Startup Script of Compute Engine | ||
|
||
A startup script is a file that contains commands that run when a virtual | ||
machine instance boots. Compute Engine provides support for running startup | ||
scripts on Linux and Windows virtual machines. | ||
|
||
### Create a virtual machine instance using startup script | ||
|
||
The `startup-script.sh` could be used as the startup script of a virtual machine | ||
instance which run Matter coverage report and publish the result via an App | ||
Engine service. | ||
|
||
You can create a virtual machine instance by using the gcloud compute instances | ||
create command with the `--metadata-from-file` flag. | ||
|
||
``` | ||
gcloud compute instances create VM_NAME \ | ||
--image-project=PROJECT_NAME \ | ||
--image-family=ubuntu-22.04 \ | ||
--metadata-from-file=startup-script=FILE_PATH | ||
``` | ||
|
||
Replace the following: | ||
|
||
`PROJECT_NAME`: the name of the project host the virtual machine instance | ||
|
||
`VM_NAME`: the name of the virtual machine instance | ||
|
||
`FILE_PATH`: the relative path to the startup script file | ||
## Google Cloud Compute Engine | ||
|
||
We have setup a Virtual Machine on | ||
[Google Cloud](https://cloud.google.com/products/compute) to generate both the | ||
[Matter SDK coverage report](https://matter-build-automation.ue.r.appspot.com) | ||
and the | ||
[Matter SDK Conformance report](https://matter-build-automation.ue.r.appspot.com/conformance_report.html). | ||
|
||
### The Matter SDK Virtual Machine and the "startup-script.sh" | ||
|
||
We created a VM named `matter-build-coverage`. The machine configuration is | ||
located | ||
[here](https://pantheon.corp.google.com/compute/instancesDetail/zones/us-central1-a/instances/matter-build-coverage?inv=1&invt=AbnAfg&project=matter-build-automation). | ||
Reach out to Google team members if you need to make changes to this VM. | ||
|
||
This virtual machine is scheduled to run daily, starting at 11:45PM and stopping | ||
at 2am. During boot, the machine runs the `startup-script.sh`. | ||
|
||
The `startup-script.sh` script contains commands to checkout the SDK repository | ||
and create both the SDK coverage report and conformance report. The startup | ||
script uses `scripts/build_coverage.sh` to generate the coverage report and | ||
`scripts/examples/conformance_report.py` to generate the conformance report. The | ||
resulting HTML files are published via an App Engine service and available here | ||
([coverage report](https://matter-build-automation.ue.r.appspot.com/), | ||
[conformance report](https://matter-build-automation.ue.r.appspot.com/conformance_report.html)). | ||
|
||
### Making Changes to "startup-script.sh" | ||
|
||
If you make changes to `startup-script.sh`, make sure you go to the | ||
[VM configuration](https://pantheon.corp.google.com/compute/instancesDetail/zones/us-central1-a/instances/matter-build-coverage?inv=1&invt=AbnAfg&project=matter-build-automation), | ||
click `edit` and update the startup script in the `Automation` text box, to | ||
reflect your changes. The script in the Matter SDK repo is just a copy of the | ||
configuration in the VM. |
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
Oops, something went wrong.