Commit Graph

11 Commits

Author SHA1 Message Date
Frantisek Hrbata
d4ab79259a tools: add sbom information for submodules
Conflicts:
- spiffs submodules version and hash changed to 0.2-221-gf5e26c4e9331
- protobuf-c submodule version and hash changed to v1.3.0
- ci files moved from tools/ci/config/ into .gitlab/ci/ in v4.4, so
  host-test.yml and rules.yml were changed accordingly in tools/ci/config/.
- added patterns-submodule to rules.yml, because they were also added in
  v4.4
- removed pytest dependency

This adds SBOM information for submodules, which are not managed
by Espressif. Meaning there is no fork for them in the espressif
namespace. Other submodules should add sbom.yml manifest file to
the root of their git repository.

The SBOM information for submodules is stored in the .gitmodules file.
Each SBOM related variable has the "sbom-" prefix and the following
variables may be used:

sbom-version:
   submodule version

sbom-cpe:
   CPE record if available in NVD. This will be used by the SBOM
   tool to check for possible submodule vulnerabilities. The
   version in the CPE can be replaced with the "{}" placeholder,
   which will be replaced by the "sbom-version" value from above.

sbom-supplier:
   Person or organization who is providing the submodule.
   It has to start with "Person:" or "Organization:" prefix
   as required by the SPDX-2.2 standard.

sbom-url:
   URL to the project if exists, e.g. github.

sbom-description:
   Project description.

sbom-hash:
   Submodule SHA as recorded in the git-tree. This field is used by
   CI to check that the submodule checkout hash and info in .gitmodules
   are in sync. IOW if submodule is updated and it has SBOM info in
   .gitmodules, the .gitmodules has to be updated too. The test is
   part of this commit. The checkout has of the submodule can be found
   by using "git submodule status".

Example for micro-ecc submodule
---8<---
[submodule "components/bootloader/subproject/components/micro-ecc/micro-ecc"]
	path = components/bootloader/subproject/components/micro-ecc/micro-ecc
	url = ../../kmackay/micro-ecc.git
	sbom-version = 1.0
	sbom-cpe = cpe:2.3🅰️micro-ecc_project:micro-ecc:{}:*:*:*:*:*:*:*
	sbom-supplier = Person: Ken MacKay
	sbom-url = https://github.com/kmackay/micro-ecc
	sbom-description = A small and fast ECDH and ECDSA implementation for 8-bit, 32-bit, and 64-bit processors
	sbom-hash = d037ec89546fad14b5c4d5456c2e23a71e554966
---8<---

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-06-16 07:34:49 +02:00
Aleksei Apaseev
dbd6519948 ci: allow scheduled pipelines 2022-08-15 10:43:11 +00:00
Marius Vikhammer
a7a1e4dfba CI: run C3 unit test on protected branches 2021-02-19 16:47:00 +08:00
Marius Vikhammer
9c8e4fd4c5 C3: build and run unit tests
Enable building and running of unit tests in CI for C3 as well as fix
related compile errors

Also enables building of C3 test apps
2021-01-11 11:34:37 +08:00
Fu Hanxi
6fd2d27bfd Make sure "unit_test" will trigger all labels
- keep labels name consist with the bot variable
2020-11-30 11:44:37 +08:00
He Yin Ling
6e545215c1 ci: enable ESP32S2 unit test by default 2020-11-30 11:34:51 +08:00
Fu Hanxi
c600a6d840 CI: run build_docs_preview only with the label 2020-11-12 06:44:38 +00:00
Michael (XIAO Xufeng)
2ce058e100 ci: add assign_test into regular test 2020-10-28 16:32:54 +08:00
Fu Hanxi
75ab9223f9 scan test when weekend test. 2020-10-26 10:25:21 +08:00
Fu Hanxi
3026d562ec add README.md to explain how to add/modify jobs/rules/ifs
- rename existing labels to fit the naming convention
2020-10-26 10:25:21 +08:00
Fu Hanxi
7951152f7b CI: Refactor CI rules into rules.yml.
- Add `utils.sh` for some widely used shell scripts
- Change `dependencies` into `needs` for strict dependency relationships
2020-10-26 10:23:46 +08:00