249 Commits

Author SHA1 Message Date
Dongsu Park
9597661ead .github: use personal access token for bot PRs
Use a dedicated personal access token BOT_PR_TOKEN for bot PRs instead
of the default GITHUB_TOKEN. It is needed for triggering another
workflow from pull requests created by Github Actions. The default
GITHUB_TOKEN is by design not able to trigger another workflow.

See also
https://docs.github.com/en/actions/using-workflows/triggering-a-workflow#triggering-a-workflow-from-a-workflow
2023-04-28 15:13:57 +02:00
Dongsu Park
bbc3ae71dd .github: get build and CI triggered by opened, synchronize
Build and CI tests should run automatically whenever a pull request is
opened, reopened or updated. On the other hand, it is not necessary to
run build and CI tests on the events ready_for_review and
review_requested.
2023-04-26 17:35:09 +02:00
Krzesimir Nowak
152b12e063
Merge pull request #716 from flatcar/krnowak/flatcar-calico
.github: Move workflow mirroring calico docker packages to mantle
2023-04-26 11:22:35 +02:00
Krzesimir Nowak
4352fc6323 .github: Fix changelog generation 2023-04-24 19:48:35 +02:00
Krzesimir Nowak
cc6724090e .github: Move mirroring workflows to mantle
These workflows were mostly for docker stuff used by kola tests in
mantle, so move and fix them there.
2023-04-19 18:23:05 +02:00
Krzesimir Nowak
380e6820f2 .github: Port vmware update action from old coreos-overlay 2023-04-17 17:25:29 +02:00
Krzesimir Nowak
165e99713b .github: Port rust update action from old coreos-overlay 2023-04-17 17:25:19 +02:00
Krzesimir Nowak
5aee2d4849 .github: Port runc update action from old coreos-overlay 2023-04-17 17:25:08 +02:00
Krzesimir Nowak
8c9e2b0abc Port mirror calico action from old coreos-overlay 2023-04-17 17:24:37 +02:00
Krzesimir Nowak
49cbb5d3dc .github: Port kernel update action from old coreos-overlay 2023-04-17 17:24:30 +02:00
Krzesimir Nowak
7029a3e97b .github: Port go update action from old coreos-overlay 2023-04-17 17:24:20 +02:00
Krzesimir Nowak
40bb5da43d .github: Port linux firmware update action from old coreos-overlay 2023-04-17 17:24:15 +02:00
Krzesimir Nowak
236edb133a .github: Port docker update action from old coreos-overlay 2023-04-17 17:24:09 +02:00
Krzesimir Nowak
2c5381ccc1 .github: Port containerd update action from old coreos-overlay 2023-04-17 17:24:03 +02:00
Krzesimir Nowak
b594f36900 .github: Port cacert update action from old coreos-overlay 2023-04-17 17:23:53 +02:00
Krzesimir Nowak
b6fc418fe5 .github: Port common update action code from old coreos-overlay 2023-04-17 17:23:44 +02:00
Krzesimir Nowak
adbd4a48f4 .github: Port update GLSA metadata action from old portage-stable 2023-04-17 17:23:38 +02:00
Krzesimir Nowak
066bc2e7b1 .github: Port update packages action from old portage-stable 2023-04-17 17:23:28 +02:00
Thilo Fromm
401af830d1 scripts, CI, workflows: remove submodule handling (main) 2023-04-13 12:26:36 +02:00
Thilo Fromm
ce2bf9bb75 run-kola-tests.yaml: fix path of PR comment file
Signed-off-by: Thilo Fromm <thilofromm@microsoft.com>
2023-03-31 10:04:48 +02:00
Thilo Fromm
f8bf7fa4c7 run-kola-tests.yaml: test report merge job
Signed-off-by: Thilo Fromm <thilofromm@microsoft.com>
2023-03-30 13:07:52 +02:00
Thilo Fromm
f07cb5f781 tapfile_helper ff.: support TAP and Markdown output
This change adds markdown output support to tapfile helper.
tap_generate_report() has been refactored to use low-level output
functions to write tests; TAP and markdown output is supported and both
are generated by default. Also, it should be straightforward to add
other output formats by implementing the respective low level print
functions.

The markdown output is now used by run-kola-tests.yaml to generate step
output and, if run from a PR, add a comment with test results to the PR.

Signed-off-by: Thilo Fromm <thilofromm@microsoft.com>
2023-03-29 21:05:47 +02:00
Thilo Fromm
ab2000e3e4 run-kola-tests.yaml: fix test-summary TAP formatting
Signed-off-by: Thilo Fromm <thilofromm@microsoft.com>
2023-03-28 21:09:11 +02:00
Thilo Fromm
ae760903a3 run-kola-tests: improve test results archive globs
Signed-off-by: Thilo Fromm <thilofromm@microsoft.com>
2023-03-28 16:22:28 +02:00
Thilo Fromm
3653c9a8e5 [ci,run-kola-tests].yaml: use HEAD commit ref for PR builds
Signed-off-by: Thilo Fromm <thilofromm@microsoft.com>
2023-03-28 16:22:14 +02:00
Thilo Fromm
43bbabec4b ci.yaml: extract + upload build logs also on failure
Signed-off-by: Thilo Fromm <thilofromm@microsoft.com>
2023-03-28 10:02:17 +02:00
Thilo Fromm
6f97e85590 dispatch-kola-tests.yaml: Elaborated comments on inputs 2023-03-28 10:02:17 +02:00
Thilo Fromm
54c61a046b ci.yaml: run only when ready and / or review requested 2023-03-28 10:02:17 +02:00
Thilo Fromm
27d540692f run-kola-tests.yaml: use new artifacts, local web server
This change updates the github actions kola test runner workflow to use
the new, separated artifacts produced by ci.yaml.

Further, it adds a fix for the devcontainer tests. Devcontainer and bin
packages used in the devcontainer tests are now served from a local
temporary web server.

The change also adds the qemu_update test and provides the respective
update payload.

Lastly, the tests now use a local torcx_manifest.json produced by
ci.yaml, which points to a torcx tarball also served by the local
temporary web server.
2023-03-28 10:02:17 +02:00
Thilo Fromm
28b26c87c1 ci.yaml: re-use build container, finer grained artifact upload
This change removes "docker commit" at the end of each step and instead
makes build steps re-use the build container, saving some build time.

It also makes artifact upload more granular, so build logs, images, and
dev container can be downloaded individually.

Lastly, it exports torcx tarball and binary packages as a separate
artifact each, for successive re-use in the kola tests.
2023-03-28 10:02:17 +02:00
Kai Lueke
38b0fe946b Make mantle ref bump action more robust
The curl call to download the current version.txt file failed, causing
branch to be "flatcar-" which later lets the git checkout fail. This
was hidden somewhere in the logs of successful steps.
To directly stop execution, use saner settings for curl and bash.
2023-03-27 12:54:47 +09:00
Kai Lueke
d53d415ef8 Run kola without --qemu-skip-mangle on Jenkins
For the GitHub CI we have to use --qemu-skip-mangle because the LXC
containers don't have access to loop devices. Running with
--qemu-skip-mangle means that the serial console does not get captured
completely because systemd and dracut messages are missing, and thus we
don't catch these errors in kola.
Make the skipping conditional and use it in Jenkins at least for the
nightlies and releases.
2023-03-24 22:17:13 +09:00
Krzesimir Nowak
f865792916 .github: Fix mantle update action
The variable is actually lowercase. Not sure how I ended up having
uppercase variant of it.
2022-11-18 14:36:42 +01:00
Krzesimir Nowak
de9d464635 .github: Modernize mantle update action
This is to avoid warnings about deprecated node 12 actions and
deprecated save-state and set-output commands.
2022-11-09 12:56:13 +01:00
Krzesimir Nowak
65d21af086 .github: Use lts-info
We can use lts-info to optionally update mantle container in old LTS
branch too.
2022-09-27 13:02:27 +02:00
Krzesimir Nowak
527d174b50
.github: Fix syntax error 2022-09-26 15:14:35 +02:00
Krzesimir Nowak
3ebbbd01cb .github: Update mantle in old LTS too 2022-09-26 14:23:47 +02:00
Kai Lueke
91a26e5e1e Use new github org name "flatcar"
The "flatcar-linux" github org was renamed to "flatcar". There are no
github redirections in place and we have to update all links.
2022-09-14 14:33:27 +02:00
Kai Lueke
71510fb117 .github: Specify remote when checking out c-o/p-s ref in workflow
When the specified remote contains a same-named branch as origin,
the checkout fails with "fatal: 'X' matched multiple (Y) remote
tracking branches".
Add the remote name as prefix to make the reference unambiguous.
2022-07-18 20:12:06 +02:00
Kai Lueke
58927811b1 .github: Use lxc containers for amd64 kola tests, too
While we moved the arm64 tests to lxc containers, amd64 stayed on VMs
which were not easy to scale up.
Now the GitHub Action runner is running on lxc containers and we can
spawn more VMs in parallel because it has no memory limit.
2022-07-15 12:19:16 +02:00
Gabriel Adrian Samfira
340fd39a9f
Update kola test workflow
* arm64 tests now run in LXD containers instead of VMs
  * parallelism increased for arm64
  * some setup steps are skipped on arm64

Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2022-07-13 14:20:12 +03:00
Gabriel Adrian Samfira
6eabd91a04
Remove customizations for now
Remove arch and parallel options. Hardcode them for now.
2022-07-12 02:48:42 +03:00
Gabriel Adrian Samfira
879e5a2b30
Make the kola test workflow reusable
* Adds a reusable workflow that can run tests
  * Adapts the ci.yaml to use reusable workflow
  * Creates a new workflow that helps trigger tests using an arbitrary
    workflow run.

Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2022-07-11 16:23:35 +03:00
Mathieu Tortuyaux
f9b13baeb5
.github/ci: add kola qemu test
this initial attempt runs right after the "packages" jobs and downloads
the resulting artifacts.

The QEMU image is unzipped then the kola test is running using the
ci-automation scripts.

Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
2022-07-07 10:01:49 +02:00
Gabriel Adrian Samfira
59e7b31778
Add concurency setting to CI workflow
This change will prompt the CI workflow to cancel a currently running
job, if a new push is sent in a PR. This should prevent duplicate jobs
running for the same PR simultaneously.

Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2022-07-04 21:18:31 +03:00
Kai Lueke
37253cd499 .github: Run CI workflow only for PR events
Building for the branch push event causes two builds per PR and is not
needed anyway (we have nightly builds for the main branch).
Only consider PR events to trigger the CI build.
2022-06-28 11:19:13 +02:00
Gabriel Adrian Samfira
6e03ea1821 Add CI workflow 2022-06-24 15:35:23 +00:00
Kai Lueke
bc0e2b521a .github: Update LTS mantle reference
The new LTS release will use the mantle container image.
Add automation to keep it up to date.
2022-05-04 14:33:31 +09:00
Kai Lueke
da0380c7e8 Run CI container pipeline kola tests with the new mantle image
The SDK container does not exist for arm64 and is quite heavy. We
currently also resort to a unconditional rebuilding of mantle inside
the SDK.
Use the new mantle container image to run kola tests, and pin its
version through a text file that gets updated by GitHub Actions.
2022-04-20 19:13:02 +09:00