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

consumer: workflow-submission queue #77

Merged
merged 7 commits into from
Jan 16, 2019

Conversation

dinosk
Copy link
Member

@dinosk dinosk commented Dec 17, 2018

  • Adds workflow-submission queue to default queues.
    Refactors configuration to allow for multiple default queues,
    linked with their parameters.

Connects reanahub/reana#119
Depends on reanahub/pytest-reana#36

Signed-off-by: Dinos Kousidis dinos.kousidis@cern.ch

* Adds workflow-submission queue to default queues.
  Refactors configuration to allow for multiple default queues,
  linked with their parameters.

Signed-off-by: Dinos Kousidis <dinos.kousidis@cern.ch>
@dinosk dinosk force-pushed the 119-workflow-submission-queue branch from 1d55fb7 to 5400f12 Compare December 17, 2018 14:27
@dinosk dinosk force-pushed the 119-workflow-submission-queue branch 4 times, most recently from d774212 to 7dafafe Compare December 17, 2018 18:26
* Adds BasePublisher class. Splits the common part of
  WorkflowStatusPublisher to a base class.

* Adds WorkflowSubmissionPublisher to be used for enqueueing to the
  workflow submission queue.

* Adds sample reana_ready task to check for system availability to
  start new workflow executions.

Signed-off-by: Dinos Kousidis <dinos.kousidis@cern.ch>
@dinosk dinosk force-pushed the 119-workflow-submission-queue branch 5 times, most recently from 80b3cba to 5c07f20 Compare December 18, 2018 14:02
Signed-off-by: Dinos Kousidis <dinos.kousidis@cern.ch>
@dinosk dinosk force-pushed the 119-workflow-submission-queue branch 11 times, most recently from 176324b to b3b08c6 Compare December 19, 2018 14:27
@dinosk dinosk force-pushed the 119-workflow-submission-queue branch 2 times, most recently from ed7a4db to 559f1ab Compare December 21, 2018 11:14
@dinosk dinosk force-pushed the 119-workflow-submission-queue branch 11 times, most recently from 937307e to 7408e91 Compare January 14, 2019 14:59
"""Minimum allocatable pod capacity in cluster to start new workflows."""

K8S_MAXIMUM_CONCURRENT_JOBS = 1
"""Upper limit on concurrent jobs running in the cluster."""
Copy link
Member

Choose a reason for hiding this comment

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

Please check the BSM example and set the defaults very liberally so that almost any input would be accepted... One workflow can generate many jobs and the system may suffer, but we only need to protect ourselves from people starting ~N workflows at the same time.

Also it would be good if these are easily user-settable, e.g. reana-cluster template variable taking precedence.

Copy link
Member Author

Choose a reason for hiding this comment

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

With 10 concurrent jobs the BSM example ran on my machine ok. I agree it should be cluster configuration and not in reana-commons - to be improved.

@dinosk dinosk force-pushed the 119-workflow-submission-queue branch 2 times, most recently from ce23cfa to 38a4de8 Compare January 16, 2019 10:43
* Adds task calling k8s api to check if there are sufficient
  allocatable resources available in any nodes of the cluster.

* Adds REANA_READY_CONDITIONS list containing functions, that define
  the conditions required to start workflows that are queued.
  First 2 conditions are checking the k8s predefined conditions for
  the node status, and an upper limit for concurrently running jobs.

Signed-off-by: Dinos Kousidis <dinos.kousidis@cern.ch>
* Adds kwargs to constructors of derived publisher classes.

* Adds test for reana_ready() task, asserting that the defined
  conditions for starting queued workflows in the config are
  checked properly.

Signed-off-by: Dinos Kousidis <dinos.kousidis@cern.ch>
Signed-off-by: Dinos Kousidis <dinos.kousidis@cern.ch>
Signed-off-by: Dinos Kousidis <dinos.kousidis@cern.ch>
@dinosk dinosk force-pushed the 119-workflow-submission-queue branch from a2e90ae to e05adab Compare January 16, 2019 15:00
@dinosk dinosk merged commit e05adab into reanahub:master Jan 16, 2019
@ghost ghost removed the Status: in review label Jan 16, 2019
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.

None yet

3 participants