mirror of
https://github.com/containers/podman.git
synced 2025-06-24 19:42:56 +08:00
Merge pull request #11795 from cevich/update_to_f35
Cirrus: Bump Fedora to release 35
This commit is contained in:
48
.cirrus.yml
48
.cirrus.yml
@ -24,12 +24,12 @@ env:
|
||||
####
|
||||
#### Cache-image names to test with (double-quotes around names are critical)
|
||||
####
|
||||
FEDORA_NAME: "fedora-34"
|
||||
PRIOR_FEDORA_NAME: "fedora-33"
|
||||
FEDORA_NAME: "fedora-35"
|
||||
PRIOR_FEDORA_NAME: "fedora-34"
|
||||
UBUNTU_NAME: "ubuntu-2110"
|
||||
|
||||
# Google-cloud VM Images
|
||||
IMAGE_SUFFIX: "c4955591916388352"
|
||||
IMAGE_SUFFIX: "c6226133906620416"
|
||||
FEDORA_CACHE_IMAGE_NAME: "fedora-${IMAGE_SUFFIX}"
|
||||
PRIOR_FEDORA_CACHE_IMAGE_NAME: "prior-fedora-${IMAGE_SUFFIX}"
|
||||
UBUNTU_CACHE_IMAGE_NAME: "ubuntu-${IMAGE_SUFFIX}"
|
||||
@ -148,11 +148,11 @@ build_task:
|
||||
CTR_FQIN: ${FEDORA_CONTAINER_FQIN}
|
||||
# ID for re-use of build output
|
||||
_BUILD_CACHE_HANDLE: ${FEDORA_NAME}-build-${CIRRUS_BUILD_ID}
|
||||
# - env: &priorfedora_envvars
|
||||
# DISTRO_NV: ${PRIOR_FEDORA_NAME}
|
||||
# VM_IMAGE_NAME: ${PRIOR_FEDORA_CACHE_IMAGE_NAME}
|
||||
# CTR_FQIN: ${PRIOR_FEDORA_CONTAINER_FQIN}
|
||||
# _BUILD_CACHE_HANDLE: ${PRIOR_FEDORA_NAME}-build-${CIRRUS_BUILD_ID}
|
||||
- env: &priorfedora_envvars
|
||||
DISTRO_NV: ${PRIOR_FEDORA_NAME}
|
||||
VM_IMAGE_NAME: ${PRIOR_FEDORA_CACHE_IMAGE_NAME}
|
||||
CTR_FQIN: ${PRIOR_FEDORA_CONTAINER_FQIN}
|
||||
_BUILD_CACHE_HANDLE: ${PRIOR_FEDORA_NAME}-build-${CIRRUS_BUILD_ID}
|
||||
- env: &ubuntu_envvars
|
||||
DISTRO_NV: ${UBUNTU_NAME}
|
||||
VM_IMAGE_NAME: ${UBUNTU_CACHE_IMAGE_NAME}
|
||||
@ -230,12 +230,18 @@ bindings_task:
|
||||
clone_script: *noop # Comes from cache
|
||||
setup_script: *setup
|
||||
main_script: *main
|
||||
always: &html_artifacts
|
||||
always: &logs_artifacts
|
||||
<<: *runner_stats
|
||||
# Required for `contrib/cirrus/logformatter` to work properly
|
||||
html_artifacts:
|
||||
path: ./*.html
|
||||
type: text/html
|
||||
package_versions_script: '$SCRIPT_BASE/logcollector.sh packages'
|
||||
df_script: '$SCRIPT_BASE/logcollector.sh df'
|
||||
audit_log_script: '$SCRIPT_BASE/logcollector.sh audit'
|
||||
journal_script: '$SCRIPT_BASE/logcollector.sh journal'
|
||||
podman_system_info_script: '$SCRIPT_BASE/logcollector.sh podman'
|
||||
time_script: '$SCRIPT_BASE/logcollector.sh time'
|
||||
|
||||
|
||||
# Build the "libpod" API documentation `swagger.yaml` and
|
||||
@ -402,7 +408,7 @@ unit_test_task:
|
||||
- validate
|
||||
matrix:
|
||||
- env: *stdenvars
|
||||
#- env: *priorfedora_envvars
|
||||
- env: *priorfedora_envvars
|
||||
- env: *ubuntu_envvars
|
||||
# Special-case: Rootless on latest Fedora (standard) VM
|
||||
- name: "Rootless unit on $DISTRO_NV"
|
||||
@ -416,7 +422,7 @@ unit_test_task:
|
||||
gopath_cache: *ro_gopath_cache
|
||||
setup_script: *setup
|
||||
main_script: *main
|
||||
always: *runner_stats
|
||||
always: *logs_artifacts
|
||||
|
||||
|
||||
apiv2_test_task:
|
||||
@ -437,14 +443,8 @@ apiv2_test_task:
|
||||
gopath_cache: *ro_gopath_cache
|
||||
setup_script: *setup
|
||||
main_script: *main
|
||||
always: &logs_artifacts
|
||||
<<: *html_artifacts
|
||||
package_versions_script: '$SCRIPT_BASE/logcollector.sh packages'
|
||||
df_script: '$SCRIPT_BASE/logcollector.sh df'
|
||||
audit_log_script: '$SCRIPT_BASE/logcollector.sh audit'
|
||||
journal_script: '$SCRIPT_BASE/logcollector.sh journal'
|
||||
podman_system_info_script: '$SCRIPT_BASE/logcollector.sh podman'
|
||||
time_script: '$SCRIPT_BASE/logcollector.sh time'
|
||||
always: *logs_artifacts
|
||||
|
||||
|
||||
compose_test_task:
|
||||
name: "compose test on $DISTRO_NV ($PRIV_NAME)"
|
||||
@ -522,11 +522,11 @@ container_integration_test_task:
|
||||
_BUILD_CACHE_HANDLE: ${FEDORA_NAME}-build-${CIRRUS_BUILD_ID}
|
||||
VM_IMAGE_NAME: ${FEDORA_CACHE_IMAGE_NAME}
|
||||
CTR_FQIN: ${FEDORA_CONTAINER_FQIN}
|
||||
# - env:
|
||||
# DISTRO_NV: ${PRIOR_FEDORA_NAME}
|
||||
# _BUILD_CACHE_HANDLE: ${PRIOR_FEDORA_NAME}-build-${CIRRUS_BUILD_ID}
|
||||
# VM_IMAGE_NAME: ${PRIOR_FEDORA_CACHE_IMAGE_NAME}
|
||||
# CTR_FQIN: ${PRIOR_FEDORA_CONTAINER_FQIN}
|
||||
- env:
|
||||
DISTRO_NV: ${PRIOR_FEDORA_NAME}
|
||||
_BUILD_CACHE_HANDLE: ${PRIOR_FEDORA_NAME}-build-${CIRRUS_BUILD_ID}
|
||||
VM_IMAGE_NAME: ${PRIOR_FEDORA_CACHE_IMAGE_NAME}
|
||||
CTR_FQIN: ${PRIOR_FEDORA_CONTAINER_FQIN}
|
||||
gce_instance: *standardvm
|
||||
timeout_in: 90m
|
||||
env:
|
||||
|
2
Makefile
2
Makefile
@ -893,7 +893,7 @@ uninstall:
|
||||
.PHONY: clean-binaries
|
||||
clean-binaries: ## Remove platform/architecture specific binary files
|
||||
rm -rf \
|
||||
bin \
|
||||
bin
|
||||
|
||||
.PHONY: clean
|
||||
clean: clean-binaries ## Clean all make artifacts
|
||||
|
@ -1,63 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# N/B: This script could mega f*!@up your disks if run by mistake.
|
||||
# it is left without the execute-bit on purpose!
|
||||
|
||||
set -eo pipefail
|
||||
|
||||
# shellcheck source=./lib.sh
|
||||
source $(dirname $0)/lib.sh
|
||||
|
||||
# $SLASH_DEVICE is the disk device to be f*xtuP
|
||||
SLASH_DEVICE="/dev/sda" # Always the case on GCP
|
||||
|
||||
# The unallocated space results from the difference in disk-size between VM Image
|
||||
# and runtime request.
|
||||
NEW_PART_START="50%"
|
||||
NEW_PART_END="100%"
|
||||
|
||||
|
||||
if [[ ! -r "/root" ]] || [[ -r "/root/second_partition_ready" ]]
|
||||
then
|
||||
warn "Ignoring attempted execution of $(basename $0)"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
[[ -x "$(type -P parted)" ]] || \
|
||||
die "The parted command is required."
|
||||
|
||||
[[ ! -b ${SLASH_DEVICE}2 ]] || \
|
||||
die "Found unexpected block device ${SLASH_DEVICE}2"
|
||||
|
||||
PPRINTCMD="parted --script ${SLASH_DEVICE} print"
|
||||
FINDMNTCMD="findmnt --source=${SLASH_DEVICE}1 --mountpoint=/ --canonicalize --evaluate --first-only --noheadings"
|
||||
TMPF=$(mktemp -p '' $(basename $0)_XXXX)
|
||||
trap "rm -f $TMPF" EXIT
|
||||
|
||||
if $FINDMNTCMD | tee $TMPF | egrep -q "^/\s+${SLASH_DEVICE}1"
|
||||
then
|
||||
msg "Repartitioning original partition table:"
|
||||
$PPRINTCMD
|
||||
else
|
||||
die "Unexpected output from '$FINDMNTCMD': $(<$TMPF)"
|
||||
fi
|
||||
|
||||
echo "Adding partition offset within unpartitioned space."
|
||||
parted --script --align optimal /dev/sda unit % mkpart primary "" "" "$NEW_PART_START" "$NEW_PART_END"
|
||||
|
||||
msg "New partition table:"
|
||||
$PPRINTCMD
|
||||
|
||||
msg "Growing ${SLASH_DEVICE}1 meet start of ${SLASH_DEVICE}2"
|
||||
growpart ${SLASH_DEVICE} 1
|
||||
|
||||
FSTYPE=$(findmnt --first-only --noheadings --output FSTYPE ${SLASH_DEVICE}1)
|
||||
echo "Expanding $FSTYPE filesystem on ${SLASH_DEVICE}1"
|
||||
case $FSTYPE in
|
||||
ext*) resize2fs ${SLASH_DEVICE}1 ;;
|
||||
*) die "Script $(basename $0) doesn't know how to resize a $FSTYPE filesystem." ;;
|
||||
esac
|
||||
|
||||
# Must happen last - signals completion to other tooling
|
||||
msg "Recording newly available disk partition device into /root/second_partition_ready"
|
||||
echo "${SLASH_DEVICE}2" > /root/second_partition_ready
|
@ -84,7 +84,8 @@ function _run_bindings() {
|
||||
|
||||
# Subshell needed so logformatter will write output in cwd; if it runs in
|
||||
# the subdir, .cirrus.yml will not find the html'ized log
|
||||
(cd pkg/bindings/test && ginkgo -trace -noColor -debug -r) |& logformatter
|
||||
(cd pkg/bindings/test && \
|
||||
ginkgo -progress -trace -noColor -debug -timeout 30m -r -v) |& logformatter
|
||||
}
|
||||
|
||||
function _run_docker-py() {
|
||||
|
@ -19,13 +19,6 @@ die_unknown() {
|
||||
die "Unknown/unsupported \$$var_name '$var_value'"
|
||||
}
|
||||
|
||||
msg "************************************************************"
|
||||
msg "FIXME: force-install catatonit 0.17.0 until CI images are updated"
|
||||
msg "************************************************************"
|
||||
# FIXME: this is just a temporary workaround to force-install
|
||||
# catatonit 0.17.0. Please remove once the images are updated.
|
||||
./hack/install_catatonit.sh --force
|
||||
|
||||
msg "************************************************************"
|
||||
msg "Setting up runtime environment"
|
||||
msg "************************************************************"
|
||||
@ -126,12 +119,6 @@ case "$OS_RELEASE_ID" in
|
||||
ubuntu) ;;
|
||||
fedora)
|
||||
if ((CONTAINER==0)); then
|
||||
msg "Configuring / Expanding host storage."
|
||||
# VM is setup to allow flexibility in testing alternate storage.
|
||||
# For general use, simply make use of all available space.
|
||||
bash "$SCRIPT_BASE/add_second_partition.sh"
|
||||
$SCRIPT_BASE/logcollector.sh df
|
||||
|
||||
# All SELinux distros need this for systemd-in-a-container
|
||||
msg "Enabling container_manage_cgroup"
|
||||
setsebool container_manage_cgroup true
|
||||
@ -171,6 +158,18 @@ case "$TEST_ENVIRON" in
|
||||
# affected/related tests are sensitive to this variable.
|
||||
warn "Disabling usernamespace integration testing"
|
||||
echo "SKIP_USERNS=1" >> /etc/ci_environment
|
||||
|
||||
# In F35 the hard-coded default
|
||||
# (from containers-common-1-32.fc35.noarch) is 'journald' despite
|
||||
# the upstream repository having this line commented-out.
|
||||
# Containerized integration tests cannot run with 'journald'
|
||||
# as there is no daemon/process there to receive them.
|
||||
cconf="/usr/share/containers/containers.conf"
|
||||
note="- commented-out by setup_environment.sh"
|
||||
if grep -Eq '^log_driver.+journald' "$cconf"; then
|
||||
warn "Patching out $cconf journald log_driver"
|
||||
sed -r -i -e "s/^log_driver(.*)/# log_driver\1 $note/" "$cconf"
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
*) die_unknown TEST_ENVIRON
|
||||
@ -219,10 +218,8 @@ case "$TEST_FLAVOR" in
|
||||
remove_packaged_podman_files
|
||||
make install PREFIX=/usr ETCDIR=/etc
|
||||
|
||||
# TODO: Don't install stuff at test runtime! Do this from
|
||||
# cache_images/fedora_packaging.sh in containers/automation_images
|
||||
# and STRONGLY prefer installing RPMs vs pip packages in venv
|
||||
dnf install -y python3-virtualenv python3-pytest4
|
||||
msg "Installing previously downloaded/cached packages"
|
||||
dnf install -y $PACKAGE_DOWNLOAD_DIR/python3*.rpm
|
||||
virtualenv venv
|
||||
source venv/bin/activate
|
||||
pip install --upgrade pip
|
||||
|
@ -151,7 +151,7 @@ func createTempDirInTempDir() (string, error) {
|
||||
}
|
||||
|
||||
func (b *bindingTest) startAPIService() *gexec.Session {
|
||||
cmd := []string{"--log-level=debug", "--events-backend=file", "system", "service", "--timeout=0", b.sock}
|
||||
cmd := []string{"--log-level=debug", "system", "service", "--timeout=0", b.sock}
|
||||
session := b.runPodman(cmd)
|
||||
|
||||
sock := strings.TrimPrefix(b.sock, "unix://")
|
||||
|
Reference in New Issue
Block a user