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

Simplify output directory structure #7

Merged
merged 2 commits into from
Aug 24, 2023
Merged

Simplify output directory structure #7

merged 2 commits into from
Aug 24, 2023

Conversation

adamjtaylor
Copy link
Collaborator

@adamjtaylor adamjtaylor commented Aug 17, 2023

Our current output structure is as follows

outdir
    workflow.runName
        meta.id
            workflow.runName
                story.json
                thumbnail.jpeg
                minerva
                    index.html
                    exhibit.json
                    Group1...
                        tile1.jpeg
                        ...
                    ...

The intention of the two occurrences of run name were

  1. To allow for multiple runs within the same outdir (does not seem very Nextflowy - we should just change the outdir if we want.
  2. To allow for versions to be specified by the run name once the assets are staged in our public bucket (this works to a point but does not really get used and provides a very confusing output structure

I'm proposing this is simplified by removing both of these nested run names.
Story.json will also be moved under the minerva directory

The new structure would be

outdir
    meta.id
        thumbnail.jpeg
        minerva
            index.html
            exhibit.json
            story.json
            Group1...
                tile1.jpeg
                ...
            ...

@thomasyu888
Copy link

We should make sure that different tower executions will write to different buckets so you're not overwriting anything.

That said, I agree with this simplification.

@adamjtaylor
Copy link
Collaborator Author

Is there a best-practice way to do this? Or OK to leave to good user practice to change the outdir for each run?

Copy link

@rxu17 rxu17 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Had a few comments/questions.

Should we also have a README that just briefly describes the output directory structure here?

Also, is there a release versioning system that nf-artist runs under so we can version by that as a top-level folder for the outputs since we are removing the nextflow workflow name? It could be a parameter we enter (or it can be attached to a repo tag?).

modules/render_pyramid.nf Show resolved Hide resolved
@adamjtaylor
Copy link
Collaborator Author

@rxu17 I've added the output structure to the README.md in #9

@adamjtaylor
Copy link
Collaborator Author

@rxu17, @thomasyu888 looking at nf-core for best-practice guidance, I don't see anything about adding any automated versioning or id- or run-name based structure into the output directory. I think we are therefore good to continue with the simplified approach in this PR and leave it up to the user to be aware of their output versioning etc.

@adamjtaylor adamjtaylor self-assigned this Aug 22, 2023
Copy link

@thomasyu888 thomasyu888 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@adamjtaylor adamjtaylor merged commit 1cd7beb into main Aug 24, 2023
3 checks passed
@adamjtaylor adamjtaylor deleted the simplify_output branch August 24, 2023 14:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants