Commit Graph

98 Commits

Author SHA1 Message Date
Chris Evich 80287fbc2b Cross-build on Fedora
Executing a golang cross-compile on an expensive resource such as a Mac
has questionable overall value.  Switch to running on a default Fedora
VM instead.

Signed-off-by: Chris Evich <cevich@redhat.com>
2024-06-07 15:13:32 +00:00
Chris Evich 7ac39be0c5
Recover release-branch CI
Unfortunately maintenance CI was not enabled on this branch, resulting
in the CI VM images being pruned and irrecoverably purged.  Restore
CI by substituting similar images.  These images aren't a perfect match,
but they are already marked for permanent retention.

Signed-off-by: Chris Evich <cevich@redhat.com>
2024-03-25 14:30:40 -04:00
Nalin Dahyabhai 5151ccff51 .cirrus.yml: run tests relative to the release-1.32 branch
Tell Cirrus to use `release-1.32` as a baseline instead of `main`.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2023-09-14 15:48:12 -04:00
Chris Evich 9545744e8b
Cirrus: Remove multi-arch buildah image builds
These jobs have been failing since early August due to
technical/scripting problems.  Disable/remove entirely since a fix is
unlikely to be implemented anytime soon.

Ref: Abandoned recent attempt at debugging
https://github.com/containers/podman/pull/19720

Signed-off-by: Chris Evich <cevich@redhat.com>
2023-09-13 14:17:25 -04:00
renovate[bot] 4c4ff3128c
chore(deps): update dependency containers/automation_images to v20230816
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-08-22 12:56:52 +00:00
renovate[bot] 2d6e43071e
chore(deps): update dependency containers/automation_images to v20230809
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-08-12 03:08:32 +00:00
renovate[bot] 204c5a1cec
chore(deps): update dependency containers/automation_images to v20230807
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-08-10 00:13:12 +00:00
Daniel J Walsh 135b5a8f03
Fix transition test to work with latest selinux policy
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2023-06-29 14:21:17 -04:00
Chris Evich 4b1c5e3a94
Cirrus: Fix meta task failing to find commit
During the nightly cirrus-cron job on main, this error occured:

```
Using built-in Git...
Limiting clone depth to 1!
Cloning refs/heads/main...
Enumerating objects: 9246, done.
...cut...
Compressing objects: 100% (7182/7182), done.
Total 9246 (delta 1519), reused 6078 (delta 1101), pack-reused 0
HEAD is at f35369055d.
Hard resetting to 3908816d5310ac1f7bcd4399d23d75c1da0c2678...
Failed to force reset to 3908816d5310ac1f7bcd4399d23d75c1da0c2678:
object not found!
```

However, the repository code isn't needed or used for the meta task.
Fix this by running `/bin/true` as the `clone_script`.

Signed-off-by: Chris Evich <cevich@redhat.com>
2023-05-03 16:30:10 -04:00
Aditya R 5621727519
makefile: increase conformance timeout
increase conformance timeout from `30min` -> `60min`.

[NO NEW TESTS NEEDED]

Signed-off-by: Aditya R <arajan@redhat.com>
2023-04-26 23:01:12 +05:30
renovate[bot] 9bd6ccf921
chore(deps): update dependency containers/automation_images to v20230405
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2023-04-06 15:26:13 +00:00
renovate[bot] a92fe130e3
chore(deps): update dependency containers/automation_images to v20230330
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2023-03-30 22:48:29 +00:00
renovate[bot] 20861cd21c
chore(deps): update dependency containers/automation_images to v20230320
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2023-03-30 10:41:19 +00:00
Miloslav Trmač c0f0efada2 Update to Go 1.18
It is already required in practice, see
> grep 'func .*]('

This also renders the -compat=1.17 option to (go mod tidy)
unnecessary, so drop it.

Signed-off-by: Miloslav Trmač <mitr@redhat.com>
2023-03-17 21:02:59 +01:00
renovate[bot] 4055cc8803
chore(deps): update dependency containers/automation_images to v20230314
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2023-03-16 16:17:43 +00:00
Chris Evich bc2423ebcb
Cirrus: Replace Ubuntu -> Debian SID
Signed-off-by: Chris Evich <cevich@redhat.com>
2023-03-14 17:18:34 -04:00
Daniel J Walsh 21e6e91e4a
Vendor in latest containers/common
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2023-02-22 11:18:07 -05:00
Chris Evich 1950ab687e
Fix multi-arch manifest-list build timeouts
As of this commit, the build script runs the process on x86_64 hardware
(4cpus/8gig) using emulation for foreign architectures.  Due to various
delays, inefficiencies, and other emulation-related slowdowns, it's
possible for dnf to timeout and/or mis-measure a minimum repository
download rate.  Bump up the minimum download rate by 10x and timeout
interval by double.  This should allow the builds to complete more
consistently.

Signed-off-by: Chris Evich <cevich@redhat.com>
2023-01-13 15:11:26 -05:00
Chris Evich d106e425a3
Cirrus: Update VM Images
Of special note: These images use a down-rev kernel which is not subject
to https://bugzilla.redhat.com/show_bug.cgi?id=2159066

Signed-off-by: Chris Evich <cevich@redhat.com>
2023-01-13 10:47:24 -05:00
Chris Evich 57a77073af
Update to F37 CI VM Images, re-enable prior-fedora
Signed-off-by: Chris Evich <cevich@redhat.com>
2022-12-09 14:34:59 -05:00
Ashley Cui 498b45770f [CI:BUILD] Cirrus: Migrate OSX task to M1
Migrate our OSX build to a M1 instance, since Cirrus is sunsetting Intel-based macOS instances.

Signed-off-by: Ashley Cui <acui@redhat.com>
2022-11-22 11:02:32 -05:00
Chris Evich e1c7a5df10 Cirrus CI add flavor parameter
Updates from Chris Evich for CI build script support.

Signed-off-by: Andrew Meadows <andrew@befuddled.ca>
2022-10-07 13:37:19 -07:00
Lokesh Mandvekar 514ff3dc1c
Cirrus: use image with fewer downloaded dependencies
The latest cirrus image bump will use fewer downloaded dependencies in
favor of installation from copr / distro repos.

Signed-off-by: Lokesh Mandvekar <lsm5@fedoraproject.org>
2022-08-26 15:31:33 -04:00
Chris Evich a47dee2c8e
Cirrus: Use the latest imgts container
Contains important updates re: preserving release-branch CI VM images.
Ref: https://github.com/containers/automation_images/pull/157

Signed-off-by: Chris Evich <cevich@redhat.com>
2022-07-26 14:05:44 -04:00
Chris Evich 6841f92e90
Cirrus: Update VM images w/ updated bats
Note: Fedora-35 is disabled due to missing golang 1.18

Ref: https://github.com/containers/automation_images/pull/140
     and
     https://github.com/containers/automation_images/pull/149
     and
     https://github.com/containers/automation_images/pull/146

Signed-off-by: Chris Evich <cevich@redhat.com>
2022-07-21 09:49:29 -04:00
Chris Evich 36d95b0503
Cirrus: Ensure the build-push VM image is labeled
Recently the container image build jobs have been failing with the
cirrus error:

```
Failed to start: INVALID_ARGUMENT: Operation with name
"operation-1657739085511-5e3b475527b8f-779ec7ef-41f9804e" failed with
status = HttpJsonStatusCode{statusCode=INVALID_ARGUMENT} and message =
BAD REQUEST
```

I was able to track this down to an obsolete
`build-push-c6193881921355776` image.  Fortunately I was able to
un-obsolete the VM image.  Update the time-stamping meta_task to include
this image to prevent this problem in the future.

Signed-off-by: Chris Evich <cevich@redhat.com>
2022-07-13 15:08:56 -04:00
Chris Evich cf6b1bcfba
Docs: Update multi-arch buildah images readme
Contents updated to more closely resemble the same docs in the podman
repository.  Also, remove the `centos7` compatibility section (and
build context) given it's not been built or maintained in over two
years.

Signed-off-by: Chris Evich <cevich@redhat.com>
2022-06-17 11:18:43 -04:00
Chris Evich 0a1d828dad
Cirrus: Migrate multiarch build off github actions
The github actions workflow for this operation is complex and difficult
to maintain.  For several months now a replacement has been running well
in the podman repository.  It's scripts/components are centralized,
versioned, unit, and integration tested.  Add cirrus tasks to run the
build, and another task to allow test builds in a PR.

This also adds support for a new magic CI string: `[CI:BUILD]`.
With this string in the PR title, automation will only do basic build
verification, and enable testing of the multi-arch build process.

Otherwise, many tasks were updated to not be created when running the
cirrus-cron multi-arch image builds, since this would simply be a waste
of time and invitation for flakes.

Signed-off-by: Chris Evich <cevich@redhat.com>
2022-06-17 11:18:43 -04:00
Daniel J Walsh 9042b86b2d
Vendor in latest github.com/sirupsen/logrus
[NO NEW TESTS NEEDED]

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-06-09 16:02:43 -04:00
Chris Evich 4cf93e3edc
Fix use generic/ambiguous DEBUG name
The use of the generic 'DEBUG' name in varialbes or flags can be very
problematic and lead to difficult to troubleshoot problems.  Update CI
VM images to those including updated automation library that uses the
`$A_DEBUG` env. var. instaed.  Also update other repository files which
make use of the generic form.

Signed-off-by: Chris Evich <cevich@redhat.com>
2022-06-02 11:44:38 -04:00
Lokesh Mandvekar 1a79fbede1
Cirrus: use Ubuntu 22.04 LTS
Signed-off-by: Lokesh Mandvekar <lsm5@fedoraproject.org>
2022-05-27 10:54:04 -04:00
Chris Evich cc5e80f6de
Cirrus: Update CI VMs to F36
Signed-off-by: Chris Evich <cevich@redhat.com>
2022-04-28 10:37:33 -04:00
Aditya R 5eccef1482
cirrus: add seperate task and matrix for rootless
Split rootless testing into its own cirrus task and do not merge it with
existing rootless tests.

Signed-off-by: Aditya R <arajan@redhat.com>
2022-03-08 15:08:12 +05:30
Aditya R 165e984b50
buildah: test rootless integration
Add cirrus boiler plate for rootless testing infrastructure.
Following commit introduces only neccassary foundation and skeleton
which will be used by rootless testing of buildah.

[NO NEW TESTS NEEDED]

Signed-off-by: Aditya R <arajan@redhat.com>
2022-03-08 14:57:43 +05:30
Chris Evich 7311154441
Cirrus: Use updated VM images
Mainly this is to confirm some changes needed for the podman-py CI
setup don't disrupt operations here. Ref:

https://github.com/containers/automation_images/pull/111

Signed-off-by: Chris Evich <cevich@redhat.com>
2022-02-08 14:21:10 -05:00
Ed Santiago 1c684933e0 Enable git-daemon tests
...by bumping up the CI VM ID to ones that include the
git-daemon (Fedora) or git-daemon-run (Ubuntu) packages.

Reason: #3701 rewrote some tests to work around github
closing 'git://' protocol access... but those new tests
were simply being skipped.

Reference: https://github.com/containers/podman/issues/12851

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-01-13 15:04:33 -07:00
OpenShift Merge Robot 60880a74e0
Merge pull request #3706 from cevich/freshen
Cirrus: Freshen VM images
2022-01-13 00:52:17 +01:00
Chris Evich 8195db90c1
Cirrus: Re-order tasks for more parallelism
Execute all tasks in three dependent, parallel groups

1. Meta + smoke + vendor + cross
2. Unit + int. + containerized-int. + conformance
3. Success

Signed-off-by: Chris Evich <cevich@redhat.com>
2022-01-12 11:42:59 -05:00
Chris Evich 0e6980fb65
Cirrus: Freshen VM images
Signed-off-by: Chris Evich <cevich@redhat.com>
2022-01-12 11:26:47 -05:00
Chris Evich ad8c2c3694
Cirrus: Run int. tests in parallel with unit
This is somewhat of a band-aid since these two tasks take 45+ minutes
each.  Running them in parallel improves the overall runtime when
tests are otherwise/generally passing.  If/when unit tests fail, the
status won't update until integration tasks complete, but the failure
will be immediately observable in a PR.  So it's a minor price to pay
for improved runtime in the general case.

Signed-off-by: Chris Evich <cevich@redhat.com>
2022-01-10 14:45:49 -05:00
Aditya Rajan 8de75fd901
.cirrus: remove static_build from ci
Remove `static_build` from ci as it is becoming hard to keep up with
`nix` hiccups in CI.

------
Before Deciding to remove static_build from CI we tried things below :
Things decided below worked but in order to keep maintaince simple
consensus was made to remove static_build. Read more here:
https://github.com/containers/buildah/pull/3679

It seems nixos/nix:latest expects nixbld user to be added and specified in
build-users-group but this should be only needed for multi-user
mode.

Hence I suspect latest push has a regression. Lock the nix to last working
image.

[NO NEW TESTS NEEDED]

Signed-off-by: Aditya Rajan <arajan@redhat.com>
2021-12-16 14:50:02 +05:30
Chris Evich 0b3e75a23c
Cirrus: Bump up to Fedora 35 & Ubuntu 21.10
The Fedora 35 cloud images have switched to UEFI boot with a GPT
partition. Formerly, all Fedora images included support for runtime
re-partitioning. However, the requirement to test alternate storage
has since been dropped/removed.  Rather than maintain a disused
feature, and supporting scripts, these Fedora VM images have reverted
to the default: Automatically resize to 100% on boot.

Signed-off-by: Chris Evich <cevich@redhat.com>
2021-11-18 14:07:50 -05:00
Chris Evich 1156cf0759
Update VM Images + Drop prior-ubuntu testing
These images contain a workaround for:
     https://github.com/containers/podman/issues/11123

Ref: https://github.com/containers/podman/issues/11070
     https://github.com/containers/automation_images/pull/88

Signed-off-by: Chris Evich <cevich@redhat.com>
2021-09-15 14:28:53 -04:00
Nalin Dahyabhai 9560ff5b42 .cirrus.yml: run cross_build_task on Big Sur
Update which version of Mac OS X we use for running the cross-compile
check in CI from Catalina (10.15) to Big Sur (11).

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2021-09-09 15:21:16 -04:00
Chris Evich 1880cd847f
Cirrus: Increase unit-test timeout
Observed a unit-test typical runtime is around 45m, so a 50m timeout is
cutting things closely given variability in networking and shared vCPU
performance.  Increase the timeout to 1-hour to provide an additional
buffer.

Signed-off-by: Chris Evich <cevich@redhat.com>
2021-09-09 09:28:39 -04:00
TomSweeneyRedHat 11356996ca Bump go for vendor-in-container from 1.13 to 1.16
While vendoring c/storage v1.34.0 I was having issues
with io/fs not being able to be vendored via calls in the
latest BurntSushi.  Fortunately I remembered a change to
the Skopeo Makefile that @vrothberg had made recently and
viola, that fixed it.

Also per @nalind's review, I've bumped Go from 1.13 to 1.6 in the
.cirrus.yml file.

[NO NEW TESTS NEEDED]

Signed-off-by: TomSweeneyRedHat <tsweeney@redhat.com>
2021-08-12 15:48:44 -04:00
Ed Santiago 5cdbcfc020
Proposed patch for 3399 (shadowutils)
Signed-off-by: Ed Santiago <santiago@redhat.com>
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2021-07-27 13:34:48 -04:00
Chris Evich adc60f201d
Cirrus: Freshen VM images
Signed-off-by: Chris Evich <cevich@redhat.com>
2021-07-12 11:32:31 -04:00
Chris Evich 248471ce24
Cirrus: Drop dependence on fedora-minimal
This image is no-longer maintained and unnecessarily large for
essentially a "no-op" task.  Use alpine instead, which is likely
cached from heavy use anyway, and don't even bother running
commands through a shell.

Signed-off-by: Chris Evich <cevich@redhat.com>
2021-07-01 15:27:12 -04:00
Chris Evich eff2bd2cd1
Cirrus: Install docker from package cache
Installing packages at runtime (from an external source) is problematic
for many reasons.  Specifically in the case of buildah/docker
conformance testing, it means the current "latest" pacakges are
always installed.  This is a problem as new release branches are
created, because it presents an opportunity for test-environment changes
to happen after buildah/test code is stabilized.

Fix this by using new/special VM images which cache the required docker
packages.  At runtime then, the required packages may be installed from
this cache instead of reaching out to the repository.  Since images used
by tests on release branches never change, this will also serve to
stabilize the package versions for that specific environment.

Signed-off-by: Chris Evich <cevich@redhat.com>
2021-06-29 11:01:27 -04:00