Commit Graph

138 Commits

Author SHA1 Message Date
Lup Yuen Lee
d36197266a build.yml: Limit the GitHub Runners
This PR modifies NuttX CI and GitHub Actions, to comply with ASF Policy. Right now, every NuttX Pull Request will trigger 24 Concurrent Jobs (GitHub Runners), executing them in parallel: https://lupyuen.github.io/articles/ci

According to ASF Policy: We should run at most 15 Concurrent Jobs: https://infra.apache.org/github-actions-policy.html

Thus we'll cut down the Concurrent Jobs from 24 down to 15. That's 12 Linux Jobs, 2 macOS, 1 Windows. (Each job takes 30 mins to 2 hours)

(1) Right now our "Linux > Strategy" is a flat list of 20 Linux Jobs, all executed in parallel

(2) We change "Linux > Strategy" to prioritise by Target Architecture, and limit to 12 concurrent jobs

(3) So NuttX CI will initially execute 12 Build Jobs across Arm32, Arm64, RISC-V, Simulator and Xtensa. As they complete, NuttX CI will execute the remaining 8 Build Jobs (for Arm32).

(4) This will extend the Overall Build Duration from [2 hours](https://github.com/apache/nuttx/actions/runs/10817443237) to [2.25 hours](https://github.com/lupyuen4/ci-nuttx/actions/runs/10828246630)

(5) We'll also limit macOS Jobs to 2, Windows Jobs to 1
2024-09-13 14:33:13 +08:00
dependabot[bot]
5c90cd23f6 build(deps): bump github/super-linter from 6 to 7
Bumps [github/super-linter](https://github.com/github/super-linter) from 6 to 7.
- [Release notes](https://github.com/github/super-linter/releases)
- [Changelog](https://github.com/github/super-linter/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/super-linter/compare/v6...v7)

---
updated-dependencies:
- dependency-name: github/super-linter
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-07 12:08:11 +08:00
simbit18
ccb20feb25 tools/ci/docker/linux/Dockerfile: Restarting the Docker-Linux workflow a new attempt
tools/ci/docker/linux/Dockerfile

revert from --strip-components=1 to --strip-components 1

.github/workflows/docker_linux.yml

   added -> workflow_dispatch:

Manual execution of a workflow
https://docs.github.com/en/actions/managing-workflow-runs-and-deployments/managing-workflow-runs/manually-running-a-workflow
2024-09-02 14:11:51 -04:00
simbit18
1661a66843 [cmake]: added initial support for MSYS2
Currently concerns only arm.

tools/ci/testlist/msys2.dat:
At the moment I only added the board nucleo-l152re:nsh

.github/workflows/build.yml:
Enabled cmake for msys2
2024-08-27 21:36:12 +08:00
simbit18
439b9e9683 ISSUE_TEMPLATE: Fixed incorrect links for issue forms
Correct links:

- Bug report

- Feature request

- General Help

add BSD keyword
2024-08-05 15:35:48 -03:00
simbit18
cf0e832f2b Added Issue templates
Template

Bug report
Report a bug to improve NuttX stability

Feature request
Request an enhancement for NuttX

General Help
Get general support regarding NuttX

Action
An action for automatically labelling issues
2024-08-02 15:13:14 -03:00
simbit18
3637040d73 tools/ci/testlist: Added jobs to speed up CI checks.
Divided jobs risc-v and xtensa to finish workflow under 2 hours.
2024-07-30 01:43:29 +08:00
simbit18
d8a8d6e67c build.yml: fix error: externally-managed-environment 2024-07-29 22:24:48 +08:00
simbit18
6edd1e3f7d doc.yml: Updated the workflow to use version v4 of the actions/upload-artifact 2024-07-23 22:38:43 +08:00
simbit18
5f75c0ad84 buildyml: Updated the workflow to use version v4 of the actions/upload-artifact and actions/download-artifact. 2024-07-23 01:30:34 +08:00
simbit18
1540dc2d67 tools/testbuild.sh: add option -N use CMake with Ninja
tools/testbuild.sh
     added option -N Use CMake with Ninja as the backend.

    updated help.

    added date to print startup board

   added HOST=Msys

github/workflows/build.yml

   added option -N job docker
2024-07-18 13:40:20 +08:00
dependabot[bot]
9d0894fd51 build(deps): bump docker/build-push-action from 5 to 6
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5 to 6.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v5...v6)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-25 16:42:24 +08:00
dependabot[bot]
22ffa8ebf1 build(deps): bump github/super-linter from 5 to 6
Bumps [github/super-linter](https://github.com/github/super-linter) from 5 to 6.
- [Release notes](https://github.com/github/super-linter/releases)
- [Changelog](https://github.com/github/super-linter/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/super-linter/compare/v5...v6)

---
updated-dependencies:
- dependency-name: github/super-linter
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-29 17:34:32 +08:00
simbit18
21572864e7 Minor improvement for tools/ci: Fixed cmake build of bloaty and installation in darwin.sh script.
function bloaty() Add  -D CMAKE_INSTALL_PREFIX="${NUTTXTOOLS}"/bloaty.
Improves workflow execution time because it is now cached.

Changed reference file to calculate the hash for key of actions/cache@v4. Now it is darwin.sh.
2024-03-19 20:52:40 +08:00
Xiang Xiao
9d5471349f ci: Remove the codecheck from build.yml
the check isn't really enabled and enforce before
due to a mass of false alarm, but recently it break
ci frequently, so it's better to remove it now.

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2024-02-29 18:54:41 -03:00
dependabot[bot]
2ec36fa7bd build(deps): bump actions/cache from 3 to 4
Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-22 01:42:03 -08:00
simbit18
eaf1d07809 tools/ci: add initial support for MSYS2
removed uname from msys2 job
2024-01-09 05:50:09 -08:00
dependabot[bot]
387e9d64ac build(deps): bump actions/setup-python from 4 to 5
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-10 21:53:27 -08:00
Xiang Xiao
cf2f206f3b Revert "CI: Free space on worker building container"
done by https://github.com/apache/nuttx/pull/11354 now

This reverts commit 05801f9fec.
2023-12-10 06:39:30 -08:00
ThomasNS
2b6a42e88f free disk space action added to fix docker image build issue 2023-12-08 14:42:17 +01:00
ThomasNS
54f72d9e5e free up runner disk space before build docker image 2023-12-07 19:48:28 -08:00
dependabot[bot]
b98e78b9f5 build(deps): bump docker/build-push-action from 4 to 5
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 4 to 5.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v4...v5)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-18 13:33:40 +08:00
dependabot[bot]
1bd0e0ec91 build(deps): bump docker/login-action from 2 to 3
Bumps [docker/login-action](https://github.com/docker/login-action) from 2 to 3.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-18 13:33:29 +08:00
dependabot[bot]
045afdf8b5 build(deps): bump docker/setup-buildx-action from 2 to 3
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 2 to 3.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-18 13:33:15 +08:00
dependabot[bot]
890dd87a4a build(deps): bump actions/checkout from 3 to 4
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-11 14:28:40 +08:00
Xiang Xiao
b090b7340b github: Skip the build if the change is under tools/ci/docker/linux
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-08-24 12:09:11 -03:00
chao an
ed6503b9a3 ci/check: install format tool before run style check script
Signed-off-by: chao an <anchao@xiaomi.com>
2023-07-21 20:47:26 +08:00
Petro Karashchenko
dc6baf68a9 .github/workflows: run MAC OS builds based on macos-13 image
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2023-07-05 00:16:44 +08:00
Brennan Ashton
6417ca79ad CI: set-output command is deprecated
CI currently runs with the warning:

The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
2023-05-16 15:56:01 +08:00
Brennan Ashton
9a654b658e docs: Generate pdf version of docs for #9095
This implements the changes required to genreate the pdf version
of the documentation. The pdf will be generated as a build artifact
attached to the build. This is the first patch to enable this
a follow on patch to the website repo will publish the pdf to the
NuttX website.
2023-05-16 15:12:10 +08:00
dependabot[bot]
3dd7a015ba build(deps): bump github/super-linter from 4 to 5
Bumps [github/super-linter](https://github.com/github/super-linter) from 4 to 5.
- [Release notes](https://github.com/github/super-linter/releases)
- [Changelog](https://github.com/github/super-linter/blob/main/docs/release-process.md)
- [Commits](https://github.com/github/super-linter/compare/v4...v5)

---
updated-dependencies:
- dependency-name: github/super-linter
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-18 01:53:58 +08:00
raiden00pl
655f7f14ba github/linters/setup.cfg: use ignore for E203 2023-04-17 01:59:10 -07:00
David Sidrane
f1b646efc7 Fix Black/Flake8 whitespace around slice disagreement
See https://black.readthedocs.io/en/stable/guides/using_black_with_other_tools.html#flake8
2023-04-17 01:47:00 -07:00
Brennan Ashton
05801f9fec CI: Free space on worker building container 2023-03-01 15:55:11 +08:00
dependabot[bot]
9d8f7de81c build(deps): bump docker/build-push-action from 3 to 4
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3 to 4.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-06 12:18:12 +08:00
Fotis Panagiotopoulos
b026072fbe Enabled UTF check in CI. 2023-02-02 00:31:02 +02:00
Xiang Xiao
0a23bfea03 Fix ccache: error: Could not find compiler "x86_64-elf-gcc" in PATH
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-12 20:25:51 +09:00
Xiang Xiao
b83f3e6ca7 workflow: Move ccache setting from build.yml to cibuild.sh
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-11 22:41:25 +08:00
Xiang Xiao
98412b9e97 tools/cibuild.sh: Move the installation directory from prebuilt to tools
sync with tools/ci/docker/linux/Dockerfile

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-11 22:41:25 +08:00
Gustavo Henrique Nihei
6576be99e1 ci: Fix save and restore in GitHub cache action for MacOS build
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-12-09 14:18:50 +08:00
Nathan Hartman
03802dad13 NuttX graduated the Incubator; update repository links 2022-11-26 11:58:15 -08:00
Brennan Ashton
9140b39bde CI: Update worker base OS version
Also pin Bloaty to 52948c107c8f81045e7f9223ec02706b19cfa882
 - see https://github.com/google/bloaty/pull/326/files
2022-11-21 17:20:24 +08:00
Brennan Ashton
19ea8e74ae docs: Include released 10.x and 11.x versions under security policy.
Fixes #7514
2022-11-21 10:06:31 +01:00
W-Mai
07a2fa8d57 ci/docker: copy clang-extdef-mapping to clang-arm
Clang relies on clang-extdef-mapping for ctu checking. But clang-arm doesn't provide this file
A tweaking way to support this feature is copy a `clang-extdef-mapping` from other clang version.

Signed-off-by: xinbingnan <xinbingnan@xiaomi.com>
2022-10-24 17:04:45 +08:00
Brennan Ashton
9889b4b5c6 ci: Only build docker image once. 2022-10-16 13:13:59 +08:00
xinbingnan
d8cff7d17a tools/ci/docker/linux/Dockerfile: Install CodeChecker and requirements(clang, clang-tidy)
.github/workflows/build.yml: added CodeChecker support for GitHub Workflow
tools/testbuild.sh: added support for CodeChecker checks

- Added support for CodeChecker checks.
- Generate inspection reports and summaries.
- After the task is executed, the logs are compressed and the database is packaged.

Signed-off-by: xinbingnan <xinbingnan@xiaomi.com>
2022-10-12 16:23:43 +08:00
Alex
767ab06ecd Update build.yml
Signed-off-by: sashashura <93376818+sashashura@users.noreply.github.com>
2022-08-29 21:36:04 +08:00
qinwei1
b7cdacf3b5 .github/workflows: Add nuttx/source to the safe directory, covering apps
Signed-off-by: qinwei1 <qinwei1@xiaomi.com>
2022-06-25 11:56:13 +08:00
Xiang Xiao
02690fe58e .github/workflows: Add nuttx/source to the safe directory
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-24 14:55:18 +03:00
Xiang Xiao
379892d297 Allow ci update .github/workflows/docker_linux.yml
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-23 18:34:21 -03:00