action #164883
closedcoordination #58184: [saga][epic][use case] full version control awareness within openQA
coordination #152847: [epic] version control awareness within openQA for test distributions
Use same minion guard for save_needle, delete_needles and git_clone size:S
Description
Motivation¶
See #162125
All minion jobs that update git repositories should use the same minion guard to avoid conflicts
Currently we have these:
https://github.com/os-autoinst/openQA/blob/master/lib/OpenQA/Task/Git/Clone.pm#L33
my $guard = $app->minion->guard("git_clone_${path}_task", 2 * ONE_HOUR);
https://github.com/os-autoinst/openQA/blob/master/lib/OpenQA/Task/Needle/Save.pm#L58
unless my $guard = $app->minion->guard('limit_needle_task', 7200);
https://github.com/os-autoinst/openQA/blob/master/lib/OpenQA/Task/Needle/Delete.pm#L20
unless my $guard = $app->minion->guard('limit_needle_task', 7200);
Suggestion: Use git_update_${path}_task
for all three.
Acceptance Criteria¶
- AC1: Git minion operations can't interfere with each other
Suggestions¶
- In the needle tasks, figure out the path of the git operation first and use it for the guard
- Wait for #164886
Updated by tinita 2 months ago
- Copied from action #162125: [timeboxed:10h][spike] Let openQA keep test distribution checkouts up to date without needing fetchneedles size:S added
Updated by tinita 2 months ago
- Related to action #164898: Replace fetchneedles with a minion job size:M added
Updated by tinita about 2 months ago
- Status changed from Workable to In Progress
So delete_needles
seems to be only about database, while save_needle
is about the database plus git, and git_clone
is about git.
It seems to be possible to have more than one guard for a job, so I would just add the limit_needle
guard to the git_clone
job.
Updated by tinita about 2 months ago ยท Edited
Related: https://github.com/os-autoinst/openQA/pull/5857 t: Avoid tampering with git checkout (merged)
Updated by openqa_review about 2 months ago
- Due date set to 2024-08-29
Setting due date based on mean cycle time of SUSE QE Tools
Updated by tinita about 2 months ago
https://github.com/os-autoinst/openQA/pull/5862 Prevent git_clone to interfere with needle tasks
Updated by tinita about 2 months ago
- Status changed from In Progress to Resolved
https://github.com/os-autoinst/openQA/pull/5862 merged and deployed to o3 this morning