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

Transfer selected blocks from global_variables to case metadata #339

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

perolavsvendsen
Copy link
Member

First stab at partial solving of #337

This PR will transfer selected blocks from global_variables.yml into case metadata, when they exist.

@perolavsvendsen
Copy link
Member Author

Note that:

  • The list of blocks to fetch from global_variables is predefined in fmu-dataio. E.g. a random user can not specify a "random" block. In other words; a standard is inferred here. Not sure if this actually exists.
  • If a requested block does not exist, or has a different type than expected, warn and move on. We do not want the generation of case metadata to fail at this point, because debugging that from an end user perspective is close to impossible as long as this runs in a HOOK workflow. (The main FMU run will move on regardless of success of the HOOK or not, so if this fails, user will experience failure on all later uploads but it will not be intuitive what caused it.)

Copy link
Contributor

Choose a reason for hiding this comment

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

I see that the definition of blocks to be in the case metadata seems logical, but isn't it a bit challenging with the contacts and other relevant things, could be volume factors etc.

Copy link
Member Author

Choose a reason for hiding this comment

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

In this proposal, only one new block in the (case) metadata, which is fmu.case.config. And then "whatever" into that. I.e. we don't validate in detail, so fmu-dataio can technically include anything into that block.

But given the ongoing discussion around parameters.txt where we are leaning towards having that as a separate data object, we might discuss this PR in that perspective as well. Should case config be a separate data object? 🤷‍♂️

Copy link
Member Author

Choose a reason for hiding this comment

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

And, another point - which is possibly what you meant - is access control and information classification. We cannot have a situation where someone is to be granted access to only parts of the case metadata, that would not work.

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.

2 participants