test: Use SRPM as test code source to work with gating test#1670
test: Use SRPM as test code source to work with gating test#1670henrywang merged 1 commit intobootc-dev:mainfrom
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.
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.
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.
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.
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.
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 != unifyin prepare to make it only runs on Packit or dist-git gating test. In our case,unifymeans running on Github CI or locally.