vstart_runner: accepts multiple commands as str too#37655
vstart_runner: accepts multiple commands as str too#37655vshankar merged 8 commits intoceph:masterfrom
Conversation
|
jenkins test api |
|
Link to laat API job - https://jenkins.ceph.com/job/ceph-api/5023/ |
1dc3fb9 to
f1055bc
Compare
|
The persistent error on Ceph API tests (see https://jenkins.ceph.com/job/ceph-api/6273/) is due to a bug in Marking this as DNM until that PR merges. |
bb2fe66 to
2dc0c7e
Compare
|
jenkins test make check |
|
With the fix for dashboard QA, the Ceph API tests passed - https://jenkins.ceph.com/job/ceph-api/6374/ |
2dc0c7e to
211d6f6
Compare
|
jenkins test api |
|
Following is the part of logs where the failure occurred - Since locally this test passed for this branch, I am running API tests once again. Link to the previous run - https://jenkins.ceph.com/job/ceph-api/6994/ |
|
jenkins test api |
|
Strange, I see "Took 0 ms on master" on API test job - https://jenkins.ceph.com/job/ceph-api/7040/. Retriggering... |
|
jenkins test api |
|
Seeing the same failure again - |
|
jenkins test api |
1 similar comment
|
jenkins test api |
211d6f6 to
7e8f954
Compare
|
jenkins test api |
|
Link to Ceph API job - https://jenkins.ceph.com/job/ceph-api/35080/ |
|
jenkins test api |
|
Link to Ceph API CI job for run before last push - https://jenkins.ceph.com/job/ceph-api/35074/. |
|
Link to latest Ceph API CI job - https://jenkins.ceph.com/job/ceph-api/3508. Failure - |
|
Ceph API CI job failed. Link - https://jenkins.ceph.com/job/ceph-api/35126/consoleFull#12945576334b0cfa0c-a892-49e0-a359-82544e1a192e. Following are problematic error messages I could find - |
|
Retriggering make check since error from previous make check job doesn't look releveant. |
|
jenkins test make check |
|
https://jenkins.ceph.com/job/ceph-api/35154/ The first two snippets can still be found in console output. Following is new - |
|
Removing DNM label now since the changes are final and Ceph API test didn't fail last couple of times. |
|
jenkins test make check |
|
This pull request can no longer be automatically merged: a rebase is needed and changes have to be manually resolved |
| commands with passwordless sudo access. A failure on the kernel | ||
| client may crash the host, so it's recommended to use this | ||
| functionality within a virtual machine. | ||
| commands with passwordless sudo access. | ||
|
|
||
| .. note:: A failure on the kernel client may crash the host, so it's | ||
| recommended to use this functionality within a virtual machine. |
There was a problem hiding this comment.
These changes have been merged in a separate PR - #45923.
|
Rebased and resolved a conflict in qa/tasks/cephfs/mount.py. |
|
@batrick does this PR look okay to you? I see you originally requested changes. |
|
This pull request can no longer be automatically merged: a rebase is needed and changes have to be manually resolved |
Convert all command arguments to str from list, update checks and adjustments performed on command arguments accordingly and update documentation to include warnings about some critical parts of vstart_runner.py and update tasks.cephfs.mount.MountCephFS.run_shell(). Fixes: https://tracker.ceph.com/issues/47849 Signed-off-by: Rishabh Dave <ridave@redhat.com>
Overridding commands is much better than deleting these commands from command argument string using Python since, unlike deleting, overridding doesn't require parsing. A note has been added for this to vstart_runner.py's module docstring and to Ceph Developer's Guide document. Since functions don't work with sh shell, to make overriding work vstart_runner.py will use bash shell here onwards. Signed-off-by: Rishabh Dave <ridave@redhat.com>
The intention behind copying these note points is to document the behaviour of vstart_runner.py inside vstart_runner.py as well so that developer don't miss it out while working on it. Signed-off-by: Rishabh Dave <ridave@redhat.com>
We convert all cmd args to str and pass bash functions along to override certain arguments in those command arguments. Let's save cmd args without those bash functions since they can be useful later (for example, printing cmd args in logs, which is the case in this patch.) Signed-off-by: Rishabh Dave <ridave@redhat.com>
Passing "exec sudo" to "ceph -w" caused "Ceph API test" CI job to fail. Error was not related to this tracker issue but the code added for it is reversed now in this commit. The tracker issue - https://tracker.ceph.com/issues/49644. Signed-off-by: Rishabh Dave <ridave@redhat.com>
About the commit date: this commit got dropped from the patch series during some PR branch update but is added back now. Signed-off-by: Rishabh Dave <ridave@redhat.com>
vstart_runner.py is written assuming that it can run commands with superuser privileges whenever possible and vstart_runner.py is meant to be executed without sudo. So, it's better kill a process using "sudo kill -9 <PID>", instead of using os.kill() because os.kill() can't kill process launched with superuser privileges. Signed-off-by: Rishabh Dave <ridave@redhat.com>
It's more convenient to not to pass stdout, stdin, and stderr every single time. Signed-off-by: Rishabh Dave <ridave@redhat.com>
Teuthology's orchestra.remote.run() can execute multiple commands passed
to it in form of character string where commands are separated by
newlines. Let's add that ability to vstart_runner.LocalRemote.run() as
well.
Fixes: https://tracker.ceph.com/issues/47849
Checklist
Show available Jenkins commands
jenkins retest this pleasejenkins test classic perfjenkins test crimson perfjenkins test signedjenkins test make checkjenkins test make check arm64jenkins test submodulesjenkins test dashboardjenkins test apijenkins test docsjenkins render docsjenkins test ceph-volume alljenkins test ceph-volume tox