-
Notifications
You must be signed in to change notification settings - Fork 4
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
Need to be able to print shell commands for final_report rule #139
Comments
Note that the rule calls |
yes, but at the level of job submission, |
More generally though, the problem is just that it makes things non-standard. If all of our other output is using |
resolved by commit f7508cb Final report generation shell command is now sent to the snakemake log file. |
I disagree. There's nothing wrong with using whatever mechanism there is if it allows us to solve problems. We ended up using (Besides, if anything is messy it's using |
That was the main point of this question: why exactly it was being done this way. Git blame on the file didn't provide any illuminating answer on this --perhaps I missed something. Can you explain why this is |
I think this solution of printing into stdout is very nice, only nice thing would be to make it conditional ( only when printShellCmd). About the I think The benefit of this functionality is that we do not have to explicitly have to hardcode the params of the two reports (final, diffmeth), but can define them in the rule and pass them as dict. |
ok, I'm a little foggy on some of the details in there, but that sounds like a sufficiently good reason for setting it up in this way.
Agreed, that would be ideal, but passing the flag into the function is an extra step of work. Moreover, this output isn't going to screen; I just tested it and saw that this it is actually sent to the snakemake output log file for the job in question (which is, itself, going to be relegated to a sub-folder of |
Unfortunately, a simple print statement doesn't actually convey all the necessary information. This is what the output looks like currently:
And then when the job crashes, the only additional information comes from the SM run:
So at least we know what the output is, but it's still a massive pain to figure out what the inputs and all the parameters were in order to run the job manually in an
Why do we need to dump this all in json format? We used to just include the parameters directly in the shell command. |
The dumping was because:
If we have so many issues with the generate_report() function we might aswell trash it and write explicit shell commands inside the rule. |
@alexg9010 I don't mind any, using explicit shell commands or |
Print ArgsL rds file to pigx_work, and then make a note of that fact in the SM message. |
should be fixed with #159 |
The final report rule in BS seq uses
run
instead ofshell
, which means we cannot see what's happening inside snakemake with the optionprintshellcmds
.This enormously increases the difficulty of debugging when issues are encountered (e.g. Issue #119).
We need to either change "run" to "shell" in this rule, or find some other way to output the command.
The text was updated successfully, but these errors were encountered: