-
Notifications
You must be signed in to change notification settings - Fork 140
test: Use SRPM as test code source to work with gating test #1670
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Okey, I tried all different configurations, no one works in this case. I still prefer |
af38ce9
to
c6d53c7
Compare
CS9 failure needs fix #1663. |
./provision-derived.sh | ||
|
||
if [[ "$GATING" == true ]]; then | ||
# Install Fedora CI/OSCI required packages for "Prepare dist-git sources" task |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To be clear, this is to get the tests? Ah I see, we're shipping them in the .tar.zstd
today. But in theory we shouldn't need the full build dependencies just to get those...
Is extracting the .src.rpm really what others do here? I guess we could make a -tests
subpackage?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because in Fedora/OSCI gating, two tasks will be running after our prepare
:
queued prepare task #1: essential-requires on default-0
queued prepare task #2: default-0 on default-0 --> our install prepare
queued prepare task #3: default-1 on default-0 --> our provision prepare
queued prepare task #4: Prepare dist-git sources (buildrequires, patches, discovery...) on default-0 --> install packages with `rpm-build @buildsys-build 'dnf-command(builddep)`
queued prepare task #5: requires (dist-git) on default-0 --> install builddeps packages
queued prepare task #6: recommends (dist-git) on default-0
Because those package installations prepares are under our provision prepare, so we need pre-build those packages, which will be used by task 3 and task 4, into our image.
tmt/plans/integration.fmf
Outdated
image: $@{test_disk_image} | ||
prepare: | ||
# Replace package mode with image mode | ||
# DO NOT RUN ON Github or Locally |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's a bit unclear what "DO NOT RUN ON Github" means. The term "unify" also isn't obvious to me.
How about calling this "init_package_mode" or something - making clear that in this flow we're starting from package mode.
- pwd && ls -al | ||
- if [[ -d hack ]]; then cd hack && ./provision-packit.sh; fi | ||
- mkdir -p bootc && cp /var/share/test-artifacts/*.src.rpm bootc | ||
- cd bootc && rpm2cpio *.src.rpm | cpio -idmv && rm -f *-vendor.tar.zstd && zstd -d *.tar.zstd && tar -xvf *.tar -C . --strip-components=1 && ls -al |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah. But if we do this, do we need the dnf builddep
per above at all? I don't think so...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Right. We don't need buiddep packages, but FedoraCI/OSCI needs those packages.
Signed-off-by: Xiaofeng Wang <henrywangxf@me.com>
c6d53c7
to
4752934
Compare
In Fedora or OSCI dist-git gating, SRPM is the only way to get test code. Change to extracting SRPM to get source code. That works with both Packit and dist-git gating.
This PR also includes a
when: running_env != unify
in prepare to make it only runs on Packit or dist-git gating test. In our case,unify
means running on Github CI or locally.