#301 Testing Farm should expose artifacts to user for rpm-sti-test
Closed by fbo. Opened by mvadkert.

See: https://lists.fedoraproject.org/archives/list/ci@lists.fedoraproject.org/thread/AOBM2MQ3LHDQIYCJ5GOHV6ZIYQK7TGJU/

It doesn't seem to be possible to view our custom artifacts [1] from the
"Testing Farm Artifacts" view.

[1] E.g. the various build logs and root logs visible here:

https://fedora.softwarefactory-project.io/zuul/build/8057ac071ad44539becb...

We need to not regress here as moving from rpm-test to rpm-sti-test ....


Most probably related also to https://issues.redhat.com/browse/TFT-641

Most probably related also to https://issues.redhat.com/browse/TFT-641

BTW That link requires a corporate login.

Yeah, it was mostly for us, not really interesting to the community ... maybe I will think about not adding it here next time ....

BTW In CentOS Stream Zuul, we don't see the artifacts at all, making it a slightly higher priority.

@churchyard can you link me that CentOS Stream Zuul job pls?

I see a Testing Farm artifact here: https://centos.softwarefactory-project.io/zuul/t/centos/build/6744944f831a4f3bb2d653b53995ea6d/artifacts

@mvadkert See e.g. https://gitlab.com/redhat/centos-stream/rpms/pyproject-rpm-macros/-/merge_requests/9

@fbo Testing Farm Artifacts is a link that does not expose the actual artifacts, just the logs.

To understand the difference, see e.g. this Fedora PR: https://src.fedoraproject.org/rpms/pyproject-rpm-macros/pull-request/255

Locate the latest Zuul comment: https://src.fedoraproject.org/rpms/pyproject-rpm-macros/pull-request/255#comment-100384

See the rpm-test job: https://fedora.softwarefactory-project.io/zuul/build/6397ac6768ca4ab395b35f4238341525

Click Logs tab https://fedora.softwarefactory-project.io/zuul/build/6397ac6768ca4ab395b35f4238341525/logs

Expand the artifacts folder and see many PASS... files as well as many more other files, such as various build.logs, root.logs and RPMs.


OTOH if you go to rpm-sti-test, Artifacts tab, Testing Farm Artifacts, or directly to the Fedora CI - dist-git test link, you only see the PASS... (or FAIL) logs. No way to grab the files that we copy here: https://src.fedoraproject.org/rpms/pyproject-rpm-macros/blob/rawhide/f/tests/mocktest.sh#_63


tl;dr:

  • Fedora PR runs the STI tests 3 times (Zuul - direct, Zuul - Testing Farm, Jenkins - Testing Farm) -- the direct Zuul one allows us to grab the artifacts, the others don't
  • CentOS Stream MR runs the STI tests just once (on the Testing Farm) and hence we don't have the artifacts

Ack, we will display at least the link to the working directory as we do for tmt:

https://artifacts.dev.testing-farm.io/eab0acdb-9c0a-40f8-a5eb-0f858cf6c5d2/work-tests.ymlgruF54/tests-oG06gU/

That link gives error 404.

yep, the current retention time for public is just 7 days, we plan to extend it to 3 months soon

Please let me know if the issue with the artifacts not reachable is fixed with rpm-sti-test in the Testing Farm UI ?

If that's the case then I'd like to decommission rpm-test job that is running STI tests on VMs on our cloud provider infra.

It is not fixed, or at least I have no idea how to reach the artifacts.

Thanks to @martinpitt we have a new contributable html viewer:

https://gitlab.com/testing-farm/oculus/

I am looking how it looks now for STI test:

https://artifacts.dev.testing-farm.io/a750fcc4-bffb-48c5-ab9b-d11d73580504/

True, the workdir is still not exposed, but at least we have now the artifact installation.

@mvadkert : I'm happy to look into this. But oculus should not make assumptions, I'd rather fix gluetool-modules to add the workdir as proper log to results.xml; WDYT?

Where would the artifacts be? Removing the ansible-output.txt part from the URL leads to https://artifacts.dev.testing-farm.io/a750fcc4-bffb-48c5-ab9b-d11d73580504/work-tests.ymlnfr7zp/ , but there is nothing interesting there. The tests-L5P64V/ directory sounds like something which could contain additional artifacts, but doesn't? @churchyard , do you expect it to?

Testing again via:

https://gitlab.com/redhat/centos-stream/rpms/pyproject-rpm-macros/-/merge_requests/15

So I am looking at the above MR:

  • rpms and builds logs are availble via mock-build Zuul Job
    https://centos.softwarefactory-project.io/logs/15/15/d36e844aa49ce082570c91fa4bd35ef81fa6347c/check/mock-build/40e33d9/repo/

  • All test artifacts are available via the new results viewer available via Artifacts / Testing Farm Artifacts https://artifacts.dev.testing-farm.io/8015cedb-1037-4136-ba0f-9a0e138879fe/

  • Each test has a link to log_dir: https://artifacts.dev.testing-farm.io/8015cedb-1037-4136-ba0f-9a0e138879fe/work-tests.ymltiG7g2/tests-qnvrsk/ which seems to contain all mentioned files including rpms

Ok so given that change https://src.fedoraproject.org/rpms/python-rpm-macros/pull-request/150
here are runs of rpm-test and rpm-sti-test:

rpm-test: https://fedora.softwarefactory-project.io/zuul/build/9a39c67b9ef945ea9fe28d29af894732/logs -> under the logs section an artifacts directory exists and contains the expected built/tests artifacts.

rpm-sti-test: https://fedora.softwarefactory-project.io/zuul/build/5dfb63e10bff4117b26da8d7c1f80556/artifacts -> under the artifacts section a link "Testing Farm Artifacts" redirects to the results viewer which seems to provide the same data as the "legacy" rpm-test job.

@churchyard please let us know if rpm-sti-test provides the expected artifacts data ?
If yes could we remove rpm-test job ?

python-rpm-macros tests don't expose any special artifacts. Please test with pyproject-rpm-macros instead.

See for example https://src.fedoraproject.org/rpms/pyproject-rpm-macros/pull-request/338#comment-118246

rpm-test has https://fedora.softwarefactory-project.io/zuul/build/0a2db748f66149109f19a54a433201ce/logs with all the build logs and root logs and rpm packages

rpm-sti-test does not have those (or I cannot find them)

or I cannot find them

This is probably the main confusion here. OK, so I need to click

  1. rpm-sti-test
  2. Artifacts
  3. Testing farm artifacts
  4. dist-git-repository-None-21zx9q/tests/tests.yml
  5. any of the tests
  6. log_dir

This brings me tohttps://artifacts.dev.testing-farm.io/071f7e23-70ac-49c2-89dc-a232d0a07d4d/work-tests.ymlqgVnYK/tests-LnK15O/ which is exactly what I needed.

It appears this works. The layer of indirection and the UX of all this is not great, but I guess we can actually close this. Thanks.

Thanks for the feedback.

Then I'll plan the removal of rpm-test job.

I've created https://pagure.io/fedora-ci/general/issue/370 as a follow-up to discuss UX improvement.

I close this. Please re-open if needed.

Metadata Update from @fbo:
- Issue status updated to: Closed (was: Open)

Metadata
Related Pull Requests