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

Polish Workflow Refactoring API #11005

Open
8 of 13 tasks
jmchilton opened this issue Dec 28, 2020 · 6 comments
Open
8 of 13 tasks

Polish Workflow Refactoring API #11005

jmchilton opened this issue Dec 28, 2020 · 6 comments

Comments

@jmchilton
Copy link
Member

jmchilton commented Dec 28, 2020

Post merge of #10988 which introduced this API.

@mvdbeek
Copy link
Member

mvdbeek commented Dec 30, 2020

Do you think it'd be possible to also extend this to check for invalid references ? E.g referring to #{some_output}, when some_output is not a tool output?

@jmchilton
Copy link
Member Author

Do you think it'd be possible to also extend this to check for invalid references ? E.g referring to #{some_output}, when some_output is not a tool output?

Tracked that on #10989 - seems like a really good idea. I think the client has everything that would be needed - I think recovering the logic for how we reference nested inputs on the client would be the hardest part?

@simonbray
Copy link
Member

What about a UpgradeWorkflow action to update all tools and subworkflows automatically? I think that would be useful both through the API and the UI. Currently, as far as I understand, you have to loop through all workflow steps with UpgradeTool and UpgradeSubworkflow actions.

@jmchilton
Copy link
Member Author

UpgradeWorkflow seems like a solid idea to me! I don't know if I'll have time to work on it in Q1 but it is a good thing to keep in mind. I think the hardest part would simply be fixing up the tool upgrade action to the point that we would want to expose it to users. The subworkflow upgrade logic for dropping connections and workflow outputs would need to be refactored to be reused when apply the upgrade tool action. After that was working, I think it would simply be a matter of looping over the workflow and executing these steps when needed.

@simonbray
Copy link
Member

Maybe I could work on this?

the hardest part would simply be fixing up the tool upgrade action to the point that we would want to expose it to users

Can you elaborate? I guess you are referring to this comment here:

# TODO: recalculate connections and record messages...

@jmchilton
Copy link
Member Author

Yeah - that comment. There is a bunch of code in the prior method that works on subworkflow modules that can be refactored and reused for tools.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants