Skip to content

testingfarm: move environment constraints into fmf plan - #9265

Open
jscotka wants to merge 5 commits into
cockpit-project:mainfrom
jscotka:tmt_job_runner
Open

testingfarm: move environment constraints into fmf plan#9265
jscotka wants to merge 5 commits into
cockpit-project:mainfrom
jscotka:tmt_job_runner

Conversation

@jscotka

@jscotka jscotka commented Jul 9, 2026

Copy link
Copy Markdown
Collaborator

Env constraints should be inside FMF plan file instead of hard-coding them in the API request, it is intended to override these values inside plan.

  • arch
  • compose (Fedora-44)
  • virtualization support
  • hardware requirements (memory >= 4 GB, disk >= 60 GiB) .

Drop these parameters from submit_job() and remove the explicit pipeline timeout, relying on Testing Farm defaults.

Declare arch, compose (Fedora-44), virtualization support, and hardware
requirements (memory >= 4 GB, disk >= 60 GiB) in plans/job-runner.fmf
instead of hard-coding them in the API request. Drop the compose
parameter from submit_job() and remove the explicit pipeline timeout,
relying on Testing Farm defaults.
Comment thread plans/job-runner.fmf Outdated
disk:
- size: ">= 60 GiB"
virtualization:
#is-virtualized: true

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this definitely needs to be true. it's the most important part...

@jscotka jscotka Jul 9, 2026

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it should be fine. as you are asking to support virtualization, not that machine itself is virtual and support nested virt

Comment thread plans/job-runner.fmf Outdated
hardware:
memory: ">= 4 GB"
disk:
- size: ">= 60 GiB"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd definitely want @jelly to weigh in on this. We've had some issues in the past...

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

these constraints could be dangerous, to not be able to select any machine, but I think it should be fine, in fact I've never used disc size requirements inside TF. But We'll see.

The Testing Farm API validates arch at submission time and rejects
requests without it, even when arch is declared in the fmf plan.
Like arch, the compose must be specified in the API request — Testing
Farm uses it to select the OS image and does not fall back to the fmf
plan's provision.image. Default to Fedora-44 to match the fmf plan.
Testing Farm does its own machine provisioning and ignores the how
field. Having how: virtual caused tmt to attempt spinning up a nested
VM inside the Testing Farm machine, stalling the queue.
Removing the disk size constraint to reduce restrictions on available
Testing Farm machines and avoid stalling in the queue.
@jscotka

jscotka commented Jul 9, 2026

Copy link
Copy Markdown
Collaborator Author

scheduled from command line

testing-farm request --git-url https://github.com/cockpit-project/bots --git-ref=tmt_job_runner --plan /job-runner --compose Fedora-44

seems to be able to run : https://artifacts.osci.redhat.com/testing-farm/616da0f9-4f3b-4b8b-a516-ea1b9a1bd478/work-job-runnerx5xiq0kf/tmt-run.log

https://artifacts.osci.redhat.com/testing-farm/616da0f9-4f3b-4b8b-a516-ea1b9a1bd478/

Various options can be places inside FMF plan file

some limitations

  • API calls have to select arch (CLI probably hides it inside as default if not overriden)
  • also compose has to be selected when HTTP calling, otherwise container image will be used.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants