Commit Graph

5075 Commits

Author SHA1 Message Date
Thilo Fromm
82da911c27 ci-automation/sdk_bootstrap: Only push to main in nightlies
Signed-off-by: Thilo Fromm <thilo@kinvolk.io>
2022-02-24 11:02:34 +01:00
Thilo Fromm
39b65765b4 ci-automation: fix test_update_reruns typo
Signed-off-by: Thilo Fromm <thilo@kinvolk.io>
2022-02-24 10:11:38 +01:00
Thilo Fromm
7cadae957a ci-automation: SDK build updates version.txt in main branch
This change has sdk_bootstrap update the origin branch when run from the
main branch, updating the SDK and OS version in 'main' for each SDK
bootstrap build.

Release / maintenance branches have the SDK version set in the
versionfile at release time. But main is never updated.

Updating the versionfile in main when a new SDK is built ensures that
dev branches based on main will also use the correct SDK version (e.g.
in subsequent CI builds).
2022-02-23 20:41:57 +01:00
Thilo Fromm
248ffcef03 ci-automation/util/fetch_image.sh: fetch CI build stage image
Signed-off-by: Thilo Fromm <thilo@kinvolk.io>
2022-02-23 19:25:12 +01:00
Thilo Fromm
368aa61796
Merge pull request #234 from flatcar-linux/t-lo/container-tests-add-per-image-summary-report
ci-automation/test*: per-image summary report, honour pre-set PARALLEL_TESTS
2022-02-23 17:42:25 +01:00
Thilo Fromm
e92521c166 ci-automation/test*: per-image summary, honor parallel
Signed-off-by: Thilo Fromm <thilo@kinvolk.io>
2022-02-23 11:30:54 +01:00
Thilo Fromm
5ac2418679
Merge pull request #232 from flatcar-linux/t-lo/container-tests-publish-results
ci-automation: publish test results, add to GC
2022-02-23 10:23:40 +01:00
Thilo Fromm
3253435d6c ci-automation/test.sh: publish to _kola_tmp, not debug/_kola_tmp
Signed-off-by: Thilo Fromm <thilo@kinvolk.io>
2022-02-22 18:27:36 +01:00
Thilo Fromm
3397167b5e
Update ci-automation/test.sh: fix typo.
Co-authored-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
2022-02-22 18:13:15 +01:00
Mathieu Tortuyaux
e63a191c16
Merge pull request #222 from flatcar-linux/tormath1/timeout-em
kola/em: increase timeout
2022-02-22 18:04:31 +01:00
Thilo Fromm
8157bf0302 ci-automation: publish test results, add to GC
This change adds copying test results to the build cache server, and
adds respective deletion to the garbage collector.

Also, the patch fixes an issue with torcx publishing (manifest
publishing had arch hard-coded).

Signed-off-by: Thilo Fromm <thilo@kinvolk.io>
2022-02-22 16:22:57 +01:00
Thilo Fromm
db062b2e81
Merge pull request #230 from flatcar-linux/t-lo/add-sdk-container-image-update
update_sdk_container_image: New SDK container from existing image (minor / patch updates)
2022-02-22 15:45:36 +01:00
Thilo Fromm
ceba903d1b
Merge pull request #228 from flatcar-linux/t-lo/container-builds-add-testing
ci-automation: Add foundational testing primitives
2022-02-22 15:45:23 +01:00
Thilo Fromm
081df6cd2c ci-automtion/packages.sh: fix torcx URL, add manifest
Signed-off-by: Thilo Fromm <thilo@kinvolk.io>
2022-02-22 15:44:04 +01:00
Jeremi Piotrowski
f8efad73bf
Merge pull request #231 from flatcar-linux/jepio/build-image-disable-ebuild-locks
build_library/build_image_util: disable ebuild-locks when merging binary packages.
2022-02-22 13:52:46 +01:00
Jeremi Piotrowski
4cdacf5ae4 build_library/build_image_util: disable ebuild-locks when merging binary packages
Disable ebuild-locks for the emerge command that creates the image.
Ebuild-locks protect unsandboxed ebuild phases from running
concurrently, but also slow things down greatly when a lot of
concurrency would otherwise be possible. The image build phase merges a
big amount of binary packages, and I am not aware of us having any
phases that risk concurrently modifying shared files.

I have been testing this for the last months and have not seen any
failures. The time savings are significant: this cuts image build time
from 20m to 10m for me.

Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
2022-02-22 09:42:42 +00:00
Thilo Fromm
38d85729bf update_sdk_container_image: update SDK container image
This change introduces update_sdk_container_image, a script to generate
a new SDK container image based on an existing SDK container. The
script is meant to be used for minor / patch level SDK changes (like
test suite updates).

Signed-off-by: Thilo Fromm <thilo@kinvolk.io>
2022-02-21 20:06:30 +01:00
Thilo Fromm
4f39e0112f ci-automation/tests.sh: use http in torcx manifest
Use HTTP instead of https because Ignition does not recognise
letsencrypt certificates, leading to test breakage in
docker.torcx-manifest-pkgs.

Add a note in settings.env to explicitly call out HTTP requirement of
build cache server.

Signed-off-by: Thilo Fromm <thilo@kinvolk.io>
2022-02-21 17:23:53 +01:00
Thilo Fromm
0fa985b872 ci-automation/test.sh: stage torcx manifest
Signed-off-by: Thilo Fromm <thilo@kinvolk.io>
2022-02-21 16:30:30 +01:00
Thilo Fromm
1045fd5ac8 ci-automation/README.md: add docs for qemu test 2022-02-21 13:57:11 +01:00
Thilo Fromm
bee5ac7f74 ci-automation/tapfile: enforce foreign keys, simplify 2022-02-21 12:56:45 +01:00
Kai Lüke
ce43f1e001
Merge pull request #227 from flatcar-linux/kai/use-package-users
build_library: move package sysusers to /usr database
2022-02-18 18:16:12 +01:00
Kai Lueke
cc509e77d3 build_library: move package sysusers to /usr database
Package users nowadays get created through systemd-sysuser files.
Gentoo uses the acct-user|groups packages to allocate stable IDs for
these users. Since they get created at runtime, we have the problem
that they end up in /etc/passwd at boot time which would be fine if
they follow the acct-user allocations but it could also be that there
is a package that uses its own sysuser files, leading to dynamic ID
allocation which we can't control and may result in ugly user ID
mismatches that are hard to resolve again. Normally we intend to ship
all system users under /usr/share/baselayout/passwd so that /etc/passwd
is really left to the user's own entries.
Generate the /etc/passwd sysuser entries at image build time and move
these entries over to /usr/share/baselayout/passwd so that all
system users reside in this database. We should still ensure to have
acct-user packages for all system users or at least hardcoded user
IDs, therefore, add a check for that.
2022-02-18 16:57:42 +01:00
Thilo Fromm
cafa385164 ci-automation: publish torcx json and use in tests
This change updates the package build script to publish the torcx
manifest file to the build cache so it can be used by tests.
It also updates the generic test script to use the SDK container instead
of the packages container image, and to download and use the torcx
manifest from the build cache.

Signed-off-by: Thilo Fromm <thilo@kinvolk.io>
2022-02-18 15:52:47 +01:00
Thilo Fromm
a5b958fd07 ci-automation/test.sh: fix reruns, set retry to 20
Signed-off-by: Thilo Fromm <thilo@kinvolk.io>
2022-02-18 14:40:18 +01:00
Sayan Chowdhury
560122f49d
build_library/vm_image_util.sh: Pro image to use non-pro package & use flag 2022-02-17 19:42:05 +05:30
Thilo Fromm
95ef0b7322 ci-automation: git author and curl verboseness
- Git author configuration moves to tagging function and put under a
  condition so as to not pollute peoples' workspaces.
- curl now less verbose since it was spamming logs with TLS debug
  information.

Signed-off-by: Thilo Fromm <thilo@kinvolk.io>
2022-02-17 12:31:07 +01:00
Thilo Fromm
3a416fbf32 ci-automation testing: address PR review comments
- add cleanup script to test.sh
- remove wrapper function from qemu test

Signed-off-by: Thilo Fromm <thilo@kinvolk.io>
2022-02-17 12:30:36 +01:00
Dongsu Park
173554db7a
Merge pull request #229 from flatcar-linux/dongsu/glsa-20220216
build_library: update allow list for GLSA checks 2022-02-16
2022-02-17 11:12:26 +01:00
Thilo Fromm
6c76bfa1cd
ci-automation/tapfile_helper_lib.sh: add @pothos' retcode fix
Co-authored-by: Kai Lüke <pothos@users.noreply.github.com>
2022-02-17 10:45:10 +01:00
Dongsu Park
580a5c6852 build_library: update GLSA allowlist
201908-24: polkit 0.120-r2, so not affected
201909-01: perl 5.34.0, so not affected
202003-26: python 3.9.8, so not affected
202005-09: python 3.9.8, so not affected
202006-03: perl 5.34.0, so not affected
202008-01: python 3.9.8, so not affected
202101-18: python 3.9.8, so not affected
202104-04: python 3.9.8, so not affected
202105-34: bash 5.1_p8, so not affected
202107-31: polkit 0.120-r2, so not affected
202107-48: systemd 250.3, so not affected
2022-02-17 10:44:28 +01:00
Dongsu Park
a900d579c4 *: blacklist/whitelist to denylist/allowlist
Replace blacklist with denylist, and whitelist with allowlist.
Use proper vocabulary in all over the code.
2022-02-17 10:44:25 +01:00
Thilo Fromm
5bfe2f395c
Apply @pothos' suggestions from code review
Co-authored-by: Kai Lüke <pothos@users.noreply.github.com>
2022-02-17 10:29:05 +01:00
Thilo Fromm
f6f44e2ca8 ci-automation: first stab at adding testing
Signed-off-by: Thilo Fromm <thilo@kinvolk.io>
2022-02-16 19:59:45 +01:00
Kai Lüke
221351927e
Merge pull request #226 from flatcar-linux/kai/package-diff
jenkins/images: print out image diff report
2022-02-16 12:10:30 +01:00
Kai Lueke
b949428185 jenkins/images: print out image diff report
Often a change results in unexpected effects on the image, e.g., when
a wrong package version gets chosen or the package installs files under
/etc, or binaries of library dependencies get pulled in. Besides
inspecting the image manually, the package-diff tool also gives
valuable insights.
Run the package-diff tool in a comparison to the last release and print
the image URL alongside for convenience.
2022-02-16 10:12:48 +01:00
Mathieu Tortuyaux
6d0d7ea2ba
Merge pull request #224 from flatcar-linux/tormath1/https
jenkins/kola: use httpS URL for PXE boot
2022-02-11 15:09:15 +01:00
Dongsu Park
0cedf256f7
Merge pull request #223 from flatcar-linux/dongsu/jenkins-dev-container-branch
jenkins: do not check out branches of coreos-overlay and portage-stable
2022-02-10 17:02:29 +01:00
Sayan Chowdhury
9cc851bc78
Merge pull request #225 from flatcar-linux/sayan/update-sdk-3139.0.0
New major release: 3139.0.0
2022-02-09 21:38:47 +05:30
flatcar-ci
1049e54af8
New major release: 3139.0.0 2022-02-09 15:40:21 +05:30
Mathieu Tortuyaux
bd30be56ee
jenkins/kola: use httpS URL for PXE boot
Follow-up of:
* https://github.com/flatcar-linux/mantle/pull/288
* https://github.com/flatcar-linux/Flatcar/issues/527

Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
2022-02-09 10:46:42 +01:00
Jeremi Piotrowski
c9ddda260b
Merge pull request #221 from flatcar-linux/jepio/azure-fixed-vhd
build_library: vm_image_util: create fixed-size VHDs for Azure
2022-02-08 16:23:43 +01:00
Dongsu Park
39301b007f jenkins: do not check out branches of coreos-overlay and portage-stable
The default branch of both repos, coreos-overlay and portage-stable,
should be `main`. If we checkout `master` branch, which contains
invalid source code that was deprecated many years ago, the build could
sometimes fail, e.g. when trying to build perl 5.26.2 with gcc 10.

Simply delete the code checking out branches, as the part is already
being handled in emerge-gitclone.
2022-02-08 12:26:47 +01:00
Mathieu Tortuyaux
5c4ac96f69
kola/em: increase timeout
number of test increased. While we don't have yet a way to reduce
testing time, let's increase the timeout.

Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
2022-02-06 11:56:12 +01:00
Jeremi Piotrowski
323c1b28b1 changelog: Add entry for Azure VHD format change 2022-02-02 10:01:19 +01:00
Jeremi Piotrowski
07568fb418 build_library: vm_image_util: create fixed-size VHDs for Azure
Azure requires disks to be fixed-size VHD files when uploading to blob storage
in order to create image/gallery objects from them. This is documented here[1].
To prevent mistakes from happening create disks in that format directly so that
any azure compatible tool can upload them, though azcopy is recommend because
it handles their sparseness best.

This has not been an issue for us so far because kola uses code from an older
utility that transparently handled the dynamic-to-fixed-size conversion for VHD
files (azure-vhd-utils). But people working with these things for the first
time fall into this trap.

[1]: https://docs.microsoft.com/en-us/azure/virtual-machines/linux/create-upload-generic#resizing-vhds.

Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
2022-02-01 17:52:09 +00:00
Mathieu Tortuyaux
98d964d689
Merge pull request #220 from flatcar-linux/tormath1/em-metro
equinixmetal: use metro instead of facility
2022-01-26 16:27:09 +01:00
Mathieu Tortuyaux
373976b1eb
jenkins/kola/packet: use metro instead of facility
Follow up of: https://github.com/flatcar-linux/mantle/pull/281

Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
2022-01-26 15:49:30 +01:00
Mathieu Tortuyaux
7ddf2121a7
Merge pull request #219 from flatcar-linux/sayan/update-sdk-3127.0.0
New major release: 3127.0.0
2022-01-26 11:35:18 +01:00
flatcar-ci
153a347999
New major release: 3127.0.0 2022-01-26 14:11:59 +05:30