mirror of
https://github.com/containers/podman.git
synced 2025-06-20 00:51:16 +08:00
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>
This commit is contained in:
33
.cirrus.yml
33
.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
|
||||
|
Reference in New Issue
Block a user