Commit Graph

860 Commits

Author SHA1 Message Date
Marek Fiala
65db8bf7a9 refactor(tools): Split build pytest into multiple jobs 2024-02-08 13:49:28 +01:00
laokaiyao
ea14b24048 ci(esp32c5): fix the build of the template app 2024-02-05 12:39:35 +08:00
Marek Fiala
375c22ecdb feat(tools): Update Windows runners tags 2024-02-02 15:04:40 +01:00
Marek Fiala
a97e355e74 feat(tools): Run Tools related host tests on Win 2024-02-02 14:58:04 +01:00
Marius Vikhammer
4d28524bdb docs(esp32c5): add support for building C5 docs 2024-02-01 10:06:41 +08:00
Chen Yudong
b27cf4d444 ci: update pre_commit jobs 2024-01-30 22:45:21 +08:00
Marius Vikhammer
9b4197630a Merge branch 'ci/ignore_build_warnings_build' into 'master'
ci(build): always build apps if ignore_build_warnings.txt changes

See merge request espressif/esp-idf!28764
2024-01-30 09:32:59 +08:00
Fu Hanxi
08312412ec
ci: check warnings while generating the target test jobs 2024-01-29 13:52:40 +01:00
Marius Vikhammer
852a33f32d ci(build): always build apps if gnore_build_warnings.txt changes 2024-01-29 14:24:57 +08:00
Fu Hanxi
94433614dc Merge branch 'ci/fix_missing_artifacts_with_dependencies_and_needs_set' into 'master'
ci: lint yaml files that use `dependencies: []` together with `needs`

See merge request espressif/esp-idf!28707
2024-01-26 14:13:43 +08:00
Shu Chen
b056ac760b Merge branch 'feat/154_enable_receive_done' into 'master'
feat(ieee802154): make the receive done handler feature mandatory

See merge request espressif/esp-idf!28573
2024-01-26 11:54:44 +08:00
igor.udot
7f36e735a6 ci: fix get_known_failure_cases_file has not been found 2024-01-26 10:44:38 +08:00
Fu Hanxi
fc802da68c
ci: lint yaml files that use dependencies: [] together with needs 2024-01-25 14:47:53 +01:00
Shu Chen
86cf144aa7 feat(ieee802154): remove the ieee802154 lib submodule 2024-01-25 18:59:09 +08:00
igor.udot
f5972ab592 ci: change known_failure_cases workflow 2024-01-21 15:36:25 +08:00
Fu Hanxi
a5ece00737
ci: make build_child_pipeline optionally need fast_template_app 2024-01-11 07:21:50 +01:00
Fu Hanxi
dc426ecebd
ci: fix MR_MODIFIED_COMPONENTS missing doublequotes for empty string 2024-01-11 07:21:50 +01:00
Fu Hanxi
fba96d58c2
ci: dynamic pipeline
build:
- upgrade idf-build-apps to 2.x
- unify get_pytest_apps and get_cmake_apps to get_all_apps
	- returns (test_apps, non_test_apps) tuple
- add tests for the new get_all_apps

assign:
- generate build report
- generate target test pipeline based on the build report

target test:
- download artifacts from minio server
- users can use `pytest --pipeline-id xxxxx` to download and flash
the binaries from the artifacts

.post:
- generate target test reports
2024-01-10 15:37:34 +01:00
Fu Hanxi
114af706bb
ci(wifi): migrate from .gitlab/ci/rules.yml to .build-test-rules.yml 2024-01-10 15:31:21 +01:00
Fu Hanxi
bb375ee79a
ci(ethernet): migrate from .gitlab/ci/rules.yml to .build-test-rules.yml 2024-01-10 15:31:11 +01:00
Fu Hanxi
83d4e8c6ab
ci(flash_encryption_wifi_high_traffic): migrate from .gitlab/ci/rules.yml to .build-test-rules.yml 2024-01-10 15:30:53 +01:00
Fu Hanxi
6f6092ed8d
ci(sdio): migrate from .gitlab/ci/rules.yml to .build-test-rules.yml 2024-01-10 15:30:52 +01:00
Fu Hanxi
d44f236f7b
ci(usb): migrate from .gitlab/ci/rules.yml to .build-test-rules.yml 2024-01-10 15:29:44 +01:00
Fu Hanxi
ed1c892a8a
ci(adc): migrate from .gitlab/ci/rules.yml to .build-test-rules.yml 2024-01-10 15:29:44 +01:00
Fu Hanxi
9a9b1cd11f
ci(ecdsa): migrate from .gitlab/ci/rules.yml to .build-test-rules.yml 2024-01-10 15:29:43 +01:00
Fu Hanxi
7138b977f8
ci(nvs_encr_hmac): migrate from .gitlab/ci/rules.yml to .build-test-rules.yml 2024-01-10 15:29:43 +01:00
Fu Hanxi
3645c041e2
ci(flash_multi): migrate from .gitlab/ci/rules.yml to .build-test-rules.yml 2024-01-10 15:29:43 +01:00
Fu Hanxi
b6a93bf81e
ci(i154): migrate from .gitlab/ci/rules.yml to .build-test-rules.yml 2024-01-10 15:29:42 +01:00
Fu Hanxi
b709c880dd
ci: add linter for gitlab yaml files
- remove duplicated artifacts default values
- migrate check_artifacts_expire_time.py
- migrate check_rules_yml.py
2024-01-10 15:29:42 +01:00
Fu Hanxi
7962746c65
ci: remove ip101 jobs and twai_std jobs 2024-01-10 10:10:53 +01:00
Kevin (Lao Kaiyao)
1e6a76419b Merge branch 'feature/support_hello_world_on_esp32c5' into 'master'
feat(esp32c5): support hello world on esp32c5 beta3 (stage 8/8)

See merge request espressif/esp-idf!27870
2024-01-09 18:41:43 +08:00
laokaiyao
d0a8f3e5c4 feat(esp32c5): support esptool on esp32c5 beta3 2024-01-09 13:11:11 +08:00
Fu Hanxi
c633ba167d
ci: fix code_quality_check 2024-01-08 10:13:08 +01:00
wanlei
8536ffb490 fix(twai): enable twai interactive test for all targets on new std runner 2024-01-05 15:22:09 +08:00
Armando
1ab742b3c3 ci(p4): enable esp32p4 target test 2024-01-04 09:34:55 +08:00
Xu Si Yu
13fa6c7af2 feat(ieee802154): Add ieee802154 CLI example 2024-01-03 19:05:16 +08:00
Frantisek Hrbata
0f898539a0 ci: add sbom validation using pre-commit's post-commit stage
With 09ba070b7e ("fix: allow to use older pre-commit hook version")
and b93cc581a5 ("fix: set default pre-commit hook stages to pre-commit..")
we set the default pre-commit hook stage to commit/pre-commit, which avoids
running the pre-commit plugins/hooks multiple times for different stages.
Unfortunately this also affects "pre-commit run" used in CI and
now it runs only plugins which are by default using the
commit/pre-commit stage. Meaning the sbom validation, which uses
post-commit, is not run at all. This adds an explicit pre-commit command
for validate-sbom-manifest plugin, which needs to be started in
post-commit stage.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-01-02 10:47:11 +01:00
Ivan Grokhotkov
763ba14885
feat(docs): use a faster fork of breathe-doc/breathe
See https://github.com/breathe-doc/breathe/discussions/962
2023-12-21 16:33:20 +01:00
Chen Yudong
77597f7ac8 ci: do not upload caches for dev branches by default 2023-12-19 20:36:55 +08:00
Chen Yudong
ff015d1872 ci: differnet cache key for different idf ver
update caches on release tags and nightly schedules
2023-12-19 16:56:53 +08:00
Marius Vikhammer
852fbce397 ci(qemu): disable WDT when running qemu tests
WDTs are flakey in QEMU, disable while testing for now to
stop spurious test failures.
2023-12-13 18:47:26 +08:00
Anton Maklakov
9f0da8b6ed Merge branch 'ci/upload_pipeline_env_fil_into_minio' into 'master'
ci: Upload a report about modified files and components to s3 bucket

See merge request espressif/esp-idf!27758
2023-12-08 12:35:00 +08:00
Aleksei Apaseev
e97826e877 ci: Upload report about modified files and components to s3 bucket 2023-12-08 10:49:17 +08:00
Aleksei Apaseev
0219e8e85d fix(idf_tools): Opt for the recommended tool in tools.json rather than the supported one 2023-12-08 10:14:19 +08:00
Fu Hanxi
d3858b493d
ci: run pytest_build_system_win only with labels and schedule pipeline 2023-12-07 11:15:55 +01:00
Frantisek Hrbata
5df4decf07 feat: use esp-idf-sbom pre-commit plugin
Currently sbom manifest is checked only in .gitmodules and
this check is done in pre-commit and also in CI. Meaning it's running
three times(pre-commit before push if user has it enabled, in CI
as there is the pre-commit run again and again with test in CI). Since
esp-idf-sbom contains a full manifest validation support and pre-commit
plugin for it, let's use it. This removes all the current sbom testing
and replaces it with a signle pre-commit plugin which validates all
manifests files(sbom.yml, idf_component.yml, .gitmodules and also
referenced manifests) in repository. Note that this checks all
manifests, not only ones which were modified. The check is reasonably
fast though, so it should not cause any problem. The reason for
validating all manifest files is that we want to make sure that the sbom
information in .gitmodules is updated too and that the hash
recorded in .gitmodules is up-to-date. Meaning submodule update
would not trigger this plugin, because no manifest was changed.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-12-06 10:08:54 +01:00
Ivan Grokhotkov
178b27ed80
ci(qemu): use qemu from tools.json, don't require a special image 2023-12-03 07:45:19 +01:00
Ivan Grokhotkov
71153c7dbb
feat(tools): add 'idf.py qemu' extension
This extension allows running programs in QEMU similar to running
them on a real chip:

- 'idf.py qemu' — builds and runs the program in QEMU. User gets
  a QEMU instance launched, and can work with it as a normal QEMU
  instance.
- 'idf.py qemu monitor' — same, but QEMU is launched in the
  background, and idf_monitor runs in the foreground, showing QEMU
  output. Compared to only running 'idf.py qemu' this enables, for
  example, automatic backtrace decoding.
- 'idf.py qemu gdb' — launches QEMU in the background and opens an
  interactive GDB prompt, connecting it to QEMU.
- 'idf.py qemu --gdb monitor' and 'idf.py gdb' in another shell:
  launches QEMU in the background, keeps it suspended until GDB is
  connected, and opens idf_monitor. GDB can be used in another shell
  to debug the application.
2023-12-03 07:45:19 +01:00
Roland Dobai
9c4b657ac3 Merge branch 'feature/add_windows_pytest' into 'master'
Tools: Add pytest build system on Windows runner

Closes IDF-7691, IDF-8214, and IDF-1193

See merge request espressif/esp-idf!26603
2023-12-01 16:40:13 +08:00
C.S.M
2d4a9240dc Merge branch 'feat/add_example_usj' into 'master'
change(usb_serial_jtag): Add example for usb serial jtag echo

Closes IDFGH-11503, IDFGH-11493, and IDFGH-11478

See merge request espressif/esp-idf!27366
2023-12-01 14:39:14 +08:00