Allow some configuration of testing-farm jobs based on labels #542

Open
opened 2026-02-09 14:00:23 +00:00 by lecris · 3 comments
Owner

The idea is to check for the presence of some labels on the PR and forward their presence via tmt context.

The original issue came from tests/ruby where it is trying to be efficient with the test being run, but that may not be desired every time. An alternative design would be to check for the following pre-defined labels:

  • label: skip-tests: do not run any tests
  • label: modified-tests: run all plans, tests and define context run-only: modified
  • label: full-tests: run all plans, tests and define contest run-only: full

and the plan would simplify to:

/:
  inherit: false

summary: Run all tests
discover:
  how: fmf
execute:
  how: tmt
adjust:
  - when: run-only == modified-tests
    summary: Run only modified tests
    discover+:
      modified-only: true
      modified-ref: reference/main
      modified-url: https://src.fedoraproject.org/tests/ruby

Implementation on packit-service would be pretty straighforward, but not sure if we can do it for pagure backend. At the very least we will be able to do it after the Forgejo migration

The idea is to check for the presence of some labels on the PR and forward their presence via tmt context. The original issue came from [tests/ruby](https://src.fedoraproject.org/tests/ruby) where it is trying to be efficient with the test being run, but that may not be desired every time. An alternative design would be to check for the following pre-defined labels: - `label: skip-tests`: do not run any tests - `label: modified-tests`: run all plans, tests and define context `run-only: modified` - `label: full-tests`: run all plans, tests and define contest `run-only: full` and the plan would simplify to: ```yaml /: inherit: false summary: Run all tests discover: how: fmf execute: how: tmt adjust: - when: run-only == modified-tests summary: Run only modified tests discover+: modified-only: true modified-ref: reference/main modified-url: https://src.fedoraproject.org/tests/ruby ``` --- Implementation on packit-service would be pretty straighforward, but not sure if we can do it for pagure backend. At the very least we will be able to do it after the Forgejo migration

Packit has some kind of labeling already supported:

But not sure if this helps here...

Packit has some kind of labeling already supported: * https://packit.dev/posts/manual-triggering * https://packit.dev/docs/configuration/upstream/tests#optional-parameters But not sure if this helps here...
Author
Owner

Ah, right should also mention that this is blocked by Packit as Fedora CI. No way are we going to this in the Jenkins interface. And indeed the idea would be to make use of the built-in support in packit. Just not sure if we can already do this with Pagure or are we further blocked by Forgejo migration.

Ah, right should also mention that this is blocked by [Packit as Fedora CI](https://github.com/packit/packit-service/issues/2692). No way are we going to this in the Jenkins interface. And indeed the idea would be to make use of the built-in support in packit. Just not sure if we can already do this with Pagure or are we further blocked by Forgejo migration.
lecris added this to the Board project 2026-02-09 21:25:34 +00:00

FYI: Here is the tmt's issue ticket to add a feature to return exit status 0 when no tests are slected.
https://github.com/teemtee/tmt/issues/4550

FYI: Here is the tmt's issue ticket to add a feature to return exit status 0 when no tests are slected. https://github.com/teemtee/tmt/issues/4550
Sign in to join this conversation.
No milestone
No project
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ci/tickets#542
No description provided.