mirror of
https://github.com/containers/podman.git
synced 2025-10-18 11:42:55 +08:00

With (esp. Debian) CI VM images built by https://github.com/containers/automation_images/ pull/338 CI no-longer tests with runc nor cgroups v1. Add logic to fail under these conditions. Prune back high-level YAML/script envars and logic formerly required to support these things. Signed-off-by: Chris Evich <cevich@redhat.com>
85 lines
2.6 KiB
Bash
Executable File
85 lines
2.6 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -e
|
|
|
|
# shellcheck source=contrib/cirrus/lib.sh
|
|
source $(dirname $0)/lib.sh
|
|
|
|
req_env_vars CIRRUS_WORKING_DIR OS_RELEASE_ID
|
|
|
|
# Assume there are other log collection commands to follow - Don't
|
|
# let one break another that may be useful, but also keep any
|
|
# actual script-problems fatal so they are noticed right away.
|
|
showrun() {
|
|
echo '+ '$(printf " %q" "$@")
|
|
set +e
|
|
echo '------------------------------------------------------------'
|
|
"$@"
|
|
local status=$?
|
|
[[ $status -eq 0 ]] || \
|
|
echo "[ rc = $status -- proceeding anyway ]"
|
|
echo '------------------------------------------------------------'
|
|
set -e
|
|
}
|
|
|
|
case $1 in
|
|
audit)
|
|
case $OS_RELEASE_ID in
|
|
debian) showrun cat /var/log/kern.log ;;
|
|
fedora) showrun cat /var/log/audit/audit.log ;;
|
|
*) bad_os_id_ver ;;
|
|
esac
|
|
;;
|
|
df) showrun df -lhTx tmpfs ;;
|
|
journal) showrun journalctl -b ;;
|
|
podman) showrun ./bin/podman system info ;;
|
|
packages)
|
|
# These names are common to Fedora and Debian
|
|
PKG_NAMES=(\
|
|
aardvark-dns
|
|
buildah
|
|
conmon
|
|
containernetworking-plugins
|
|
criu
|
|
crun
|
|
golang
|
|
netavark
|
|
passt
|
|
podman
|
|
skopeo
|
|
slirp4netns
|
|
)
|
|
case $OS_RELEASE_ID in
|
|
fedora)
|
|
cat /etc/fedora-release
|
|
PKG_LST_CMD='rpm -q --qf=%{N}-%{V}-%{R}-%{ARCH}\n'
|
|
PKG_NAMES+=(\
|
|
container-selinux
|
|
containers-common
|
|
libseccomp
|
|
)
|
|
;;
|
|
debian)
|
|
cat /etc/issue
|
|
PKG_LST_CMD='dpkg-query --show --showformat=${Package}-${Version}-${Architecture}\n'
|
|
PKG_NAMES+=(\
|
|
golang-github-containers-common
|
|
golang-github-containers-image
|
|
libseccomp2
|
|
)
|
|
;;
|
|
*) bad_os_id_ver ;;
|
|
esac
|
|
echo "Kernel: " $(uname -r)
|
|
echo "Cgroups: " $(stat -f -c %T /sys/fs/cgroup)
|
|
# Any not-present packages will be listed as such
|
|
$PKG_LST_CMD "${PKG_NAMES[@]}" | sort -u
|
|
;;
|
|
time)
|
|
# Assumed to be empty/undefined outside of Cirrus-CI (.cirrus.yml)
|
|
# shellcheck disable=SC2154
|
|
if [[ -r "$STATS_LOGFILE" ]]; then cat "$STATS_LOGFILE"; fi
|
|
;;
|
|
*) die "Warning, $(basename $0) doesn't know how to handle the parameter '$1'"
|
|
esac
|