mirror of
https://github.com/morgan9e/systemd
synced 2026-04-14 08:25:20 +09:00
fmf: Support being used downstream in dist-git tests
We can use our upstream fmf definitions to run downstream tests in the Fedora systemd dist-git repository (https://src.fedoraproject.org/rpms/systemd). To have access to the dist-git sources when running the tests, we enable dist-git-source: true downstream which makes the sources available in $TMT_SOURCE_DIR so let's make sure we use those sources if they're available.
This commit is contained in:
@@ -7,16 +7,44 @@ set -o pipefail
|
||||
# Switch SELinux to permissive, since the tests don't set proper contexts
|
||||
setenforce 0
|
||||
|
||||
# Prepare systemd source tree
|
||||
git clone "$PACKIT_TARGET_URL" systemd
|
||||
pushd systemd
|
||||
# If we're running in a pull request job, merge the remote branch into the current main
|
||||
if [[ -n "${PACKIT_SOURCE_URL:-}" ]]; then
|
||||
git remote add pr "${PACKIT_SOURCE_URL:?}"
|
||||
git fetch pr "${PACKIT_SOURCE_BRANCH:?}"
|
||||
git merge "pr/$PACKIT_SOURCE_BRANCH"
|
||||
# Allow running the integration tests downstream in dist-git with something like
|
||||
# the following snippet which makes the dist-git sources available in $TMT_SOURCE_DIR:
|
||||
#
|
||||
# summary: systemd Fedora test suite
|
||||
# discover:
|
||||
# how: fmf
|
||||
# url: https://github.com/systemd/systemd
|
||||
# ref: main
|
||||
# path: test/fmf
|
||||
# dist-git-source: true
|
||||
# dist-git-install-builddeps: false
|
||||
# prepare:
|
||||
# - name: systemd
|
||||
# how: install
|
||||
# exclude:
|
||||
# - systemd-standalone-.*
|
||||
# execute:
|
||||
# how: tmt
|
||||
|
||||
if [[ -n "${TMT_SOURCE_DIR:-}" ]]; then
|
||||
pushd "$TMT_SOURCE_DIR/*/"
|
||||
elif [[ -n "${PACKIT_TARGET_URL:-}" ]]; then
|
||||
# Prepare systemd source tree
|
||||
git clone "$PACKIT_TARGET_URL" systemd
|
||||
pushd systemd
|
||||
|
||||
# If we're running in a pull request job, merge the remote branch into the current main
|
||||
if [[ -n "${PACKIT_SOURCE_URL:-}" ]]; then
|
||||
git remote add pr "${PACKIT_SOURCE_URL:?}"
|
||||
git fetch pr "${PACKIT_SOURCE_BRANCH:?}"
|
||||
git merge "pr/$PACKIT_SOURCE_BRANCH"
|
||||
fi
|
||||
|
||||
git log --oneline -5
|
||||
else
|
||||
echo "Not running within packit or Fedora CI"
|
||||
exit 1
|
||||
fi
|
||||
git log --oneline -5
|
||||
|
||||
# Now prepare mkosi, possibly at the same version required by the systemd repo
|
||||
git clone https://github.com/systemd/mkosi
|
||||
|
||||
Reference in New Issue
Block a user