Commit Graph
58 Commits
Author SHA1 Message Date
Joachim Wiberg a2bc3bef61 .github: reduce number of caches required by CI builds
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2024-02-27 10:08:20 +01:00
Joachim Wiberg 5038cd47e5 .github: proposed pull request template/checklist
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2024-02-25 19:49:27 +01:00
Joachim Wiberg a6a480cbf9 .github: add missing $ in variables
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2024-02-02 10:15:13 +01:00
Joachim Wiberg f4f62e1c02 .github: fix syntax error in workflows, missing 'with:' for params
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2024-02-02 09:08:44 +01:00
Joachim Wiberg cd521ca789 .github: only run Coverity Scan for KernelKit org.
The Infix scan token we have is only valid for KernelKit, so for any
downstream forks we must not attempt to run this workflow.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2024-02-02 08:53:02 +01:00
Mattias Walström 8e0caed530 Bump github actions version 2024-02-01 13:20:57 +01:00
Mattias Walström 2240be50c5 Revert "Bump github actions version"
This reverts commit 3155a99cab.
2024-01-31 16:56:37 +01:00
Mattias Walström 3155a99cab Bump github actions version 2024-01-31 14:27:57 +01:00
Mattias Walström 0d31f501e1 Run coverity check each day 2024-01-31 14:27:57 +01:00
Richard AlpeandMattias Walström 2661225aeb test: break out unit test and run early in GH actions
Break out unit tests to separate make target as they don't require all
the built code and infrastructure that the normal tests does.

Run the unit tests early in the Github action stage. They don't
require a full build. This will give early feedback to the users.

Signed-off-by: Richard Alpe <richard@bit42.se>
2023-12-05 10:02:51 +01:00
Joachim Wiberg 14be582578 .github: ensure the leading 'v' in version is retained
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-11-30 08:02:39 +01:00
Joachim Wiberg 481638a343 .github: check for true second level heading as release separator
[skip ci]

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-11-28 14:16:49 +01:00
Joachim Wiberg 2caf729ee8 github: enable building local src in host mode for analysis
Install libyang and sysrepo from source, too old packages in ubuntu-latest.

[skip ci]

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-11-17 18:04:18 +01:00
Joachim Wiberg c867c8bd15 .github: initial workflow for Coverity Scan
[skip ci]

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-11-16 10:06:23 +01:00
Joachim Wiberg 40ac1595e5 .github: revert b4d7609, does not work as intended
The idea was to change regression tests to opt-in, but it does not work
as intended for our core devs, so revert.

If you do *not* want the workflow(s) to run on your fork, you can
disable them with the [...] button on the right-hand side, beside the
"Filter workflow runs" text entry, in the Actions view of your fork.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-11-06 10:04:03 +01:00
Joachim Wiberg 85a1bfc999 .github: add support for manually starting a release build
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-10-31 11:29:36 +01:00
Richard AlpeandJoachim Wiberg 4471c45d3c .github: use defconfig instead of minimal_defconfig
The issues seen in the regression tests looks related to files
missing from minimal defconfig.

Fixes #127.

Signed-off-by: Richard Alpe <richard@bit42.se>
2023-10-17 18:18:19 +02:00
Joachim Wiberg 9292231674 .github: switch to ncipollo/release-action for latest build
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-10-17 18:08:07 +02:00
Joachim Wiberg b4d760906f .github: disable actions by default [skip ci]
Enable actions by setting local variables in your fork of Infix.

Fix #170

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-10-17 13:26:26 +02:00
Joachim Wiberg 6583b1e451 .github: simplify Bob's workflow and don't move latest tag [skip ci]
We only want Bob to run when PR's have been merged to main, this means
when something is pushed to main.  (Took a while to figure this one out
actually.)  See the following community discussion for details:

https://github.com/orgs/community/discussions/26724#discussioncomment-3253102

Also, we've seen that moving the 'latest' tag messes up any push/pull/sync
operation between clones and forks, so let's skip it and see how that works.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-10-03 13:39:56 +02:00
Richard AlpeandJoachim Wiberg 7ee49e60a5 .github: use gh result file in separate run cmd
Use the new fancy result-gh.md file which as github emojis. Also,
split result publishing to its own run command to simplify the YAML
file.

Signed-off-by: Richard Alpe <richard@bit42.se>
2023-10-02 11:22:47 +02:00
Joachim Wiberg 784c175ba3 .github: disable force push in sync
Branch protection rules on forks may cause this action to fail. [skip ci]

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-09-26 06:51:10 +02:00
Joachim Wiberg 0d311cc94f test: set 9pm LOG_PATH to create GitHub action summary from last log
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-09-25 17:58:09 +02:00
Joachim Wiberg 0506b0f364 .github: attempt to fix sync job [skip ci]
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-09-25 14:57:28 +02:00
Joachim Wiberg 525716e88e Revert ".github: fix sync action pat naming"
This reverts commit ce95488420.
2023-09-21 19:47:56 +02:00
Richard AlpeandJoachim Wiberg 2830080c0f .github: checkout submodules in regression.yml
It doesn't look like the regression suites updates the 9pm submodule,
in this commit we attempt to fix this.

Signed-off-by: Richard Alpe <richard@bit42.se>
2023-09-19 11:57:08 +02:00
Joachim Wiberg ce95488420 .github: fix sync action pat naming
GITHUB_ prefix is reserved.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-09-05 07:40:17 +02:00
Joachim Wiberg c592818587 .github: fix missing release notes from release
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-08-31 17:57:00 +02:00
Joachim WibergandTobias Waldekranz 3f3de71a38 Fix #107: auto-sync forks every day 2:42 UTC or on dispatch
Highly experimental.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-08-22 13:33:19 +02:00
Joachim WibergandTobias Waldekranz 920a4481b1 .github: simplify contribution guidelines slightly
Also, the file MAINTAINERS has been removed previously.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-08-17 08:28:33 +02:00
Joachim WibergandTobias Waldekranz 64a6df7b71 .github: add support resource/contact for when reporting issues
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-08-17 08:28:33 +02:00
Joachim WibergandTobias Waldekranz b1720f7f77 Relocate from top level
No need to clutter up the root directory of the project.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-08-17 08:28:33 +02:00
Joachim WibergandRichard Alpe ff8cd981e1 .github: simplify expression guards
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-07-04 09:35:47 +02:00
Joachim WibergandRichard Alpe f8666ddeb2 .github: possible fix of Bob's upload
Use same if: syntax for release/upload job as for build job.  Only thing
the upload job needs to ensure is that it does not try to upload built
artifacts from forks or from non-main builds.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-07-03 13:51:30 +02:00
Joachim WibergandRichard Alpe c8c0350859 .github: fix markdown link to doc/MAINTAINERS
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-07-03 13:51:30 +02:00
Joachim Wiberg a8271d878d .github: Introducing the Infix Release General
Similar to the standard build workflow, with the following exceptions:

 - Sets internal variable 'ver' to ${GITHUB_REF#refs/tags/v}, for filenames
   and directories, ensuring the leading 'v' in the tag is dropped
 - Sets INFIX_RELEASE variable, for post-image.sh, to '$ver' so it creates
   the .img files with the same name as the tarball and directory. (RELEASE
   clashes with OpenSSL's release handling, breaking builds completely.)
 - Sets release directory + tarball to infix-$variant-$ver, where variant
   is one of "classic" or "" (for NETCONF).
 - *Skips the tests*, for now.  We release from main, which should already
   be tested.  Future releases may run a release test suite here
 - Each build step (matrix) uploads its artifacts, when all build steps
   have completed we start the release job (depends on build), which then
   downloads all the various artifacts before creating the GitHub release
 - The release notes are derived from the file ChangeLog.md.  Please note,
   extraction of the first release notes will fail since there is no prior
   release marker in the file

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-06-22 23:16:33 +02:00
Joachim WibergandTobias Waldekranz 4d122eb49b .github: prevent multiple reggies from running from the same branch
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-06-20 11:11:52 +02:00
Joachim WibergandTobias Waldekranz 09055f64ea .github: start bob on push to main
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-06-20 11:11:52 +02:00
Joachim WibergandTobias Waldekranz c4f16e788d .github: upload resulting Infix image(s) even if tests fail
Add support for uploading resulting image(s) from a job even though the
tests may have failed.   This way we can inspect the image and see what
went wrong, or if it was a glitch in the matrix^W^Wazure.

Retain a symlink to images/ for test step.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-06-20 11:11:52 +02:00
Tobias WaldekranzandJoachim Wiberg 175f7e1c58 x86_64: Make the test environment more customizable
- Collect all test related targets under the test- prefix.

- Add target to run test suite against a `make run` instance. The
  intended use-case is that you are testing out a new build with `make
  run`, and then realize that you want to run some tests.  With this
  change, it is now possible to run `make infix-run-check` from a
  separate terminal - which attaches to the running instance and runs
  the tests.

- Provide -sh targets to spawn interactive environments, which is
  useful during debugging.

- Allow the user to supply a custom suite or list of tests to be run
  by 9PM.
2023-06-14 17:40:16 +02:00
Joachim Wiberg 6c9735a783 .github: shorten job title
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-06-09 11:54:23 +02:00
Joachim Wiberg 4582b3446c .github: drop this job from regular branches and run after merge
We want Reggie to take most of the hits, then we sail in and build after
the PR has been merged so we can upload new "Nightly" images.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-06-09 11:54:23 +02:00
Joachim Wiberg 72c5e18f5c .github: add dedicated regression job for all actions and branches
- Keep build times low, use minimal defconfig and a single arch
 - Focus on the regression testing
 - Allow running on all branches for all users

Goal: when tests pass, reviews can start, if review is good, then merge

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-06-09 11:54:23 +02:00
Tobias WaldekranzandJoachim Wiberg d28b17bdef .github: Run the test suite as part of the CI on x86_64-netconf 2023-06-08 11:10:31 +02:00
Joachim WibergandGitHub 4ad676bb4e .github: also run when PR is merged
https://stackoverflow.com/a/61565445/1708249
2023-05-30 09:00:59 +02:00
Joachim Wiberg d69109305c .github: store symlinks as files
For each build there is an infix-$ARCH-$VARIANT.img -> rootfs.squash
that we want to be a real file when extracting it.  This to ease the
integration with testing frameworks like Qeneth.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-04-29 12:18:38 +02:00
Joachim WibergandTobias Waldekranz ff7faada00 .github: fix .ccache caching
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-04-27 09:59:35 +02:00
Joachim WibergandTobias Waldekranz f515d8e737 .github: update to bild all platform::variant defconfigs
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-04-27 09:59:35 +02:00
Joachim WibergandTobias Waldekranz 5d7e6bd693 Rename amd64 -> x86_64 and native -> classic
A long standing internal debate comes to its logical conclusion.  Arch
naming should follow GCC.  The "native /etc" has also found a better
name: classic!

README and GitHub action has been updated accordingly.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-04-27 09:59:35 +02:00
Joachim WibergandTobias Waldekranz e9757ac3ef .github: run action on approved PR or if started manually
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-04-13 11:12:09 +02:00