mirror of
https://github.com/containers/podman.git
synced 2026-07-14 17:21:52 -04:00
Setup and execute podman machine testing on bare-metal M1 Macs using a pool of shared and semi-persistent hosts. Automated and manual processes outside this repository are responsible for providing and maintaining all hosts. Ref. https://github.com/containers/automation/tree/main/mac_pw_pool Update the `localmachine` make target to standardize execution across platforms. Update/simplify podman-machine e2e README to reflect current reality. Warning: This CI setup and supporting infrastructure was developed in favor of expediency vs reliability and stability. There are many possible failure-modes (known and unknown) which may lead to undefined test behaviors. Future work may address some of these as they are encountered or discovered. [NO NEW TESTS NEEDED] Signed-off-by: Chris Evich <cevich@redhat.com>
34 lines
1.3 KiB
Bash
Executable File
34 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# This script is intended to be called by Cirrus-CI on a Mac M1 persistent worker.
|
|
# It runs after the preparatory `mac_cleanup.sh` to performs all the user-level
|
|
# environment setup required to execute testing. It assumes whatever system-wide
|
|
# setup is required, has already happened and was successful.
|
|
|
|
set -euo pipefail
|
|
|
|
# The otherwise standard `/etc/ci_environment` file cannot be used in this
|
|
# context, because the system is shared for multiple tasks. Instead, persist
|
|
# env. vars required during /subsequent/ testing steps via a "magic" Cirrus-CI
|
|
# mechanism. These cannot be set in the task YAML because they would interfere
|
|
# with repo. cloning and task preparation.
|
|
# Ref:
|
|
# https://cirrus-ci.org/guide/tips-and-tricks/#setting-environment-variables-from-scripts
|
|
|
|
# Tests expect to call compiled binaries first, make sure they're found first.
|
|
# shellcheck disable=SC2154
|
|
echo "PATH=$CIRRUS_WORKING_DIR/bin/darwin:$PATH" >> $CIRRUS_ENV
|
|
|
|
# Post-task cleanup needs to know the actual user home directory
|
|
# shellcheck disable=SC2154
|
|
echo "ORIGINAL_HOME=$HOME" >> $CIRRUS_ENV
|
|
|
|
# Help isolate CI-operations from system-operations and simplify task cleanup.
|
|
# shellcheck disable=SC2154
|
|
echo "HOME=$HOME/ci" >> $CIRRUS_ENV
|
|
# shellcheck disable=SC2154
|
|
echo "TMPDIR=/private/tmp/ci" >> $CIRRUS_ENV
|
|
|
|
# Removed completely during cleanup.
|
|
mkdir -p /private/tmp/ci
|