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

Add a "needs" option to projects, actions and groups #44

Closed
LauJosefsen opened this issue Mar 31, 2022 · 1 comment · Fixed by #53
Closed

Add a "needs" option to projects, actions and groups #44

LauJosefsen opened this issue Mar 31, 2022 · 1 comment · Fixed by #53
Assignees
Labels
enhancement New feature or request

Comments

@LauJosefsen
Copy link
Contributor

Should work like gitlab CI, creating acyclic graphs of execution.

@LauJosefsen
Copy link
Contributor Author

If a needs: string[] is specified, a priority cannot be specified

Order of execution:

  • (Verify graph is acyclic)
  • Select all actions without a needs key
  • Group those actions by priority
  • For loop those priority groups:
    • When an action is resolved, go through the remaining action and pop the resolved action from all needs.
    • If a action now has an empty needs array, add it to execution
    • IF list of actions executing is empty, go to next priority group
  • IF the list of actions to be executed is NOT empty, report error. This should not happen, if the graph is verified acyclic to begin with.

@LauJosefsen LauJosefsen self-assigned this Apr 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Development

Successfully merging a pull request may close this issue.

1 participant