From 35ee032da142916b4c966b2a2077a720a5710664 Mon Sep 17 00:00:00 2001 From: Marco Donadoni Date: Thu, 22 Feb 2024 15:38:17 +0100 Subject: [PATCH 1/2] feat(helm): add values to customise env vars of workflow engines (#781) --- helm/reana/README.md | 4 ++++ helm/reana/templates/reana-workflow-controller.yaml | 9 +++++++++ helm/reana/values.yaml | 4 ++++ 3 files changed, 17 insertions(+) diff --git a/helm/reana/README.md b/helm/reana/README.md index 151c408e..ebf11d55 100644 --- a/helm/reana/README.md +++ b/helm/reana/README.md @@ -50,9 +50,13 @@ This Helm automatically prefixes all names using the release name to avoid colli | `components.reana_workflow_controller.environment.REANA_JOB_HOSTPATH_MOUNTS` | JSON list of optional hostPath mounts, for all user jobs. Each mount object has a key `name` (name of the mount), `hostPath` (path to the directory to be mounted from the Kubernetes nodes) and `mountPath` (path inside the job containers where the `hostPath` will be mounted) | None | | `components.reana_workflow_controller.environment.REANA_RUNTIME_KUBERNETES_KEEP_ALIVE_JOBS_WITH_STATUSES` | Keep alive Kubernetes user runtime jobs depending on status (`finished` and/or `failed`). | None | | `components.reana_workflow_controller.environment.REANA_JOB_STATUS_CONSUMER_PREFETCH_COUNT` | Define max number of unacknowledged deliveries that are permitted on `jobs-status` queue consumer. | 10 | +| `components.reana_workflow_engine_cwl.environment` | [REANA-Workflow-Engine-CWL](https://github.com/reanahub/reana-workflow-engine-cwl) environment variables | `{}` | | `components.reana_workflow_engine_cwl.image` | [REANA-Workflow-Engine-CWL image](https://hub.docker.com/r/reanahub/reana-workflow-engine-cwl) to use | `docker.io/reanahub/reana-workflow-engine-cwl:` | +| `components.reana_workflow_engine_serial.environment` | [REANA-Workflow-Engine-Serial](https://github.com/reanahub/reana-workflow-engine-serial) environment variables | `{}` | | `components.reana_workflow_engine_serial.image` | [REANA-Workflow-Engine-Serial image](https://hub.docker.com/r/reanahub/reana-workflow-engine-serial) to use | `docker.io/reanahub/reana-workflow-engine-serial:` | +| `components.reana_workflow_engine_yadage.environment` | [REANA-Workflow-Engine-yadage](https://github.com/reanahub/reana-workflow-engine-yadage) environment variables | `{}` | | `components.reana_workflow_engine_yadage.image` | [REANA-Workflow-Engine-Yadage image](https://hub.docker.com/r/reanahub/reana-workflow-engine-yadage) to use | `docker.io/reanahub/reana-workflow-engine-yadage:` | +| `components.reana_workflow_engine_snakemake.environment` | [REANA-Workflow-Engine-Snakemake](https://github.com/reanahub/reana-workflow-engine-snakemake) environment variables | `{}` | | `components.reana_workflow_engine_snakemake.image` | [REANA-Workflow-Engine-Snakemake image](https://hub.docker.com/r/reanahub/reana-workflow-engine-snakemake) to use | `docker.io/reanahub/reana-workflow-engine-snakemake:` | | `compute_backends` | List of supported compute backends (kubernetes, htcondorcern, slurmcern) | "kubernetes" | | `db_env_config.REANA_DB_HOST` | Environment variable to connect to external databases | `-db` | diff --git a/helm/reana/templates/reana-workflow-controller.yaml b/helm/reana/templates/reana-workflow-controller.yaml index 2bec0e54..aa541be6 100644 --- a/helm/reana/templates/reana-workflow-controller.yaml +++ b/helm/reana/templates/reana-workflow-controller.yaml @@ -146,6 +146,15 @@ spec: value: {{ .Values.components.reana_workflow_engine_serial.image }} - name: REANA_WORKFLOW_ENGINE_IMAGE_SNAKEMAKE value: {{ .Values.components.reana_workflow_engine_snakemake.image }} + # Environment variables for workflow engines + - name: REANA_WORKFLOW_ENGINE_CWL_ENV_VARS + value: {{ .Values.components.reana_workflow_engine_cwl.environment | toJson | quote }} + - name: REANA_WORKFLOW_ENGINE_SERIAL_ENV_VARS + value: {{ .Values.components.reana_workflow_engine_serial.environment | toJson | quote }} + - name: REANA_WORKFLOW_ENGINE_SNAKEMAKE_ENV_VARS + value: {{ .Values.components.reana_workflow_engine_snakemake.environment | toJson | quote }} + - name: REANA_WORKFLOW_ENGINE_YADAGE_ENV_VARS + value: {{ .Values.components.reana_workflow_engine_yadage.environment | toJson | quote }} {{- if .Values.reana_hostname }} - name: REANA_HOSTNAME value: {{ .Values.reana_hostname }} diff --git a/helm/reana/values.yaml b/helm/reana/values.yaml index 7633ed44..5fc96f2d 100644 --- a/helm/reana/values.yaml +++ b/helm/reana/values.yaml @@ -108,12 +108,16 @@ components: REANA_JOB_STATUS_CONSUMER_PREFETCH_COUNT: 10 reana_workflow_engine_cwl: image: docker.io/reanahub/reana-workflow-engine-cwl:0.9.2 + environment: {} reana_workflow_engine_yadage: image: docker.io/reanahub/reana-workflow-engine-yadage:0.9.3 + environment: {} reana_workflow_engine_serial: image: docker.io/reanahub/reana-workflow-engine-serial:0.9.2 + environment: {} reana_workflow_engine_snakemake: image: docker.io/reanahub/reana-workflow-engine-snakemake:0.9.2 + environment: {} reana_job_controller: image: docker.io/reanahub/reana-job-controller:0.9.2 reana_message_broker: From 634691fd32cfb08d59eafbae66f23ebc384ca84b Mon Sep 17 00:00:00 2001 From: Marco Donadoni Date: Thu, 22 Feb 2024 15:40:20 +0100 Subject: [PATCH 2/2] feat(helm): add value to customise env vars of job controller (#781) --- helm/reana/README.md | 1 + helm/reana/templates/reana-workflow-controller.yaml | 3 +++ helm/reana/values.yaml | 1 + 3 files changed, 5 insertions(+) diff --git a/helm/reana/README.md b/helm/reana/README.md index ebf11d55..0786f189 100644 --- a/helm/reana/README.md +++ b/helm/reana/README.md @@ -10,6 +10,7 @@ This Helm automatically prefixes all names using the release name to avoid colli |----------------------------------------------------------|--------------------------------------------------------------------------------------|-------------------------------------------------| | `components.reana_db.enabled` | Instantiate a PostgreSQL database inside the cluster | true | | `components.reana_db.image` | [PostgreSQL image](https://hub.docker.com/_/postgres) to use | `docker.io/library/postgres:12.13` | +| `components.reana_job_controller.environment` | [REANA-Job-Controller](https://github.com/reanahub/reana-job-controller) environment variables | `{}` | | `components.reana_job_controller.image` | [REANA-Job-Controller image](https://hub.docker.com/r/reanahub/reana-job-controller) to use | `docker.io/reanahub/reana-job-controller:` | | `components.reana_message_broker.image` | [REANA-Message-Broker image](https://hub.docker.com/r/reanahub/reana-message-broker) to use | `docker.io/reanahub/reana-message-broker:` | | `components.reana_message_broker.imagePullPolicy` | REANA-Message-Broker image pull policy | IfNotPresent | diff --git a/helm/reana/templates/reana-workflow-controller.yaml b/helm/reana/templates/reana-workflow-controller.yaml index aa541be6..3133bd76 100644 --- a/helm/reana/templates/reana-workflow-controller.yaml +++ b/helm/reana/templates/reana-workflow-controller.yaml @@ -155,6 +155,9 @@ spec: value: {{ .Values.components.reana_workflow_engine_snakemake.environment | toJson | quote }} - name: REANA_WORKFLOW_ENGINE_YADAGE_ENV_VARS value: {{ .Values.components.reana_workflow_engine_yadage.environment | toJson | quote }} + # Environment variables for job controller + - name: REANA_JOB_CONTROLLER_ENV_VARS + value: {{ .Values.components.reana_job_controller.environment | toJson | quote }} {{- if .Values.reana_hostname }} - name: REANA_HOSTNAME value: {{ .Values.reana_hostname }} diff --git a/helm/reana/values.yaml b/helm/reana/values.yaml index 5fc96f2d..b890a7fb 100644 --- a/helm/reana/values.yaml +++ b/helm/reana/values.yaml @@ -120,6 +120,7 @@ components: environment: {} reana_job_controller: image: docker.io/reanahub/reana-job-controller:0.9.2 + environment: {} reana_message_broker: imagePullPolicy: IfNotPresent image: docker.io/reanahub/reana-message-broker:0.9.2