Skip to content
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

root dir change for snakebids 0.4.0 #145

Merged
merged 15 commits into from
Jan 6, 2022
Merged

root dir change for snakebids 0.4.0 #145

merged 15 commits into from
Jan 6, 2022

Conversation

akhanf
Copy link
Member

@akhanf akhanf commented Dec 27, 2021

This PR is related to refactoring proposed in #123.

It changes output folder structure to prepend results/ folder when in workflow mode (run with snakemake), and not prepend results/ folder when in bids-app mode (run with hippunfold CLI)

In addition to this change, outputs are now placed in hippunfold and work folders, which are siblings (analogous to results and work from before).

These changes mean that when run in workflow mode, all the outputs are in results/hippunfold and results/work (ie according to snakemake best practices to not crowd the snakemake root folder), and when run in bids-app mode, all outputs are in hippunfold and work.

Note: more substantial refactoring could be done in later PR(s), where we can:

  1. Add more subdirectories for organizing outputs (siblings to seg, surf, anat), like coords and xfm
  2. Use the temp() directive throughout the workflow instead of using a separate work path. This would mean we could drop the copy_to_results rule, and instead of --keep_work can use the snakemake --notemp option to keep the temporary files

@akhanf akhanf marked this pull request as ready for review December 27, 2021 20:18
@akhanf
Copy link
Member Author

akhanf commented Dec 27, 2021

This PR now also changes the way we dry-run test the workflow, putting the tests in the github workflow instead of a separate python file and pytest. Did this because of some incompatibilities with the way we were testing and snakebids, but it should make adding new dry-run tests much easier..

@akhanf akhanf added maintenance Updates or improvements that do not change functionality of the code enhancement New feature or request breaking New feature that breaks comptability with previous versions labels Jan 5, 2022
@akhanf akhanf mentioned this pull request Jan 6, 2022
4 tasks
@akhanf akhanf merged commit 14ce6b0 into master Jan 6, 2022
@akhanf akhanf deleted the rootdir branch January 6, 2022 19:58
@akhanf akhanf removed enhancement New feature or request breaking New feature that breaks comptability with previous versions labels Jan 6, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
maintenance Updates or improvements that do not change functionality of the code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants