Commit Graph

98 Commits

Author SHA1 Message Date
Chris Evich 1c80ba415a
Cirrus: Updates for master->main rename
Signed-off-by: Chris Evich <cevich@redhat.com>
2021-06-23 11:52:06 -04:00
Nalin Dahyabhai d95c6be83b Add and use a "copy" helper instead of podman load/save
Instead of using podman to cache images during integration tests, use a
custom helper.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2021-05-26 09:49:28 -04:00
Chris Evich ce772b7aa0
Cirrus: Support [CI:DOCS] test skipping
Signed-off-by: Chris Evich <cevich@redhat.com>
2021-05-11 14:19:09 -04:00
Chris Evich 7d8f4f1515
Cirrus: Update F34beta -> F34
Signed-off-by: Chris Evich <cevich@redhat.com>
2021-04-29 11:36:19 -04:00
Chris Evich 174cf8963f
Cirrus: Update Ubuntu images to 21.04
Also simplify `lib.sh` after supporting changes incorporated
into automation library 2.x+ (present in all VM and container
images).

* No need to force-load `/etc/profile` and handle it's expectation
  to **not** being in `errexit` mode.
* Slightly re-arrange loading of automation library files for
  clarity.
* Remove dependency on updating `/etc/environment` for GPG.
* Remove redundant showrun() function (now present in automation
  library)
* Update comments.

Signed-off-by: Chris Evich <cevich@redhat.com>
2021-04-26 14:15:12 -04:00
Chris Evich 2c4634cef8
Cirrus: Update VMs w/ F34beta
Also add/use variable for NIX container image to reduce duplication.

Signed-off-by: Chris Evich <cevich@redhat.com>
2021-04-09 13:46:18 -04:00
Nalin Dahyabhai dfe404f3de CLI add/copy: add a --from option
Add a --from option to `buildah add` and `buildah copy`, mirroring the
option for the Dockerfile instruction.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2021-04-08 13:21:26 -04:00
OpenShift Merge Robot 2dff5e0db4
Merge pull request #3109 from cevich/new_get_ci_vm.sh
Cirrus: Make use of shared get_ci_vm container
2021-04-05 22:39:59 +02:00
Chris Evich d46d84e0db
Cirrus: Make use of shared get_ci_vm container
Depends on:
    https://github.com/containers/automation_images/pull/57
    https://github.com/containers/automation/pull/64
    https://github.com/containers/automation/pull/66
    https://github.com/containers/automation/pull/67
    https://github.com/containers/automation/pull/68

Signed-off-by: Chris Evich <cevich@redhat.com>
2021-04-05 13:19:57 -04:00
Nalin Dahyabhai 222e72aa75 Put a few more minutes on the clock for the CI conformance test
Up the timeout for conformance tests by 5 minutes.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2021-04-01 15:29:38 -04:00
Nalin Dahyabhai ba11a4ceeb imagebuildah: use overlay for volumes when using overlay
When we're using the overlay driver (which means we know overlay is
available), use it to make volumes appear to be writeable during RUN
instructions instead of saving/restoring their contents.

This avoids having to copy the contents of the volume directory before
each RUN instruction, and having to remove and extract the contents
after each RUN instruction, which should be faster, particularly if the
amount of content in that volume location is large.

For empty directories, it will at least avoid adding an "opaque"
notation for the directory in a layer that might otherwise be empty.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2021-03-05 15:57:55 -05:00
Chris Evich 47625a9bd4
Cirrus: Temp. disable prior-fedora (F32) testing
In anticipation of F34beta support, preemptively disable testing on
"prior-Fedora". This will allow development to move forward without
a soon-to-be-EOL distro. holding anything back.

Signed-off-by: Chris Evich <cevich@redhat.com>
2021-02-22 14:21:45 -05:00
Chris Evich 998f98efe3
Cirrus: Native OSX Build
These changes execute the cross-compile build naively on an OSX VM to
more thoroughly verify multi-platform support (other than on Linux). In
other words, it better confirms that any Linux-only changes do not leak
into non-Linux environments.  This change also enables greatly
simplifying automation scripts, as there is no longer any need to
support/check the `$CROSS_TARGET` variable.

Signed-off-by: Chris Evich <cevich@redhat.com>
2021-01-21 09:41:19 -05:00
Chris Evich 5672097146
Cirrus: Make tests pass with new VM Images
Also, utilize the common library functions from containers/automation.
This library is now pre-installed into the VM images. There are some
minor API differences to a few frequently used functions.  Otherwise
the behaviors are largely identical.

Signed-off-by: Chris Evich <cevich@redhat.com>
2021-01-12 16:26:43 -05:00
Chris Evich d67dcf7c7d
Cirrus: Update VM Images + Rearrange tasks
Utilize VM Images produced from the containers/automation_images repo.
Also, rearrange tasks to more closely match their runtime dependency
order.

Signed-off-by: Chris Evich <cevich@redhat.com>
2021-01-12 16:26:42 -05:00
Chris Evich 120edb6ac6
Cirrus: Clarify task names / improve readability
This change mirrors a similar change made in early 2020 for the
containers/podman repository.  Primarily, it alters the appearance of
the task names in the Github WebUI to be more readable by humans.
Also, the former "gate" task is renamed to "smoke".  This prevents
confusion with downstream Fedora/RHEL post-packaging testing which
is(also referred to as the "gate" tests.

Finally, task-dependencies are altered to support a cleaner flow which
will be implemented in a future commit.

Signed-off-by: Chris Evich <cevich@redhat.com>
2021-01-12 16:26:42 -05:00
Chris Evich 69d4542b7e
Cirrus: Track libseccomp and golang version
The versions of these packages on Fedora/Ubuntu are important/relevant
for testing, make them easy to observe.

Signed-off-by: Chris Evich <cevich@redhat.com>
2021-01-05 12:00:13 -05:00
Daniel J Walsh 9f26633557
Turn off PRIOR_UBUNTU Test until vm is updated
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-12-16 06:01:48 -05:00
Nalin Dahyabhai c5f58e5f08 CI: require that conformance tests pass
With imagebuilder v1.1.8, our conformance tests should start passing, so
we don't need to tolerate any failures in them going forward.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2020-10-14 17:53:48 -04:00
Nalin Dahyabhai e83c7c383b CI: run gating tasks with a lot more memory
Try running the gating test with a lot more memory (12Gb, just shy of
the maximum of 13 allowed for our default 2 vcpu configuration, instead
of the default of 4Gb that we use elsewhere).  We're seeing the linting
process getting killed frequently without any additional explanation,
and our current best guess is that it's the OOM killer.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2020-10-09 12:48:37 -04:00
Chris Evich a556d380e7
Cirrus: Remove bors artifacts
Remove several artifacts necessary for bors functionality. Since bors
was removed/disabled, these items are no-longer necessary.

Signed-off-by: Chris Evich <cevich@redhat.com>
2020-10-02 16:07:46 -04:00
Chris Evich 7a1f8a7876
Cirrus: Skip git-validate on branches
Signed-off-by: Chris Evich <cevich@redhat.com>
2020-09-17 10:49:30 -04:00
Wong Hoi Sing Edison f37a7e8f22
Update nix pin with `make nixpkgs`
Also backport changes from https://github.com/cri-o/cri-o/pull/4065/files#diff-1d37e48f9ceff6d8030570cd36286a61R189-R197

Signed-off-by: Wong Hoi Sing Edison <hswong3i@gmail.com>
2020-09-16 07:31:32 +08:00
Nalin Dahyabhai 1799dfc47e CI: expand cross-compile checks
Expand the list of OS/arch combinations we check when we're checking if
we can successfully be cross-compiled, and fix up a couple of places
that wouldn't pass otherwise.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2020-09-03 14:35:32 -04:00
Wong Hoi Sing Edison 265082d8b6
Update nix pin with `make nixpkgs`
Signed-off-by: Wong Hoi Sing Edison <hswong3i@gmail.com>
2020-08-22 09:28:39 +08:00
bors[bot] e21b54d994
Merge #2529
2529: Cirrus: Use newly built VM images r=rhatdan a=cevich

#### What type of PR is this?

/kind other

#### What this PR does / why we need it:

These new images include golang `1.13` on Ubuntu 19 and 20.

#### How to verify it

CI tests will all pass

#### Which issue(s) this PR fixes:

Fixes https://github.com/containers/buildah/pull/2527#issuecomment-671338261

#### Special notes for your reviewer:

Let me know if help is needed confirming this fixes the problem.

#### Does this PR introduce a user-facing change?

```release-note
None
```



Co-authored-by: Chris Evich <cevich@redhat.com>
2020-08-10 16:49:21 +00:00
Chris Evich e42259320d
Cirrus: Use newly built VM images
Specifically for buildah, these images include golang `1.13`
on Ubuntu 19 and 20.

Signed-off-by: Chris Evich <cevich@redhat.com>
2020-08-10 11:55:00 -04:00
Wong Hoi Sing Edison b033ec32e4
Build static binary with `buildGoModule`
Signed-off-by: Wong Hoi Sing Edison <hswong3i@gmail.com>
2020-07-30 08:06:43 +08:00
Nalin Dahyabhai 92e0c3fdcf Rework conformance testing
Move the conformance tests from ginkgo to using the default testing
package and github.com/stretchr/testify/require, preserving the existing
tests and adding more.

Add conformance tests to our Cirrus configuration, currently marked as
an allowed failure.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2020-07-23 15:30:58 -04:00
Nalin Dahyabhai e6e6042334 test-unit: increase the test timeout to 40/45 minutes
Increase the timeout we give for unit tests from the default (10
minutes) to 40 minutes for the tests, 45 minutes for the test job, since
they're timing out in CI.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2020-07-20 23:33:43 -04:00
Daniel J Walsh a3f9c3c652
switch containers/libpod to containers/podman
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-07-13 17:21:55 -04:00
dependabot-preview[bot] 9fb931ca7a
Bump github.com/containers/common from 0.14.0 to 0.15.2
Bumps [github.com/containers/common](https://github.com/containers/common) from 0.14.0 to 0.15.2.
- [Release notes](https://github.com/containers/common/releases)
- [Commits](https://github.com/containers/common/compare/v0.14.0...v0.15.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-07-08 05:23:48 -04:00
Wong Hoi Sing Edison 3a122aa3c8
Add nix derivation for static builds
Signed-off-by: Wong Hoi Sing Edison <hswong3i@gmail.com>
2020-06-18 19:19:21 +08:00
Chris Evich 278fb818c4
Cirrus: Use pre-installed VM packages + F32
All packages required for building + testing buildah are now included in
VM images shared withthe libpod project's CI system.  Remove former
`setup.sh` and `lib.sh` facilities for installing/updating packages.
Also add in a new function for removing the pre-installed buildah
package files (since we run and test from source).  This mirrors
the same behavior used in libpod's CI setup.

Signed-off-by: Chris Evich <cevich@redhat.com>
2020-04-30 13:26:09 -04:00
Chris Evich d638cc8418
Cirrus: Re-enable all distro versions
Signed-off-by: Chris Evich <cevich@redhat.com>
2020-04-30 10:09:50 -04:00
Chris Evich 2e050a184e
Cirrus: Update to F31 + Use cache images
Signed-off-by: Chris Evich <cevich@redhat.com>
2020-04-30 10:09:50 -04:00
Chris Evich 83960a0a60
Cirrus: Temporarily disable Ubuntu 19 testing
Due to some unknown problem with package repositories, all ubuntu 19
testing is failing.  This commit temporarily disables that part of the
matrix until a fix can be discovered and implemented.

Signed-off-by: Chris Evich <cevich@redhat.com>
2020-04-17 11:37:40 -04:00
Chris Evich 6aebe8c0f6
Cirrus+Bors: Simplify temp branch skipping
Signed-off-by: Chris Evich <cevich@redhat.com>
2020-02-07 14:43:30 -05:00
Chris Evich 3de05a9c1a
Cirrus: Disable F29 testing
Release is no longer supported.

Signed-off-by: Chris Evich <cevich@redhat.com>
2020-02-06 16:22:45 -05:00
Chris Evich 61b6ebe61a
Bors: Workaround ineffective required statuses
For whatever reason, Bors-ng has trouble interpreting multiple
status-checks as being required when their names contain wild-
cards (like `testing%`).  Instead, it will simply pick one
that happens to match the name, and fail to consider all others.
Until that issue can be debugged and fixed, use a single "success"
task  to represent pass/fail status of all required checks.

Signed-off-by: Chris Evich <cevich@redhat.com>
2020-02-06 16:22:44 -05:00
Chris Evich 9411e927cd
Bors: Enable app + Disable Travis
Add initial support for Bors-ng replacement for Homu providing "ever
green" merges of PRs.  Ref: https://bors.tech/

Note: Bors-ng cannot deal with tasks marked 'skipped' by Cirrus-CI when
testing or attempting a merge. All tasks must always run on all except
temporary branches.  The only significant marker for a required-for-merge
task are the status/pr-status name match strings in `bors.toml`.

Signed-off-by: Chris Evich <cevich@redhat.com>
2020-02-06 16:22:44 -05:00
Chris Evich a72daebf51
Cirrus: Add standardized log-collection
Signed-off-by: Chris Evich <cevich@redhat.com>
2020-02-06 16:22:44 -05:00
Chris Evich 4ece9c447a
Cirrus: Fixes from review feedback
Signed-off-by: Chris Evich <cevich@redhat.com>
2020-02-06 16:21:43 -05:00
Chris Evich 057d5bf704
Cirrus: Temporarily ignore VM testing failures
Signed-off-by: Chris Evich <cevich@redhat.com>
2020-02-06 16:21:43 -05:00
Chris Evich 90868620d4
Cirrus: Migrate off papr + implement VM testing
Signed-off-by: Chris Evich <cevich@redhat.com>
2020-02-06 16:21:43 -05:00
Daniel J Walsh 751f92ed13 Add support for make vendor-in-container
Certain versions of go have different vendoring capabilities.
We want to make sure that vendoring the the vendor checker are
running with the same version of golang.  We do this by using
podman to run a container of the lates golang container image.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>

Closes: #1949
Approved by: TomSweeneyRedHat
2019-10-29 13:26:24 +00:00
Chris Evich 4ecb129f89
Cirrus: Update VM images
These were produced as an intended byproduct of:
https://github.com/containers/libpod/pull/3754

Where 'systemd_banish.sh' was run during base-image production.
Therefor, during run-time there should no longer be interference
of testing by background/periodic processes.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-08-09 11:05:14 -04:00
Chris Evich 0b84b23e2e Cirrus: Initial implementation
Based on containers/storage

Signed-off-by: Chris Evich <cevich@redhat.com>

Closes: #1644
Approved by: rhatdan
2019-06-15 14:01:31 +00:00