aboutsummaryrefslogtreecommitdiff
path: root/.cirrus.yml
diff options
context:
space:
mode:
authorChris Evich <cevich@redhat.com>2020-11-04 09:33:14 -0500
committerChris Evich <cevich@redhat.com>2020-11-04 09:37:35 -0500
commit55a1aecc741391335795ff46283bb08a20710b2e (patch)
tree0708a244771b43a591f8d0862a9a6f1f7755ac87 /.cirrus.yml
parentf37d1d2175445a3c8d2a5eb25748c274433083b0 (diff)
downloadpodman-55a1aecc741391335795ff46283bb08a20710b2e.tar.gz
podman-55a1aecc741391335795ff46283bb08a20710b2e.tar.bz2
podman-55a1aecc741391335795ff46283bb08a20710b2e.zip
Cirrus: Simplify artifact collection
On several occasions, fatal task failures were observed during the upload of artifacts after a otherwise successful testing. Prior to this commit, most tasks were storing both logs and binary artifacts. Avoid possible major inconveniences of upload failures, by only collecting binary artifacts when necessary. Signed-off-by: Chris Evich <cevich@redhat.com>
Diffstat (limited to '.cirrus.yml')
-rw-r--r--.cirrus.yml33
1 files changed, 15 insertions, 18 deletions
diff --git a/.cirrus.yml b/.cirrus.yml
index b75e99184..306ca58c5 100644
--- a/.cirrus.yml
+++ b/.cirrus.yml
@@ -189,17 +189,13 @@ build_task:
clone_script: &noop mkdir -p $CIRRUS_WORKING_DIR
setup_script: *setup
main_script: *main
- always: &artifacts
+ always: &binary_artifacts
gosrc_artifacts:
path: ./* # Grab everything in top-level $GOSRC
type: application/octet-stream
binary_artifacts:
path: ./bin/*
type: application/octet-stream
- # Required for `contrib/cirrus/logformatter` to work properly
- html_artifacts:
- path: ./*.html
- type: text/html
# Confirm the result of building on at least one platform appears sane.
@@ -228,7 +224,6 @@ validate_task:
clone_script: *noop
setup_script: *setup
main_script: *main
- always: *artifacts
# Exercise the "libpod" API with a small set of common
@@ -248,7 +243,6 @@ bindings_task:
clone_script: *noop # Comes from cache
setup_script: *setup
main_script: *main
- always: *artifacts
# Build the "libpod" API documentation `swagger.yaml` for eventual
@@ -267,7 +261,7 @@ swagger_task:
clone_script: *full_clone # build-cache not available to container tasks
setup_script: *setup
main_script: *main
- always: *artifacts
+ always: *binary_artifacts
endpoint_task:
@@ -285,7 +279,6 @@ endpoint_task:
clone_script: *full_clone # build-cache not available to container tasks
setup_script: *setup
main_script: *main
- always: *artifacts
# Check that all included go modules from other sources match
@@ -304,7 +297,6 @@ vendor_task:
clone_script: *full_clone # build-cache not available to container tasks
setup_script: *setup
main_script: *main
- always: *artifacts
# There are several other important variations of podman which
@@ -335,7 +327,8 @@ alt_build_task:
ALT_NAME: 'Build varlink-binaries'
setup_script: *setup
main_script: *main
- always: *artifacts
+ always: *binary_artifacts
+
# Confirm building a statically-linked binary is successful
static_alt_build_task:
@@ -364,7 +357,7 @@ static_alt_build_task:
fingerprint_script: cat nix/*
setup_script: *setup
main_script: *main
- always: *artifacts
+ always: *binary_artifacts
# Confirm building the remote client, natively on a Mac OS-X VM.
@@ -385,7 +378,7 @@ osx_alt_build_task:
- brew install go-md2man
- make podman-remote-darwin
- make install-podman-remote-darwin-docs
- always: *artifacts
+ always: *binary_artifacts
# This task is a stub: In the future it will be used to verify
@@ -405,7 +398,6 @@ docker-py_test_task:
clone_script: *noop # Comes from cache
setup_script: *setup
main_script: *main
- always: *artifacts
# Does exactly what it says, execute the podman unit-tests on all primary
@@ -424,7 +416,6 @@ unit_test_task:
gopath_cache: *ro_gopath_cache
setup_script: *setup
main_script: *main
- always: *artifacts
apiv2_test_task:
@@ -441,7 +432,10 @@ apiv2_test_task:
setup_script: *setup
main_script: *main
always: &logs_artifacts
- <<: *artifacts
+ # Required for `contrib/cirrus/logformatter` to work properly
+ html_artifacts:
+ path: ./*.html
+ type: text/html
package_versions_script: '$SCRIPT_BASE/logcollector.sh packages'
ginkgo_node_logs_script: '$SCRIPT_BASE/logcollector.sh ginkgo'
df_script: '$SCRIPT_BASE/logcollector.sh df'
@@ -515,6 +509,7 @@ container_integration_test_task:
main_script: *main
always: *logs_artifacts
+
# Execute most integration tests as a regular (non-root) user.
rootless_integration_test_task:
name: *std_name_fmt
@@ -584,6 +579,7 @@ rootless_system_test_task:
main_script: *main
always: *logs_artifacts
+
# This task is critical. It updates the "last-used by" timestamp stored
# in metadata for all VM images. This mechanism functions in tandem with
# an out-of-band pruning operation to remove disused VM images.
@@ -665,7 +661,8 @@ release_task:
clone_script: *noop # Comes from cache
setup_script: *setup
main_script: *main
- always: *artifacts
+ always: *binary_artifacts
+
# When preparing to release a new version, this task may be manually
# activated at the PR stage to verify the code is in a proper state.
@@ -686,4 +683,4 @@ release_test_task:
clone_script: *noop # Comes from cache
setup_script: *setup
main_script: *main
- always: *artifacts
+ always: *binary_artifacts