-
-
Notifications
You must be signed in to change notification settings - Fork 231
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
17054 custom name #1477
base: main
Are you sure you want to change the base?
17054 custom name #1477
Conversation
Codecov Report
@@ Coverage Diff @@
## main #1477 +/- ##
==========================================
- Coverage 65.82% 56.03% -9.80%
==========================================
Files 89 45 -44
Lines 15624 7845 -7779
Branches 3935 1975 -1960
==========================================
- Hits 10285 4396 -5889
+ Misses 4251 2927 -1324
+ Partials 1088 522 -566
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is interesting. Like id
or label
, but allowed to be a CWL expression.
Can you run make format
? Also, please run make diff_pydocstyle_report
and fix the complaint at https://github.com/common-workflow-language/cwltool/pull/1477/checks?check_run_id=3243796649#step:7:28
The use case here is that if you have something like a wide scatter over samples, the name of the step that is visible to the user can incorporate useful information such as the sample id. It is a label for a specific instance of an execution of a step, not the description of the step (which is what id or label represent). This was specifically requested by a user for a large pharma company who is known to run gigantic workflows. |
cwltool/workflow_job.py
Outdated
runtimeContext.name = shortname(self.id) | ||
|
||
stepnameReq, is_required = self.step.get_requirement("http://commonwl.org/cwltool#StepName") | ||
if is_required is not None: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it would be better to use stepnameReq is not None
instead
Then should it be called a "job name" to better disambiguate? As steps already have an Alternatively, logs could be improved to always include the name of the scattered variable and its current value when scattering. Thus hand-specifying this field would be unnecessary. |
Yes. That is a good idea. @lijiayong could you rename it "JobName" instead of "StepName" ?
Logging the name of the scattered variable doesn't generalize terribly well, we don't know for sure what parameters are most relevant to the user to identify a job, and users may want to do some string munging to display only the most useful part. So I'm pretty users would still ask to be able to control the job names. |
Sure, but we should implement the improved auto naming of scattered jobs as that will enhance the logging in the vast majority of situations. |
Is this intended to be part of a future version of the CWL standards? Then there should be an issue opened to discuss the syntax. I'm a bit uncomfortable with the number of If this needs to be fast tracked for Arvados and it's customer, then we can merge the supporting parts without the |
I don't understand this, there are precisely 3 cwltool extensions right now, this would only be a 4th one. One is highly experimental (ProcessGenerator) and the others (including this one) could be standards track, but that's a separate discussion. The development strategy in the past was generally to implement something and then iterate?
I'm not sure I understand, it needs to check for the hint type:
Are you suggesting that it would not be added to the extensions yml file, or that the code in cwltool would look for the extension with the arvados namespace instead of the cwltool namespace? |
I'd prefer there was a callback that Arvados uses for their own |
No description provided.