-
Notifications
You must be signed in to change notification settings - Fork 150
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
Authentication are not referenceable #904
Comments
I would also add as an argument in favour of this proposal (at the end oneof has to be managed in other areas, for example tasks) that this way all authentication information is located in the same section of the workflow definition, making it easier its review (or changing it, although I believe that authentication information is more "variable" than flow definition and that we should provide means to optionally read it from external properties files. That way, once the workflow definition is "stable", if the auth information change, you need to change the external property file, not the workflow definition itself) |
Totally agree! And even though users are still free to declare authentication inline (as I believe we shouldn't impose our will), we should probably insist, in the documentation, that the recommended way is to place them at top level instead, for all the good reasons you just provided. |
Yes, totally agree, too. One way to deal with it so far is using |
@cdavernas As we have |
@fjtirado so you would like to add a keyword that contains, just as If I understood correctly your proposal, I'm definitely up for it. I would however avoid the suggested abbreviation and change itto: Could you create the issue to tackle that proposal, and the subsequent PR? |
@cdavernas Any of your proposed names is fine for me :), pick the one you prefer ;) |
Chat GPT feedback on the question:In the context of the Serverless Workflow DSL, the name for the argument containing declarative data for a workflow instance should ideally reflect its purpose and usage clearly. Let's consider the options provided:
Given these considerations, Configuration stands out as a clear and appropriate name since it suggests that the data is used to set up or control the workflow's operation. Alternative Suggestions
Final RecommendationOut of all these options, Configuration seems the most fitting because it clearly suggests the purpose of the data in controlling or defining the workflow's behavior. If further clarity is needed, a combination term like WorkflowConfiguration or InstanceConfiguration could also be considered to be more descriptive. My vote goes to What do you guys think @ricardozanini @fjtirado @JBBianchi @matthias-pichler-warrify ? |
@cdavernas To clarify if I understand the proposal ... you are proposing to add: document: {}
use:
secrets:
- foo
configure:
bar: 1
do:
- task1:
set:
size: ${ $configuration.size } |
I think my understanding differs from GPTs here. In my head they would be immutable ... right? I'd prefer document: {}
use:
secrets:
- foo
constants:
bar: 1
do:
- task1:
set:
size: ${ $constants.size }
shape: ${ $secrets.foo } |
@matthias-pichler-warrify |
Ah ok I somehow missed the "loaded at execution start". But hat is optional is it? They might be defined in the definition as well right? I mean to some extent they are still constant for the duration of the execution... I think if we go with |
@matthias-pichler-warrify |
@fjtirado That is actually a very good point 👍 and actually I would argue that the specification should clarify this! (Whether configuration values can change within one execution) I have a preference for configuration staying constant for the duration of an execution. Otherwise it might cause weird config drift for long running executions |
@matthias-pichler-warrify I will fight for implementation freedom ;) |
What seems off:
Authentication are not referenceable
What you expected to be:
Authentications defined at top level should be referenceable
Anything else we need to know?:
After discussing the issue with @matthias-pichler-warrify, and well aware than the reference system previously in place was a PITA (oneOf[AuthenticationDefinition, string]), the proposal is something like the following:
While enabling the same than before, it:
One a side note, we could instead of
use
name itref
or whatever. My strong preference goes touse
, which is more fluent, understandable, linguistical, is an imperative verb, and is not an abbreviation.The text was updated successfully, but these errors were encountered: