- Add mock-specific build artifacts (chroot/, mock-*, mockroot/) - Include package build files (*.deb, *.changes, *.buildinfo) - Add development tools (.coverage, .pytest_cache, .tox) - Include system files (.DS_Store, Thumbs.db, ._*) - Add temporary and backup files (*.tmp, *.bak, *.backup) - Include local configuration overrides (config.local.yaml, .env.local) - Add test artifacts and documentation builds - Comprehensive coverage for Python build system project This ensures build artifacts, chroot environments, and development tools are properly ignored in version control.
45 lines
1.1 KiB
Bash
45 lines
1.1 KiB
Bash
#!/bin/sh
|
|
|
|
if test -z "$TESTDIR"; then
|
|
TESTDIR=$(dirname "$(readlink -f "$0")")
|
|
fi
|
|
|
|
. "${TESTDIR}/functions"
|
|
set -e
|
|
|
|
: "${MOCKCMD=mock}"
|
|
|
|
header "mock and local mirrorlist with expanded variables"
|
|
|
|
TMPDIR=$(mktemp -d)
|
|
cleanup() { rm -rf "$TMPDIR"; }
|
|
trap cleanup EXIT
|
|
|
|
mirrorlist=$TMPDIR/x86_64/mirrorlist
|
|
config=$TMPDIR/rawhide.cfg
|
|
|
|
mkdir "$(dirname "$mirrorlist")"
|
|
cat > "$mirrorlist" <<EOF
|
|
https://raw.githubusercontent.com/rpm-software-management/mock-test-data/main/repo/
|
|
EOF
|
|
|
|
# "local" mirror list pointing to external repository hosted on GitHub.
|
|
cat > "$config" <<EOF
|
|
include("fedora-rawhide-x86_64.cfg")
|
|
config_opts["root"] = "test-local-mirrorlist"
|
|
config_opts["dnf.conf"] += """
|
|
[always_available]
|
|
name=Always Available
|
|
mirrorlist=$TMPDIR/\$basearch/mirrorlist
|
|
gpgcheck=0
|
|
"""
|
|
EOF
|
|
|
|
for isolation in simple nspawn; do
|
|
for bootstrap in bootstrap-chroot no-bootstrap-chroot; do
|
|
mock="$MOCKCMD --isolation=$isolation --$bootstrap -r $config"
|
|
$mock --install always-installable
|
|
$mock --scrub=chroot
|
|
$mock --scrub=bootstrap
|
|
done
|
|
done
|