Commit Graph

93 Commits

Author SHA1 Message Date
Marius Alwan Meyer
86b7119723 [CI] don't try to login without credentials
Some checks failed
Containers / timestamp (push) Successful in 1s
Containers / release-trigger (push) Has been skipped
Containers / architectures (push) Failing after 2s
Containers / stable-release-trigger (push) Has been skipped
Containers / tags (push) Successful in 1s
Containers / releases (push) Has been skipped
Containers / git-tag (push) Has been skipped
Containers / stable-releases (push) Has been skipped
Containers / stable-git-tag (push) Has been skipped
Containers / dev-generic (push) Failing after 9s
Containers / candidates (push) Has been skipped
2023-07-21 10:52:30 +02:00
Marius Alwan Meyer
5e5e545b52 [CI] use pip3 directly
Some checks failed
Containers / timestamp (push) Successful in 1s
Containers / release-trigger (push) Has been skipped
Containers / architectures (push) Failing after 2s
Containers / stable-release-trigger (push) Has been skipped
Containers / tags (push) Successful in 2s
Containers / releases (push) Has been skipped
Containers / git-tag (push) Has been skipped
Containers / stable-releases (push) Has been skipped
Containers / stable-git-tag (push) Has been skipped
Containers / dev-generic (push) Failing after 26s
Containers / candidates (push) Has been skipped
2023-07-21 10:48:50 +02:00
Marius Alwan Meyer
fa61ded813 [CI] add my gitea instatance 2023-07-21 10:44:19 +02:00
Peter Johanson
76376c9148 feat: Bump to Zephyr SDK 0.15.2. 2022-12-23 02:05:58 -06:00
Peter Johanson
b4cab4d5a9 Merge branch '3.0-branch' into 3.2-branch 2022-11-03 12:00:43 -04:00
Peter Johanson
9b1bbf4a06 refactor: Move to new actions/checkout. 2022-11-03 11:00:05 -05:00
Peter Johanson
aedbb92f63 refactor: Move to $GITHUB_OUTPUT for step outputs. 2022-11-03 11:00:05 -05:00
Peter Johanson
2eba1525f4 Merge branch '3.0-branch' into 3.2-branch
* Bring in Node version bump, deps bumps, etc.
2022-10-28 22:47:05 -04:00
dependabot[bot]
0712f5046d build(deps): bump docker/setup-buildx-action from 1 to 2
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 1 to 2.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/v1...v2)

---
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>
2022-10-28 14:22:46 -05:00
Peter Johanson
2f5f1ed561 chore: Bump a ton of deps. 2022-10-28 12:59:24 -05:00
Peter Johanson
0793ce8183 feat: Use skopeo copy to create multi-arch tags.
* Avoid plain `docker tag` to create stable/versioned tags, as this
  creates single architecture image tags, instead of a new manifest list
* Use `skopeo copy` instead for this!
2022-10-27 00:19:17 -05:00
Peter Johanson
15c1cac704 fix: Add git safe directory override. 2022-10-25 22:57:02 -05:00
Peter Johanson
a3c3bca1c9 fix: Disable git unsafe directory checks.
* git directory safety checks cause issues for CI, so disabling them.
2022-10-18 20:58:45 -05:00
Peter Johanson
2f5fa1a7e9 feat: Move to Zephyr 3.2/SDK 0.15.2
* SDK 0.15 supports a few more target architectures
* SDK was refactored to minimal zip then download toolchains, so refactor to that.
2022-10-18 20:58:45 -05:00
Peter Johanson
e21ed8231a fix: Only push containers if docker login success. 2022-04-16 00:33:45 -04:00
Peter Johanson
d69745c8be feat: Add ability to update docker stable tag.
* Addd workflow steps to handle `foo-bar-stable` tags to update
  docker `stable` tag to point to `foo-bar`.
2022-03-31 14:06:23 -04:00
Peter Johanson
86a7d2fd65 feat: Build for both x86_64 and aarch64 platforms. 2022-02-22 01:15:50 -05:00
Peter Johanson
c94dce1726 feat: Zephyr 3.0.0
See: https://docs.zephyrproject.org/3.0.0/getting_started/index.html
2022-02-22 01:15:50 -05:00
Peter Johanson
c5ac6433b0 feat: Zephyr SDK 0.13.2
See: https://github.com/zephyrproject-rtos/sdk-ng/releases/tag/v0.13.2
2022-02-22 01:15:50 -05:00
Peter Johanson
7b0494a339 fix: Increase docs timeout to ensure tests pass. 2021-10-26 23:47:03 -04:00
innovaker
5d9cfa5ab7 feat(dev-generic): add tio
For interfacing with serial i/o.

PR: zmkfirmware/zmk-docker#81
2021-06-17 20:32:18 +01:00
innovaker
d1f45823e4 feat: add test for arm-zephyr-eabi-gdb
PR: zmkfirmware/zmk-docker#83
2021-06-17 19:48:03 +01:00
innovaker
af6c5091aa feat: Zephyr 2.5.0
Based on:
https://docs.zephyrproject.org/2.5.0/getting_started/index.html
https://docs.zephyrproject.org/2.5.0/getting_started/installation_linux.html#install-requirements-and-dependencies
2021-06-14 20:56:05 +01:00
innovaker
540a2cee25 feat: Zephyr SDK 0.12.4
See: https://github.com/zephyrproject-rtos/sdk-ng/releases/tag/v0.12.4
PR: zmkfirmware/zmk-docker#77
2021-06-14 14:42:50 +01:00
innovaker
b1904e7b15 feat: Zephyr SDK 0.12.3
See: https://github.com/zephyrproject-rtos/sdk-ng/releases/tag/v0.12.3
PR: zmkfirmware/zmk-docker#77
2021-06-14 14:42:50 +01:00
innovaker
e32bd8599d feat: Zephyr SDK 0.12.2
See: https://github.com/zephyrproject-rtos/sdk-ng/releases/tag/v0.12.2
PR: zmkfirmware/zmk-docker#77
2021-06-14 14:42:50 +01:00
innovaker
4627c7e7c5 feat: Zephyr SDK 0.12.1
See: https://github.com/zephyrproject-rtos/sdk-ng/releases/tag/v0.12.1
PR: zmkfirmware/zmk-docker#77
2021-06-14 14:42:50 +01:00
innovaker
b8341e185a feat: Zephyr SDK 0.12.0
See: https://github.com/zephyrproject-rtos/sdk-ng/releases/tag/v0.12.0
PR: zmkfirmware/zmk-docker#77
2021-06-14 14:42:50 +01:00
innovaker
cdbb6eb708 feat: disable fail-fast for candidates jobs
Prevents a job failure from halting the other jobs.

PR: zmkfirmware/zmk-docker#45
2021-06-14 14:28:19 +01:00
innovaker
60596b949a feat: remove max-parallel for candidates jobs
`max-parallel: 1` is no longer necessary.

See: 27b9ac19f3
PR: zmkfirmware/zmk-docker#57
2021-06-14 11:35:25 +01:00
innovaker
eb804342e2 fix: add guard conditions for west build tests
The RAM report, ROM report and clean steps depend on the success of the board/shield build.

PR: zmkfirmware/zmk-docker#51
2021-06-14 10:38:14 +01:00
innovaker
df85393001 feat: add ignore-actions-cache secret
By default, a workflow re-run reuses the dev-generic GitHub Actions cache created by the previous attempt.  The `ignore-actions-cache` secret acts as a flag for ignoring the former cache.

PR: zmkfirmware/zmk-docker#76
2021-06-14 10:13:50 +01:00
innovaker
67075dfb7b refactor: always rebuild dev-generic
The `dev-generic` job was originally optimized to only build once per workflow run.  Subsequent re-runs skipped the build steps.  This unfortunately made it difficult to analyze dev-generic cache problems after merging.  This change removes this optimization.

The cache key has a timestamp suffix so that the cache is always built anew.  This provides more integrity, traceability and flexibility at the cost of increased cache turnover across the repository.

PR: zmkfirmware/zmk-docker#74
2021-06-14 10:01:26 +01:00
innovaker
406388461c refactor: move timestamp into dedicated job
Provides a unique timestamp across all jobs.

PR: zmkfirmware/zmk-docker#74
2021-06-14 10:01:26 +01:00
innovaker
f0b02aecfd refactor: change zmk-dev-generic-cache into zmk-dev-generic image
Makes it easier to inspect the layers/image.

PR: zmkfirmware/zmk-docker#73
2021-06-13 15:17:04 +01:00
innovaker
413a53ae13 feat: add no-cache secret
Acts as a flag to force the workflow to ignore the cache.
2021-06-13 14:01:01 +01:00
innovaker
434bd09f6e feat(dev): add socat
Required for piping serial over IP.

PR: zmkfirmware/zmk-docker#55
2021-06-13 10:30:53 +01:00
innovaker
fe276be4a9 feat(dev): add gdb
Required for local or remote debugging.

Closes: zmkfirmware/zmk-docker#7
PR: zmkfirmware/zmk-docker#54
2021-06-12 20:21:04 +01:00
innovaker
e656baa7da feat(dev): set PAGER=less
Requested by @mcrosson.

Closes: zmkfirmware/zmk-docker#1
PR: zmkfirmware/zmk-docker#52
2021-06-12 20:20:00 +01:00
innovaker
a01e40a640 feat(dev): add less
Requested by @mcrosson.

See: zmkfirmware/zmk-docker#1
PR: zmkfirmware/zmk-docker#52
2021-06-12 20:20:00 +01:00
innovaker
455347f20a feat: add python3 --version to tests
Makes it easy to check the `python` version against the Zephyr documentation.

PR: #72
2021-06-12 19:26:42 +01:00
innovaker
b5481baf02 refactor(common): move cmake --version from Dockerfile to tests
Makes it easier to check the `cmake` version against the Zephyr documentation, especially when the layer is already cached.

PR: #71
2021-06-12 19:23:29 +01:00
innovaker
bc822a193a feat: rewrite release system to support multiple images per commit
A critical limitation of the first design was the assumption that there would only be one Docker build per commit.  As such, software packages were often only refreshed when Zephyr was upgraded.

This new design opens the door to better CI practices.  It allows regular rebuilds of the Docker images irrespective of version control.  This is critical for incorporating the latest security fixes and bug patches as soon as possible.

Maintainers are still required to trigger stable releases (via tags), but this can be revisited in the future if further automation is necessary.

PR: #50
2021-06-12 18:56:05 +01:00
innovaker
69df2553ed refactor: replace latest tag
`latest` can be ambiguous and misunderstood.

See: #62
PR: #67
2021-06-12 16:35:28 +01:00
innovaker
56e01d70cb feat: schedule nightly rebuild at 02:00 UTC
Rebuilds the default branch from scratch every night.  This ensures that the latest security patches are available for testers.

PR: #66
2021-06-12 16:06:57 +01:00
innovaker
2a830a7633 feat: add no-cache support
`no-cache` rebuilds everything from scratch.  This is critical for integrating security patches and bug fixes as soon as possible.

PR: #65
2021-06-12 14:26:39 +01:00
innovaker
93b6eedd33 docs: add examples to tags
Illustrates the form of the tags.

PR: #68
2021-06-12 11:54:29 +01:00
innovaker
88620c678e feat: add cache-from major-minor-branch
Lets any branch utilize its corresponding major-minor-branch cache.

See: #62
PR: #68
2021-06-12 11:54:29 +01:00
innovaker
b551a568f5 feat: add cache-from upstream
Provides a quick start for new forks.

PR: #64
2021-06-10 10:42:27 +01:00
innovaker
f531452a17 feat: add cache-from dev-generic (GitHub Actions cache)
Pre-builds the dev-generic stage and provides it to all subsequent jobs.  This improves the integrity between the jobs within a particular workflow run, especially in the absence of registry credentials.  It also reduces the workflow run duration when building multiple architectures in parallel.

PR: #61
2021-06-09 19:59:33 +01:00