From 1ca9deaf1b73e18774019cf1e0cb5cc1fb1c3016 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tibor=20=C5=A0imko?= Date: Fri, 22 Nov 2024 11:44:35 +0100 Subject: [PATCH 1/9] feat(scripts): upgrade to Jupyter SciPy 7.2.2 notebook (#846) --- scripts/prefetch-images.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/prefetch-images.sh b/scripts/prefetch-images.sh index f331f117..67522fbb 100755 --- a/scripts/prefetch-images.sh +++ b/scripts/prefetch-images.sh @@ -1,13 +1,12 @@ #!/bin/bash # # This file is part of REANA. -# Copyright (C) 2020, 2021, 2022, 2023 CERN. +# Copyright (C) 2020, 2021, 2022, 2023, 2024 CERN. # # REANA is free software; you can redistribute it and/or modify it # under the terms of the MIT License; see LICENSE file for more details. for image in \ - docker.io/jupyter/scipy-notebook:notebook-6.4.5 \ docker.io/maildev/maildev:1.1.0 \ docker.io/library/postgres:12.13 \ docker.io/library/redis:5.0.5 \ @@ -20,6 +19,7 @@ for image in \ docker.io/reanahub/reana-workflow-engine-serial:0.9.3 \ docker.io/reanahub/reana-workflow-engine-snakemake:0.9.3 \ docker.io/reanahub/reana-workflow-engine-yadage:0.9.4 \ + quay.io/jupyter/scipy-notebook:notebook-7.2.2 \ ; do docker pull $image kind load docker-image $image From be1207630b9cb6c694139d458cd3ea545747b95f Mon Sep 17 00:00:00 2001 From: Marco Donadoni Date: Thu, 23 May 2024 12:25:39 +0200 Subject: [PATCH 2/9] feat(helm): support password-protected redis (#847) REANA can now connect to password-protected Redis instances. --- helm/reana/README.md | 1 + helm/reana/templates/reana-cache.yaml | 9 +++++++++ helm/reana/templates/reana-server.yaml | 5 +++++ helm/reana/templates/secrets.yaml | 11 +++++++++++ helm/reana/values.yaml | 1 + 5 files changed, 27 insertions(+) diff --git a/helm/reana/README.md b/helm/reana/README.md index 0786f189..b7224126 100644 --- a/helm/reana/README.md +++ b/helm/reana/README.md @@ -98,6 +98,7 @@ This Helm automatically prefixes all names using the release name to avoid colli | `reana_hostname` | REANA hostname (e.g. reana.example.org) | None | | `namespace_runtime` | Namespace in which the REANA runtime pods (workflow engines, jobs etc...) will run | `.Release.Namespace` | | `naming_scheme` | REANA component naming scheme | None | +| `secrets.cache.password` | **[Do not use in production, use secrets instead]** Cache (Redis) password | None | | `secrets.cern.sso.CERN_CONSUMER_KEY` | CERN SSO consumer key | None | | `secrets.cern.sso.CERN_CONSUMER_SECRET` | **[Do not use in production, use secrets instead]** CERN SSO consumer secret | None | | `secrets.database.password` | **[Do not use in production, use secrets instead]** PostgreSQL database password | None | diff --git a/helm/reana/templates/reana-cache.yaml b/helm/reana/templates/reana-cache.yaml index 1f3fb8e2..4e79055a 100644 --- a/helm/reana/templates/reana-cache.yaml +++ b/helm/reana/templates/reana-cache.yaml @@ -31,6 +31,15 @@ spec: containers: - name: cache image: docker.io/library/redis:5.0.5 + env: + - name: REANA_CACHE_PASSWORD + valueFrom: + secretKeyRef: + name: {{ include "reana.prefix" . }}-cache-secrets + key: password + args: + - "--requirepass" + - "$(REANA_CACHE_PASSWORD)" ports: - containerPort: 6379 {{- if .Values.node_label_infrastructure }} diff --git a/helm/reana/templates/reana-server.yaml b/helm/reana/templates/reana-server.yaml index 82d4449e..422a0da3 100644 --- a/helm/reana/templates/reana-server.yaml +++ b/helm/reana/templates/reana-server.yaml @@ -151,6 +151,11 @@ spec: secretKeyRef: name: {{ include "reana.prefix" . }}-secrets key: REANA_SECRET_KEY + - name: REANA_CACHE_PASSWORD + valueFrom: + secretKeyRef: + name: {{ include "reana.prefix" . }}-cache-secrets + key: password {{- if .Values.debug.enabled }} # Disable CORS in development environment, for example # to connect from an external React application. diff --git a/helm/reana/templates/secrets.yaml b/helm/reana/templates/secrets.yaml index 2e165571..6c5be07d 100644 --- a/helm/reana/templates/secrets.yaml +++ b/helm/reana/templates/secrets.yaml @@ -13,6 +13,17 @@ data: --- apiVersion: v1 kind: Secret +metadata: + name: {{ include "reana.prefix" . }}-cache-secrets + namespace: {{ .Release.Namespace }} + annotations: + "helm.sh/resource-policy": keep +type: Opaque +data: + password: {{ .Values.secrets.cache.password | default "" | b64enc | quote }} +--- +apiVersion: v1 +kind: Secret metadata: name: {{ include "reana.prefix" . }}-cern-sso-secrets namespace: {{ .Release.Namespace }} diff --git a/helm/reana/values.yaml b/helm/reana/values.yaml index 219f2cff..0697b8ec 100644 --- a/helm/reana/values.yaml +++ b/helm/reana/values.yaml @@ -49,6 +49,7 @@ infrastructure_storage: {} secrets: database: {} + cache: {} gitlab: {} cern: sso: {} From 20a0ea8fcf854c74a508f0b415c066a9912fbe34 Mon Sep 17 00:00:00 2001 From: Marco Donadoni Date: Thu, 23 May 2024 15:14:46 +0200 Subject: [PATCH 3/9] feat(helm): support password-protected rabbitmq (#847) --- helm/reana/README.md | 2 ++ .../reana/templates/reana-message-broker.yaml | 15 ++++++++++++++ helm/reana/templates/reana-server.yaml | 20 +++++++++++++++++++ .../templates/reana-workflow-controller.yaml | 20 +++++++++++++++++++ helm/reana/templates/secrets.yaml | 12 +++++++++++ helm/reana/values.yaml | 1 + 6 files changed, 70 insertions(+) diff --git a/helm/reana/README.md b/helm/reana/README.md index b7224126..0697a532 100644 --- a/helm/reana/README.md +++ b/helm/reana/README.md @@ -107,6 +107,8 @@ This Helm automatically prefixes all names using the release name to avoid colli | `secrets.gitlab.REANA_GITLAB_OAUTH_APP_ID` | GitLab OAuth application id | None | | `secrets.gitlab.REANA_GITLAB_OAUTH_APP_SECRET` | **[Do not use in production, use secrets instead]** GitLab OAuth application secret | None | | `secrets.login` | **[Do not use in production, use secrets instead]** Third-party Keycloak identity provider consumer key and secret ([configuration details](https://docs.reana.io/administration/configuration/configuring-access/#keycloak-single-sign-on-configuration)) | `{}` | +| `secrets.message_broker.user` | Message broker (RabbitMQ) username. | test | +| `secrets.message_broker.password` | **[Do not use in production, use secrets instead]** Message broker (RabbitMQ) password | 1234 | | `secrets.reana.REANA_SECRET_KEY` | **[Do not use in production, use secrets instead]** REANA encryption secret key | None | | `serviceAccount.create` | Create a service account for the REANA system user | true | | `serviceAccount.name` | Service account name | reana | diff --git a/helm/reana/templates/reana-message-broker.yaml b/helm/reana/templates/reana-message-broker.yaml index 60ad1791..05dbf614 100644 --- a/helm/reana/templates/reana-message-broker.yaml +++ b/helm/reana/templates/reana-message-broker.yaml @@ -45,11 +45,26 @@ spec: - name: message-broker image: {{ .Values.components.reana_message_broker.image }} imagePullPolicy: {{ .Values.components.reana_message_broker.imagePullPolicy }} + env: + - name: RABBIT_MQ_USER + valueFrom: + secretKeyRef: + name: {{ include "reana.prefix" . }}-message-broker-secrets + key: user + - name: RABBIT_MQ_PASS + valueFrom: + secretKeyRef: + name: {{ include "reana.prefix" . }}-message-broker-secrets + key: password ports: - containerPort: 5672 name: tcp - containerPort: 15672 name: management + command: + - "/start.sh" + - "$(RABBIT_MQ_USER)" + - "$(RABBIT_MQ_PASS)" volumeMounts: - mountPath: /var/lib/rabbitmq/mnesia subPath: rabbitmq/mnesia diff --git a/helm/reana/templates/reana-server.yaml b/helm/reana/templates/reana-server.yaml index 422a0da3..4397b5ac 100644 --- a/helm/reana/templates/reana-server.yaml +++ b/helm/reana/templates/reana-server.yaml @@ -156,6 +156,16 @@ spec: secretKeyRef: name: {{ include "reana.prefix" . }}-cache-secrets key: password + - name: RABBIT_MQ_USER + valueFrom: + secretKeyRef: + name: {{ include "reana.prefix" . }}-message-broker-secrets + key: user + - name: RABBIT_MQ_PASS + valueFrom: + secretKeyRef: + name: {{ include "reana.prefix" . }}-message-broker-secrets + key: password {{- if .Values.debug.enabled }} # Disable CORS in development environment, for example # to connect from an external React application. @@ -282,6 +292,16 @@ spec: name: {{ include "reana.prefix" $ }}-login-provider-secrets key: PROVIDER_SECRETS {{- end }} + - name: RABBIT_MQ_USER + valueFrom: + secretKeyRef: + name: {{ include "reana.prefix" . }}-message-broker-secrets + key: user + - name: RABBIT_MQ_PASS + valueFrom: + secretKeyRef: + name: {{ include "reana.prefix" . }}-message-broker-secrets + key: password volumes: - name: reana-shared-volume {{- if not (eq .Values.shared_storage.backend "hostpath") }} diff --git a/helm/reana/templates/reana-workflow-controller.yaml b/helm/reana/templates/reana-workflow-controller.yaml index 028d07a2..93fb205a 100644 --- a/helm/reana/templates/reana-workflow-controller.yaml +++ b/helm/reana/templates/reana-workflow-controller.yaml @@ -206,6 +206,16 @@ spec: name: {{ include "reana.prefix" . }}-db-secrets key: password {{ end }} + - name: RABBIT_MQ_USER + valueFrom: + secretKeyRef: + name: {{ include "reana.prefix" . }}-message-broker-secrets + key: user + - name: RABBIT_MQ_PASS + valueFrom: + secretKeyRef: + name: {{ include "reana.prefix" . }}-message-broker-secrets + key: password - name: job-status-consumer image: {{ .Values.components.reana_workflow_controller.image }} imagePullPolicy: {{ .Values.components.reana_workflow_controller.imagePullPolicy }} @@ -269,6 +279,16 @@ spec: secretKeyRef: name: {{ include "reana.prefix" . }}-cern-gitlab-secrets key: REANA_GITLAB_HOST + - name: RABBIT_MQ_USER + valueFrom: + secretKeyRef: + name: {{ include "reana.prefix" . }}-message-broker-secrets + key: user + - name: RABBIT_MQ_PASS + valueFrom: + secretKeyRef: + name: {{ include "reana.prefix" . }}-message-broker-secrets + key: password volumes: - name: reana-shared-volume {{- if not (eq .Values.shared_storage.backend "hostpath") }} diff --git a/helm/reana/templates/secrets.yaml b/helm/reana/templates/secrets.yaml index 6c5be07d..9947c1ce 100644 --- a/helm/reana/templates/secrets.yaml +++ b/helm/reana/templates/secrets.yaml @@ -24,6 +24,18 @@ data: --- apiVersion: v1 kind: Secret +metadata: + name: {{ include "reana.prefix" . }}-message-broker-secrets + namespace: {{ .Release.Namespace }} + annotations: + "helm.sh/resource-policy": keep +type: Opaque +data: + user: {{ .Values.secrets.message_broker.user | default "test" | b64enc | quote }} + password: {{ .Values.secrets.message_broker.password | default "1234" | b64enc | quote }} +--- +apiVersion: v1 +kind: Secret metadata: name: {{ include "reana.prefix" . }}-cern-sso-secrets namespace: {{ .Release.Namespace }} diff --git a/helm/reana/values.yaml b/helm/reana/values.yaml index 0697b8ec..11a27eeb 100644 --- a/helm/reana/values.yaml +++ b/helm/reana/values.yaml @@ -50,6 +50,7 @@ infrastructure_storage: {} secrets: database: {} cache: {} + message_broker: {} gitlab: {} cern: sso: {} From e1772ffb39d2b1b4c91893f6eda0301edabb105f Mon Sep 17 00:00:00 2001 From: Marco Donadoni Date: Fri, 24 May 2024 14:39:15 +0200 Subject: [PATCH 4/9] feat(helm): allow only reana-server to connect to reana-cache (#847) Add `NetworkPolicy` that only allows reana-server to connect to reana-cache, as other services do not rely on it. --- helm/reana/templates/reana-cache.yaml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/helm/reana/templates/reana-cache.yaml b/helm/reana/templates/reana-cache.yaml index 4e79055a..96088c3a 100644 --- a/helm/reana/templates/reana-cache.yaml +++ b/helm/reana/templates/reana-cache.yaml @@ -13,6 +13,23 @@ spec: targetPort: 6379 protocol: TCP --- +apiVersion: networking.k8s.io/v1 +kind: NetworkPolicy +metadata: + name: {{ include "reana.prefix" . }}-cache + namespace: {{ .Release.Namespace }} +spec: + podSelector: + matchLabels: + app: {{ include "reana.prefix" . }}-cache + policyTypes: + - Ingress + ingress: + - from: + - podSelector: + matchLabels: + app: {{ include "reana.prefix" . }}-server +--- apiVersion: apps/v1 kind: Deployment metadata: From fab559187a49c21d368c4863cd0a888ff831c330 Mon Sep 17 00:00:00 2001 From: Marco Donadoni Date: Thu, 27 Jun 2024 17:36:39 +0200 Subject: [PATCH 5/9] docs(helm): clarify secrets-related warning in README (#847) --- helm/reana/README.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/helm/reana/README.md b/helm/reana/README.md index 0697a532..2518f711 100644 --- a/helm/reana/README.md +++ b/helm/reana/README.md @@ -98,18 +98,18 @@ This Helm automatically prefixes all names using the release name to avoid colli | `reana_hostname` | REANA hostname (e.g. reana.example.org) | None | | `namespace_runtime` | Namespace in which the REANA runtime pods (workflow engines, jobs etc...) will run | `.Release.Namespace` | | `naming_scheme` | REANA component naming scheme | None | -| `secrets.cache.password` | **[Do not use in production, use secrets instead]** Cache (Redis) password | None | +| `secrets.cache.password` | **[Do not save it in `values.yaml`, pass it to Helm with `--set`]** Cache (Redis) password | None | | `secrets.cern.sso.CERN_CONSUMER_KEY` | CERN SSO consumer key | None | -| `secrets.cern.sso.CERN_CONSUMER_SECRET` | **[Do not use in production, use secrets instead]** CERN SSO consumer secret | None | -| `secrets.database.password` | **[Do not use in production, use secrets instead]** PostgreSQL database password | None | +| `secrets.cern.sso.CERN_CONSUMER_SECRET` | **[Do not save it in `values.yaml`, pass it to Helm with `--set`]** CERN SSO consumer secret | None | +| `secrets.database.password` | **[Do not save it in `values.yaml`, pass it to Helm with `--set`]** PostgreSQL database password | None | | `secrets.database.user` | PostgreSQL database username | None | | `secrets.gitlab.REANA_GITLAB_HOST` | Hostname of the GitLab instance | None | | `secrets.gitlab.REANA_GITLAB_OAUTH_APP_ID` | GitLab OAuth application id | None | -| `secrets.gitlab.REANA_GITLAB_OAUTH_APP_SECRET` | **[Do not use in production, use secrets instead]** GitLab OAuth application secret | None | -| `secrets.login` | **[Do not use in production, use secrets instead]** Third-party Keycloak identity provider consumer key and secret ([configuration details](https://docs.reana.io/administration/configuration/configuring-access/#keycloak-single-sign-on-configuration)) | `{}` | +| `secrets.gitlab.REANA_GITLAB_OAUTH_APP_SECRET` | **[Do not save it in `values.yaml`, pass it to Helm with `--set`]** GitLab OAuth application secret | None | +| `secrets.login` | **[Do not save it in `values.yaml`, pass it to Helm with `--set`]** Third-party Keycloak identity provider consumer key and secret ([configuration details](https://docs.reana.io/administration/configuration/configuring-access/#keycloak-single-sign-on-configuration)) | `{}` | | `secrets.message_broker.user` | Message broker (RabbitMQ) username. | test | -| `secrets.message_broker.password` | **[Do not use in production, use secrets instead]** Message broker (RabbitMQ) password | 1234 | -| `secrets.reana.REANA_SECRET_KEY` | **[Do not use in production, use secrets instead]** REANA encryption secret key | None | +| `secrets.message_broker.password` | **[Do not save it in `values.yaml`, pass it to Helm with `--set`]** Message broker (RabbitMQ) password | 1234 | +| `secrets.reana.REANA_SECRET_KEY` | **[Do not save it in `values.yaml`, pass it to Helm with `--set`]** REANA encryption secret key | None | | `serviceAccount.create` | Create a service account for the REANA system user | true | | `serviceAccount.name` | Service account name | reana | | `shared_storage.access_modes` | Shared volume access mode | ReadWriteMany | @@ -121,7 +121,7 @@ This Helm automatically prefixes all names using the release name to avoid colli | `shared_storage.cephfs.os_secret_namespace` | **[CERN only]** Namespace of the OpenStack credentials Secret object | kube-system | | `shared_storage.cephfs.provisioner` | **[CERN only]** CephFS provisioner | manila-provisioner | | `shared_storage.cephfs.type` | **[CERN only]** CephFS availability zone | "Geneva CephFS Testing" | -| `shared_storage.volume_size`               | Shared volume size | 200 | +| `shared_storage.volume_size` | Shared volume size | 200 | | `shared_storage.shared_volume_mount_path` | Path inside the REANA components where the shared volume will be mounted | /var/reana | | `shared_storage.hostpath.root_path` | Path to the REANA directory inside the underlying storage volume | /var/reana | | `traefik.*` | Pass any value from [Traefik Helm chart values](https://github.com/helm/charts/tree/master/stable/traefik#configuration) here, e.g. `traefik.rbac.enabled=true` | - | From 1a98b0ab4d248544a03d83da13a66b399819f713 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tibor=20=C5=A0imko?= Date: Sat, 23 Nov 2024 20:46:35 +0100 Subject: [PATCH 6/9] feat(helm): release check on most-supported Kubernetes version (#848) Since Kubernetes 1.22, there was never a big need to actually upgrade REANA source code to make it work on new Kubernetes releases. (This is thanks to the fact that REANA uses pretty stable Kubernetes API internally.) This commit therefore releases the upper boundary check on the supported Kubernetes versions in order to be more welcoming to future Kubernetes upgrades, alleviating the need to manually bump the supported version number. --- helm/reana/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/helm/reana/Chart.yaml b/helm/reana/Chart.yaml index ed58383f..55aeb31b 100644 --- a/helm/reana/Chart.yaml +++ b/helm/reana/Chart.yaml @@ -27,7 +27,7 @@ keywords: - reusable-science type: application version: 0.9.3 -kubeVersion: '>= 1.21.0-0 < 1.32.0-0' +kubeVersion: '>= 1.21.0-0' dependencies: - name: traefik version: 10.6.2 From b9bc602fc5be2ab717d2c09cb9018b6e5ca8180e Mon Sep 17 00:00:00 2001 From: Marco Donadoni Date: Wed, 7 Aug 2024 11:41:00 +0200 Subject: [PATCH 7/9] fix(helm): allow interactive-session-cleanup job to access RWC (#853) Closes reanahub/reana-server#694 (cherry picked from commit a288636f295e99d28b2d3e1b83095e0c5670d5f3) --- helm/reana/templates/cronjobs.yaml | 12 ++++++++++++ helm/reana/templates/reana-workflow-controller.yaml | 3 +++ 2 files changed, 15 insertions(+) diff --git a/helm/reana/templates/cronjobs.yaml b/helm/reana/templates/cronjobs.yaml index be6c2640..02e0db89 100644 --- a/helm/reana/templates/cronjobs.yaml +++ b/helm/reana/templates/cronjobs.yaml @@ -16,6 +16,9 @@ spec: jobTemplate: spec: template: + metadata: + labels: + app: {{ include "reana.prefix" . }}-system-status spec: serviceAccountName: {{ include "reana.prefixed_infrastructure_svaccount_name" . }} containers: @@ -141,6 +144,9 @@ spec: jobTemplate: spec: template: + metadata: + labels: + app: {{ include "reana.prefix" . }}-resource-quota-update spec: containers: - name: {{ include "reana.prefix" . }}-resource-quota-update @@ -226,6 +232,9 @@ spec: jobTemplate: spec: template: + metadata: + labels: + app: {{ include "reana.prefix" . }}-retention-rules-apply spec: containers: - name: {{ include "reana.prefix" . }}-retention-rules-apply @@ -319,6 +328,9 @@ spec: jobTemplate: spec: template: + metadata: + labels: + app: {{ include "reana.prefix" . }}-interactive-session-cleanup spec: serviceAccountName: {{ include "reana.prefixed_infrastructure_svaccount_name" . }} containers: diff --git a/helm/reana/templates/reana-workflow-controller.yaml b/helm/reana/templates/reana-workflow-controller.yaml index 93fb205a..6f3e30c6 100644 --- a/helm/reana/templates/reana-workflow-controller.yaml +++ b/helm/reana/templates/reana-workflow-controller.yaml @@ -30,6 +30,9 @@ spec: - podSelector: matchLabels: app: {{ include "reana.prefix" . }}-server + - podSelector: + matchLabels: + app: {{ include "reana.prefix" . }}-interactive-session-cleanup --- apiVersion: apps/v1 kind: Deployment From 32549d1f4f1ce06d6be015721d8abc1598dba5b1 Mon Sep 17 00:00:00 2001 From: Marco Donadoni Date: Mon, 2 Dec 2024 16:44:45 +0100 Subject: [PATCH 8/9] fix(reana-dev): correctly handle missing changelog of components (#858) Fix `git-aggregate-changelog` to correctly handle components that were not released for the new REANA release. Previously, the script was aggregating the changelog of at least one version, even if it was already part of a previous release. Closes #857 --- reana/reana_dev/git.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/reana/reana_dev/git.py b/reana/reana_dev/git.py index feea136e..3d7f889a 100644 --- a/reana/reana_dev/git.py +++ b/reana/reana_dev/git.py @@ -1816,7 +1816,9 @@ def get_aggregate_changelog(previous_reana_client): # noqa: D301 ) # also add current version, as it might not be tagged yet - versions_to_add.add(get_current_component_version_from_source_files(component)) + current_version = get_current_component_version_from_source_files(component) + if current_version != prev_version: + versions_to_add.add(current_version) aggregated_changelog_lines += get_formatted_changelog_lines( component, versions_to_add From b4d1864f08154155856e1c608b3456b46ed9d74d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 3 Dec 2024 10:45:33 +0000 Subject: [PATCH 9/9] chore(maint-0.9): release 0.9.4 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 119 ++++++++++++++++++++++++++++++++++ helm/reana/Chart.yaml | 2 +- helm/reana/values.yaml | 14 ++-- reana/version.py | 2 +- scripts/prefetch-images.sh | 14 ++-- 6 files changed, 136 insertions(+), 17 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index ee2bfff4..1b1f6a80 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.9.3" + ".": "0.9.4" } diff --git a/CHANGELOG.md b/CHANGELOG.md index cfc395a8..8ea29531 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,124 @@ # Changelog +## [0.9.4](https://github.com/reanahub/reana/compare/0.9.3...0.9.4) (2024-12-16) + +### :sparkles: What's new in REANA 0.9.4 + +REANA 0.9.4 is a minor update that adds support for using user secrets in +Jupyter notebook sessions, adds support for the Compute4PUNCH infrastructure, +fixes issues with the HTCondor compute backend job dispatch, and improves the +security of the platform. + +Please see the [REANA 0.9.4 release blog +post](https://blog.reana.io/posts/2024/reana-0.9.4) for more information. + +### :zap: Detailed changelog for REANA 0.9.4 components + +#### reana [0.9.4](https://github.com/reanahub/reana/compare/0.9.3...0.9.4) (2024-12-03) + +* [Build] **helm:** add support for Kubernetes 1.30 ([#799](https://github.com/reanahub/reana/issues/799)) ([748ca07](https://github.com/reanahub/reana/commit/748ca0769c24286cb32b8bfaf3df0114748cfae0)) +* [Build] **helm:** add support for Kubernetes 1.31 ([#822](https://github.com/reanahub/reana/issues/822)) ([7da51d3](https://github.com/reanahub/reana/commit/7da51d3be56b9bf03381c41342fb141cfb36b84b)) +* [Features] **config:** add Compute4PUNCH backend ([#780](https://github.com/reanahub/reana/issues/780)) ([c2f490b](https://github.com/reanahub/reana/commit/c2f490b8251ffcebcf53a72ac5f2bcc9ce0190b4)) +* [Features] **helm:** allow cluster administrator to configure ingress host ([#804](https://github.com/reanahub/reana/issues/804)) ([1479730](https://github.com/reanahub/reana/commit/14797309ff964b7897e072801c441c4c34532856)) +* [Features] **helm:** allow only reana-server to connect to reana-cache ([#847](https://github.com/reanahub/reana/issues/847)) ([e1772ff](https://github.com/reanahub/reana/commit/e1772ffb39d2b1b4c91893f6eda0301edabb105f)) +* [Features] **helm:** release check on most-supported Kubernetes version ([#848](https://github.com/reanahub/reana/issues/848)) ([1a98b0a](https://github.com/reanahub/reana/commit/1a98b0ab4d248544a03d83da13a66b399819f713)) +* [Features] **helm:** support password-protected rabbitmq ([#847](https://github.com/reanahub/reana/issues/847)) ([20a0ea8](https://github.com/reanahub/reana/commit/20a0ea8fcf854c74a508f0b415c066a9912fbe34)) +* [Features] **helm:** support password-protected redis ([#847](https://github.com/reanahub/reana/issues/847)) ([be12076](https://github.com/reanahub/reana/commit/be1207630b9cb6c694139d458cd3ea545747b95f)) +* [Features] **scripts:** upgrade to Jupyter SciPy 7.2.2 notebook ([#846](https://github.com/reanahub/reana/issues/846)) ([1ca9dea](https://github.com/reanahub/reana/commit/1ca9deaf1b73e18774019cf1e0cb5cc1fb1c3016)) +* [Bug fixes] **helm:** allow interactive-session-cleanup job to access RWC ([#853](https://github.com/reanahub/reana/issues/853)) ([b9bc602](https://github.com/reanahub/reana/commit/b9bc602fc5be2ab717d2c09cb9018b6e5ca8180e)) +* [Bug fixes] **reana-dev:** correctly handle missing changelog of components ([#858](https://github.com/reanahub/reana/issues/858)) ([32549d1](https://github.com/reanahub/reana/commit/32549d1f4f1ce06d6be015721d8abc1598dba5b1)), closes [#857](https://github.com/reanahub/reana/issues/857) +* [Continuous integration] **python:** pin setuptools 70 ([#822](https://github.com/reanahub/reana/issues/822)) ([be45c54](https://github.com/reanahub/reana/commit/be45c549c057ea2356b2f6688dd142c68ea11d44)) +* [Documentation] **helm:** clarify secrets-related warning in README ([#847](https://github.com/reanahub/reana/issues/847)) ([fab5591](https://github.com/reanahub/reana/commit/fab559187a49c21d368c4863cd0a888ff831c330)) + +#### reana-client [0.9.4](https://github.com/reanahub/reana-client/compare/0.9.3...0.9.4) (2024-11-29) + +* [Build] **docker:** create `reana-client` container image ([#710](https://github.com/reanahub/reana-client/issues/710)) ([2c99c5d](https://github.com/reanahub/reana-client/commit/2c99c5d1bd36e4303885875375085f7d714e8732)), closes [#709](https://github.com/reanahub/reana-client/issues/709) +* [Build] **python:** add support for Python 3.13 ([#736](https://github.com/reanahub/reana-client/issues/736)) ([fd9b944](https://github.com/reanahub/reana-client/commit/fd9b9446d58f21cc6e57b343874d55433532c959)) +* [Build] **python:** bump shared REANA packages as of 2024-11-28 ([#736](https://github.com/reanahub/reana-client/issues/736)) ([778df03](https://github.com/reanahub/reana-client/commit/778df037dbeb1340478060e7f913dfff7c0235e5)) +* [Continuous integration] **actions:** pin setuptools 70 ([#728](https://github.com/reanahub/reana-client/issues/728)) ([0a4bcc7](https://github.com/reanahub/reana-client/commit/0a4bcc79af33dd00a6a03216be32d10000bb432b)) +* [Documentation] **cli:** fix `open` command documentation typo ([#728](https://github.com/reanahub/reana-client/issues/728)) ([c822dd6](https://github.com/reanahub/reana-client/commit/c822dd6570d5474e535be83d0ee4beb44ecee85b)) + +#### reana-commons [0.9.9](https://github.com/reanahub/reana-commons/compare/0.9.8...0.9.9) (2024-11-28) + +* [Build] **python:** add support for Python 3.13 ([#480](https://github.com/reanahub/reana-commons/issues/480)) ([5de7605](https://github.com/reanahub/reana-commons/commit/5de760512a3aa86282a9dc31ac031773ddf49ef6)) +* [Features] **schema:** allow Compute4PUNCH backend options ([#445](https://github.com/reanahub/reana-commons/issues/445)) ([0570f4a](https://github.com/reanahub/reana-commons/commit/0570f4ade9135a2d340009d2091c97dfc81a2e60)) +* [Bug fixes] **config:** remove hard-coded component host name domain ([#458](https://github.com/reanahub/reana-commons/issues/458)) ([f2faeaa](https://github.com/reanahub/reana-commons/commit/f2faeaa76f42c4484db70766fc1d7a3a122ee38f)), closes [#457](https://github.com/reanahub/reana-commons/issues/457) +* [Continuous integration] **actions:** pin setuptools 70 ([#479](https://github.com/reanahub/reana-commons/issues/479)) ([b80bc70](https://github.com/reanahub/reana-commons/commit/b80bc707fa9311e3e5d00ea71bb17f853845d6bf)) + +#### reana-db [0.9.5](https://github.com/reanahub/reana-db/compare/0.9.4...0.9.5) (2024-11-26) + +* [Features] **cli:** add new `migrate-secret-key` command ([#240](https://github.com/reanahub/reana-db/issues/240)) ([efcbe72](https://github.com/reanahub/reana-db/commit/efcbe724a2797edf94a531a2fd49ae0dc25d29f7)) +* [Continuous integration] **actions:** pin setuptools 70 ([#239](https://github.com/reanahub/reana-db/issues/239)) ([3202759](https://github.com/reanahub/reana-db/commit/320275969c64513f695ce59a145088f6222aa594)) +* [Continuous integration] **python:** test more Python versions ([#239](https://github.com/reanahub/reana-db/issues/239)) ([e0cba7f](https://github.com/reanahub/reana-db/commit/e0cba7faa97cbf2919c4008ec884ea46ec817cd5)) + +#### reana-job-controller [0.9.4](https://github.com/reanahub/reana-job-controller/compare/0.9.3...0.9.4) (2024-11-29) + +* [Build] **deps:** update reana-auth-vomsproxy to 1.3.0 ([#466](https://github.com/reanahub/reana-job-controller/issues/466)) ([72e9ea1](https://github.com/reanahub/reana-job-controller/commit/72e9ea1442d2b6cf7d466d0701e269fda1e15b22)) +* [Build] **docker:** pin setuptools 70 ([#465](https://github.com/reanahub/reana-job-controller/issues/465)) ([c593d9b](https://github.com/reanahub/reana-job-controller/commit/c593d9bc84763f142573396be48c762eefa8f6ec)) +* [Build] **python:** bump shared REANA packages as of 2024-11-28 ([#477](https://github.com/reanahub/reana-job-controller/issues/477)) ([9cdd06c](https://github.com/reanahub/reana-job-controller/commit/9cdd06c72faa5ded628b2766113ab37ac06f5868)) +* [Features] **backends:** add new Compute4PUNCH backend ([#430](https://github.com/reanahub/reana-job-controller/issues/430)) ([4243252](https://github.com/reanahub/reana-job-controller/commit/42432522c8d9dd5e4ee908a16b1be87046908e08)) +* [Bug fixes] **config:** read secret key from env ([#476](https://github.com/reanahub/reana-job-controller/issues/476)) ([1b5aa98](https://github.com/reanahub/reana-job-controller/commit/1b5aa98b0ed76ea614dac1209ba23b366d417d9f)) +* [Bug fixes] **config:** update reana-auth-vomsproxy to 1.2.1 to fix WLCG IAM ([#457](https://github.com/reanahub/reana-job-controller/issues/457)) ([132868f](https://github.com/reanahub/reana-job-controller/commit/132868f4824a0f4049febf17c90bea0df838e724)) +* [Bug fixes] **htcondorcern:** run provided command in unpacked image ([#474](https://github.com/reanahub/reana-job-controller/issues/474)) ([9cda591](https://github.com/reanahub/reana-job-controller/commit/9cda591affaa1f821409961ec4e379e1bf5fa248)), closes [#471](https://github.com/reanahub/reana-job-controller/issues/471) +* [Bug fixes] **htcondorcern:** support multiline commands ([#474](https://github.com/reanahub/reana-job-controller/issues/474)) ([eb07aa9](https://github.com/reanahub/reana-job-controller/commit/eb07aa9b7b03d38dd47cd004ff8b48440ad45c2a)), closes [#470](https://github.com/reanahub/reana-job-controller/issues/470) +* [Bug fixes] **kubernetes:** avoid privilege escalation in Kubernetes jobs ([#476](https://github.com/reanahub/reana-job-controller/issues/476)) ([389f0ea](https://github.com/reanahub/reana-job-controller/commit/389f0ea9606d4ac5fa24458b7cef39e8ab430c64)) + + +#### reana-server [0.9.4](https://github.com/reanahub/reana-server/compare/0.9.3...0.9.4) (2024-11-29) + +* [Build] **python:** bump shared REANA packages as of 2024-11-28 ([#714](https://github.com/reanahub/reana-server/issues/714)) ([94fbf77](https://github.com/reanahub/reana-server/commit/94fbf7766218f4ffaf3f23be64ec6d46be1acb00)) +* [Features] **config:** make ACCOUNTS_USERINFO_HEADERS customisable ([#713](https://github.com/reanahub/reana-server/issues/713)) ([8c01d51](https://github.com/reanahub/reana-server/commit/8c01d513c2365f337c26a2211c2ddb82df4186d4)) +* [Features] **config:** make APP_DEFAULT_SECURE_HEADERS customisable ([#713](https://github.com/reanahub/reana-server/issues/713)) ([1919358](https://github.com/reanahub/reana-server/commit/1919358cb3b05f09bceff9a904e9607760bc3fb1)) +* [Features] **config:** make PROXYFIX_CONFIG customisable ([#713](https://github.com/reanahub/reana-server/issues/713)) ([5b6c276](https://github.com/reanahub/reana-server/commit/5b6c276f57f642cc0965f096fa59875b9599df08)) +* [Features] **config:** support password-protected redis ([#713](https://github.com/reanahub/reana-server/issues/713)) ([a2aad8a](https://github.com/reanahub/reana-server/commit/a2aad8ac506b98e5c29d357cec65172b6437cc8f)) +* [Features] **ext:** improve error message for db decryption error ([#713](https://github.com/reanahub/reana-server/issues/713)) ([bbab1bf](https://github.com/reanahub/reana-server/commit/bbab1bf7338e9790e2195a02e320df16db1826f6)) +* [Bug fixes] **config:** do not set DEBUG programmatically ([#713](https://github.com/reanahub/reana-server/issues/713)) ([c98cbc1](https://github.com/reanahub/reana-server/commit/c98cbc1d15afca9309e4839db543ac19cd2036ce)) +* [Bug fixes] **config:** read secret key from env ([#713](https://github.com/reanahub/reana-server/issues/713)) ([6ee6422](https://github.com/reanahub/reana-server/commit/6ee6422d87d38339b359ad7a306575b97f210440)) +* [Bug fixes] **get_workflow_specification:** avoid returning null parameters ([#689](https://github.com/reanahub/reana-server/issues/689)) ([46633d6](https://github.com/reanahub/reana-server/commit/46633d6bcc151c73880f9ecbd2c02d2246492794)) +* [Bug fixes] **reana-admin:** respect service domain when cleaning sessions ([#687](https://github.com/reanahub/reana-server/issues/687)) ([ede882d](https://github.com/reanahub/reana-server/commit/ede882d384ae0959eb8a9484b7d491baa628a1ee)) +* [Bug fixes] **set_workflow_status:** publish workflows to submission queue ([#691](https://github.com/reanahub/reana-server/issues/691)) ([6e35bd7](https://github.com/reanahub/reana-server/commit/6e35bd776e17c1bc04145c68c1f5ea3ce5143b7e)), closes [#690](https://github.com/reanahub/reana-server/issues/690) +* [Bug fixes] **start:** validate endpoint parameters ([#689](https://github.com/reanahub/reana-server/issues/689)) ([d2d3673](https://github.com/reanahub/reana-server/commit/d2d3673dac8917d746ddafd84bb3660e7f83c9b6)) +* [Continuous integration] **commitlint:** improve checking of merge commits ([#689](https://github.com/reanahub/reana-server/issues/689)) ([69f45fc](https://github.com/reanahub/reana-server/commit/69f45fc3aae9bc625ed733de9af13eb7c0111048)) + + +#### reana-workflow-controller [0.9.4](https://github.com/reanahub/reana-workflow-controller/compare/0.9.3...0.9.4) (2024-11-29) + +* [Build] **docker:** pin setuptools 70 ([#601](https://github.com/reanahub/reana-workflow-controller/issues/601)) ([be6a388](https://github.com/reanahub/reana-workflow-controller/commit/be6a3885f4f2e84ca77c7e09a89e5f2f06185452)) +* [Build] **python:** bump shared REANA packages as of 2024-11-28 ([#620](https://github.com/reanahub/reana-workflow-controller/issues/620)) ([179fa89](https://github.com/reanahub/reana-workflow-controller/commit/179fa89ccc4a5e77fca9efa403f4ad2003b40db3)) +* [Features] **config:** upgrade to Jupyter SciPy 7.2.2 notebook ([#614](https://github.com/reanahub/reana-workflow-controller/issues/614)) ([72f0c4c](https://github.com/reanahub/reana-workflow-controller/commit/72f0c4c69759c8abf1d67c735232e5b6c033d504)) +* [Features] **helm:** allow cluster administrator to configure ingress host ([#588](https://github.com/reanahub/reana-workflow-controller/issues/588)) ([a7c9c85](https://github.com/reanahub/reana-workflow-controller/commit/a7c9c851277f3ca191c073fdc6c6d5d4149a95e8)) +* [Features] **sessions:** expose user secrets in interactive sessions ([#591](https://github.com/reanahub/reana-workflow-controller/issues/591)) ([784efee](https://github.com/reanahub/reana-workflow-controller/commit/784efee4be8b4a9785d03d3d05b00f3da2b455c2)) +* [Bug fixes] **config:** read secret key from env ([#615](https://github.com/reanahub/reana-workflow-controller/issues/615)) ([7df1279](https://github.com/reanahub/reana-workflow-controller/commit/7df1279f45e0981a06c3af705873c4d1d797404d)) +* [Bug fixes] **manager:** avoid privilege escalation in Kubernetes jobs ([#615](https://github.com/reanahub/reana-workflow-controller/issues/615)) ([24563e5](https://github.com/reanahub/reana-workflow-controller/commit/24563e568044e29d4399f78d8c081d144f116761)) +* [Bug fixes] **manager:** pass RabbitMQ connection details to workflow engine ([#615](https://github.com/reanahub/reana-workflow-controller/issues/615)) ([cf4ee73](https://github.com/reanahub/reana-workflow-controller/commit/cf4ee734788da33f15a80e1fc1f0b3233ea5a007)) +* [Bug fixes] **set_workflow_status:** validate endpoint arguments ([#589](https://github.com/reanahub/reana-workflow-controller/issues/589)) ([5945d7f](https://github.com/reanahub/reana-workflow-controller/commit/5945d7fca095531b3601e551c527457f9413643c)) + +#### reana-workflow-engine-cwl [0.9.4](https://github.com/reanahub/reana-workflow-engine-cwl/compare/0.9.3...0.9.4) (2024-11-29) + +* [Build] **docker:** pin setuptools 70 ([#287](https://github.com/reanahub/reana-workflow-engine-cwl/issues/287)) ([3c2cd8a](https://github.com/reanahub/reana-workflow-engine-cwl/commit/3c2cd8a474d167574bf8746b6430f4ae13a83e61)) +* [Build] **python:** bump shared REANA packages as of 2024-11-28 ([#289](https://github.com/reanahub/reana-workflow-engine-cwl/issues/289)) ([f9d3688](https://github.com/reanahub/reana-workflow-engine-cwl/commit/f9d3688858e6f1ff52fa58fecd9ce233dd97b0e1)) +* [Features] **task:** allow Compute4PUNCH backend options ([#277](https://github.com/reanahub/reana-workflow-engine-cwl/issues/277)) ([9b2a3d0](https://github.com/reanahub/reana-workflow-engine-cwl/commit/9b2a3d0872329e79d0b2d9a0972b0c09f08ff694)) + +#### reana-workflow-engine-serial [0.9.4](https://github.com/reanahub/reana-workflow-engine-serial/compare/0.9.3...0.9.4) (2024-11-29) + +* [Build] **docker:** pin setuptools 70 ([#216](https://github.com/reanahub/reana-workflow-engine-serial/issues/216)) ([f94d003](https://github.com/reanahub/reana-workflow-engine-serial/commit/f94d0036ded9562155528d52f33110e43c954384)) +* [Build] **python:** bump shared REANA packages as of 2024-11-28 ([#218](https://github.com/reanahub/reana-workflow-engine-serial/issues/218)) ([430fd04](https://github.com/reanahub/reana-workflow-engine-serial/commit/430fd04acb6485754a0cc5fa4dbeefd3aaa022e4)) +* [Features] **tasks:** allow Compute4PUNCH backend options ([#210](https://github.com/reanahub/reana-workflow-engine-serial/issues/210)) ([a6313f2](https://github.com/reanahub/reana-workflow-engine-serial/commit/a6313f22dcdcab08a84b3dd6c8ce7386122d7400)) + +#### reana-workflow-engine-snakemake [0.9.4](https://github.com/reanahub/reana-workflow-engine-snakemake/compare/0.9.3...0.9.4) (2024-11-29) + +* [Build] **docker:** fix XRootD repository location ([#95](https://github.com/reanahub/reana-workflow-engine-snakemake/issues/95)) ([69fea32](https://github.com/reanahub/reana-workflow-engine-snakemake/commit/69fea329dd9bf91ff9eb1de9ac741262512a872a)) +* [Build] **docker:** pin setuptools 70 ([#102](https://github.com/reanahub/reana-workflow-engine-snakemake/issues/102)) ([b27c9cf](https://github.com/reanahub/reana-workflow-engine-snakemake/commit/b27c9cfa21603ecc1554931f23c945d3f9e256d6)) +* [Build] **python:** bump shared REANA packages as of 2024-11-28 ([#104](https://github.com/reanahub/reana-workflow-engine-snakemake/issues/104)) ([fb9efc8](https://github.com/reanahub/reana-workflow-engine-snakemake/commit/fb9efc8267c24ce65e8d188a5171d8abd5531cd7)) +* [Features] **executor:** allow Compute4PUNCH backend options ([#97](https://github.com/reanahub/reana-workflow-engine-snakemake/issues/97)) ([4b00c52](https://github.com/reanahub/reana-workflow-engine-snakemake/commit/4b00c523eb8750f49262471a43c9deefad1021d3)) +* [Bug fixes] **executor:** override default resources to remove mem/disk ([#91](https://github.com/reanahub/reana-workflow-engine-snakemake/issues/91)) ([572a83f](https://github.com/reanahub/reana-workflow-engine-snakemake/commit/572a83f5190c7cae95a4607b792f4b6e0c39262c)), closes [#90](https://github.com/reanahub/reana-workflow-engine-snakemake/issues/90) + +#### reana-workflow-engine-yadage [0.9.5](https://github.com/reanahub/reana-workflow-engine-yadage/compare/0.9.4...0.9.5) (2024-11-29) + +* [Build] **docker:** pin setuptools 70 ([#274](https://github.com/reanahub/reana-workflow-engine-yadage/issues/274)) ([bc505d8](https://github.com/reanahub/reana-workflow-engine-yadage/commit/bc505d84a4092610e883e766ad08d2efefe8d908)) +* [Build] **python:** bump shared REANA packages as of 2024-11-28 ([#276](https://github.com/reanahub/reana-workflow-engine-yadage/issues/276)) ([5911143](https://github.com/reanahub/reana-workflow-engine-yadage/commit/59111432c2c5a7fea98a71ffb2d78a9e7c1a47af)) +* [Features] **externalbackend:** allow Compute4PUNCH backend options ([#269](https://github.com/reanahub/reana-workflow-engine-yadage/issues/269)) ([1ce8e6a](https://github.com/reanahub/reana-workflow-engine-yadage/commit/1ce8e6a41f14996c50c53fcd7e84565626756ace)) + ## [0.9.3](https://github.com/reanahub/reana/compare/0.9.2...0.9.3) (2024-03-13) ### :sparkles: What's new in REANA 0.9.3 diff --git a/helm/reana/Chart.yaml b/helm/reana/Chart.yaml index 55aeb31b..288eafb6 100644 --- a/helm/reana/Chart.yaml +++ b/helm/reana/Chart.yaml @@ -26,7 +26,7 @@ keywords: - cwl - reusable-science type: application -version: 0.9.3 +version: 0.9.4 kubeVersion: '>= 1.21.0-0' dependencies: - name: traefik diff --git a/helm/reana/values.yaml b/helm/reana/values.yaml index 11a27eeb..fa9257fa 100644 --- a/helm/reana/values.yaml +++ b/helm/reana/values.yaml @@ -85,7 +85,7 @@ components: image: docker.io/library/postgres:12.13 reana_server: imagePullPolicy: IfNotPresent - image: docker.io/reanahub/reana-server:0.9.3 + image: docker.io/reanahub/reana-server:0.9.4 environment: REANA_MAX_CONCURRENT_BATCH_WORKFLOWS: 30 REANA_SCHEDULER_REQUEUE_SLEEP: 15 @@ -104,24 +104,24 @@ components: log_5xx: true reana_workflow_controller: imagePullPolicy: IfNotPresent - image: docker.io/reanahub/reana-workflow-controller:0.9.3 + image: docker.io/reanahub/reana-workflow-controller:0.9.4 environment: SHARED_VOLUME_PATH: /var/reana REANA_JOB_STATUS_CONSUMER_PREFETCH_COUNT: 10 reana_workflow_engine_cwl: - image: docker.io/reanahub/reana-workflow-engine-cwl:0.9.3 + image: docker.io/reanahub/reana-workflow-engine-cwl:0.9.4 environment: {} reana_workflow_engine_yadage: - image: docker.io/reanahub/reana-workflow-engine-yadage:0.9.4 + image: docker.io/reanahub/reana-workflow-engine-yadage:0.9.5 environment: {} reana_workflow_engine_serial: - image: docker.io/reanahub/reana-workflow-engine-serial:0.9.3 + image: docker.io/reanahub/reana-workflow-engine-serial:0.9.4 environment: {} reana_workflow_engine_snakemake: - image: docker.io/reanahub/reana-workflow-engine-snakemake:0.9.3 + image: docker.io/reanahub/reana-workflow-engine-snakemake:0.9.4 environment: {} reana_job_controller: - image: docker.io/reanahub/reana-job-controller:0.9.3 + image: docker.io/reanahub/reana-job-controller:0.9.4 environment: {} reana_message_broker: imagePullPolicy: IfNotPresent diff --git a/reana/version.py b/reana/version.py index 719c0576..b5564ee3 100644 --- a/reana/version.py +++ b/reana/version.py @@ -13,4 +13,4 @@ from __future__ import absolute_import, print_function -__version__ = "0.9.3" +__version__ = "0.9.4" diff --git a/scripts/prefetch-images.sh b/scripts/prefetch-images.sh index 67522fbb..a2f4d837 100755 --- a/scripts/prefetch-images.sh +++ b/scripts/prefetch-images.sh @@ -10,15 +10,15 @@ for image in \ docker.io/maildev/maildev:1.1.0 \ docker.io/library/postgres:12.13 \ docker.io/library/redis:5.0.5 \ - docker.io/reanahub/reana-job-controller:0.9.3 \ + docker.io/reanahub/reana-job-controller:0.9.4 \ docker.io/reanahub/reana-message-broker:0.9.3 \ - docker.io/reanahub/reana-server:0.9.3 \ + docker.io/reanahub/reana-server:0.9.4 \ docker.io/reanahub/reana-ui:0.9.4 \ - docker.io/reanahub/reana-workflow-controller:0.9.3 \ - docker.io/reanahub/reana-workflow-engine-cwl:0.9.3 \ - docker.io/reanahub/reana-workflow-engine-serial:0.9.3 \ - docker.io/reanahub/reana-workflow-engine-snakemake:0.9.3 \ - docker.io/reanahub/reana-workflow-engine-yadage:0.9.4 \ + docker.io/reanahub/reana-workflow-controller:0.9.4 \ + docker.io/reanahub/reana-workflow-engine-cwl:0.9.4 \ + docker.io/reanahub/reana-workflow-engine-serial:0.9.4 \ + docker.io/reanahub/reana-workflow-engine-snakemake:0.9.4 \ + docker.io/reanahub/reana-workflow-engine-yadage:0.9.5 \ quay.io/jupyter/scipy-notebook:notebook-7.2.2 \ ; do docker pull $image