From 49b9ef992d9d9c2a77db063e4119d2b6545270e9 Mon Sep 17 00:00:00 2001 From: Patrick Titzler Date: Thu, 21 Jul 2022 10:54:52 -0700 Subject: [PATCH 1/5] Add ODH image refresh instructions --- .../developer_guide/refresh-elyra-on-odh.md | 65 +++++++++++++++++++ docs/source/index.rst | 1 + 2 files changed, 66 insertions(+) create mode 100644 docs/source/developer_guide/refresh-elyra-on-odh.md diff --git a/docs/source/developer_guide/refresh-elyra-on-odh.md b/docs/source/developer_guide/refresh-elyra-on-odh.md new file mode 100644 index 000000000..67506d120 --- /dev/null +++ b/docs/source/developer_guide/refresh-elyra-on-odh.md @@ -0,0 +1,65 @@ + + +# Elyra refresh on Open Data Hub + +A custom Elyra container image is included with [Open Data Hub](https://opendatahub.io/). This document outlines how to upgrade that image to a newer version. This task is typicaly only performed by Elyra maintainers. + +## Update Elyra image stream + +The [s2i-lab-elyra](https://github.com/opendatahub-io/s2i-lab-elyra) repository contains the artifacts that make Elyra available as an image stream. + +- Fork the `https://github.com/opendatahub-io/s2i-lab-elyra` repository. +- Git clone the fork. + ``` + $ git clone git@github.com:/s2i-lab-elyra.git + ``` +- Create a new branch named `update-to-vX.Y.Z` (replacing X, Y, and Z with the major, minor, and patch version number). + +- Update ... + +- Take note of the new image version `vY.Y.Y`. (The image version is different from the Elyra version!) + +- Create a pull request providing the following information: + - title: `Update elyra image to vX.Y.Z` + - description: add links to the [release notes](https://github.com/elyra-ai/elyra/releases) for every version that isn't available yet on Open Data Hub. For example, if the last version on ODH is 3.9.1 and you are bumping Elyra to 3.10.1, add links to the release notes for 3.10.0 and 3.10.1. This enables reviewers and users to determine what is new and why an upgrade to this release should be considered. + + Example pull request: https://github.com/opendatahub-io/s2i-lab-elyra/pull/43 + +## Update manifest files + +Once the image stream pull request was merged you can update Open Data Hub manifest files. + +- Fork the `https://github.com/opendatahub-io/odh-manifests` repository. +- Git clone the fork. + ``` + $ git clone git@github.com:/odh-manifests.git + ``` +- Create a new branch named `update-to-vX.Y.Z` (replacing X, Y, and Z with the major, minor, and patch version number). + +- Update `jupyterhub/notebook-images/overlays/additional/elyra-notebook-imagestream.yaml` + - Change the existing `opendatahub.io/notebook-python-dependencies` annotation from `"version":"X.X.X"` to `"version":"X.Y.Z"`. + - Change all existing occurrences of the old image version `vX.X.X` to the new image version `vY.Y.Y`. +- Update `jupyterhub/notebook-images/overlays/build/elyra-notebook-buildconfig.yaml` + - Change the existing image stream tag name from `s2i-lab-elyra:vX.X.X` to `s2i-lab-elyra:vY.Y.Y`. + - Change the git ref from `ref: vX.X.X` to `ref: vY.Y.Y`. +- Create a pull request providing the following information: + - Title: `Update Elyra notebook image to vY.Y.Y` + - Description: add links to the [release notes](https://github.com/elyra-ai/elyra/releases) for every version that isn't available yet on Open Data Hub. For example, if the last referenced version in the ODH manifest is 3.9.1 and you are bumping Elyra to 3.10.1, add links to the release notes for 3.10.0 and 3.10.1. This enables reviewers and users to determine what is new and why an upgrade to this release should be considered. + + Example pull request: https://github.com/opendatahub-io/odh-manifests/pull/579 diff --git a/docs/source/index.rst b/docs/source/index.rst index 4cbccc676..77c076ee3 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -79,3 +79,4 @@ Elyra is a set of AI-centric extensions to JupyterLab Notebooks. developer_guide/trackers.md developer_guide/troubleshooting.md developer_guide/release.md + developer_guide/refresh-elyra-on-odh.md From 96a771d2d4ea047b767ffc7f6aaf40c3b9054f60 Mon Sep 17 00:00:00 2001 From: Alan Chin Date: Thu, 21 Jul 2022 11:45:38 -0700 Subject: [PATCH 2/5] Update intructions with pipfile details --- docs/source/developer_guide/refresh-elyra-on-odh.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/source/developer_guide/refresh-elyra-on-odh.md b/docs/source/developer_guide/refresh-elyra-on-odh.md index 67506d120..d8286b107 100644 --- a/docs/source/developer_guide/refresh-elyra-on-odh.md +++ b/docs/source/developer_guide/refresh-elyra-on-odh.md @@ -24,6 +24,7 @@ A custom Elyra container image is included with [Open Data Hub](https://opendata The [s2i-lab-elyra](https://github.com/opendatahub-io/s2i-lab-elyra) repository contains the artifacts that make Elyra available as an image stream. +- Install pipenv<=2022.1.8 from PyPi. e.g. `pip install pipenv==2022.1.8` - Fork the `https://github.com/opendatahub-io/s2i-lab-elyra` repository. - Git clone the fork. ``` @@ -31,7 +32,14 @@ The [s2i-lab-elyra](https://github.com/opendatahub-io/s2i-lab-elyra) repository ``` - Create a new branch named `update-to-vX.Y.Z` (replacing X, Y, and Z with the major, minor, and patch version number). -- Update ... +- Update the following as needed: + - `.aicoe-ci.yaml` if any version changes to the base container image are needed + - `.s2i/environment` if any additional environmental variables need to bet changed or set + - `.s2i/run` if any additional bash setup commands need to be added/changed prior to starting Elyra + +- Update the Elyra package in `Pipfile` with the latest version required + +- Regenerate the `pipfile.lock` by running `pipenv lock --pre` - Take note of the new image version `vY.Y.Y`. (The image version is different from the Elyra version!) From 2a19c761f54e683aa671ac59ecfb99a6a9dcdb89 Mon Sep 17 00:00:00 2001 From: Patrick Titzler Date: Thu, 21 Jul 2022 13:55:45 -0700 Subject: [PATCH 3/5] Clean-up instructions --- .../developer_guide/refresh-elyra-on-odh.md | 31 +++++++++++++------ 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/docs/source/developer_guide/refresh-elyra-on-odh.md b/docs/source/developer_guide/refresh-elyra-on-odh.md index d8286b107..fdfdb0116 100644 --- a/docs/source/developer_guide/refresh-elyra-on-odh.md +++ b/docs/source/developer_guide/refresh-elyra-on-odh.md @@ -24,31 +24,42 @@ A custom Elyra container image is included with [Open Data Hub](https://opendata The [s2i-lab-elyra](https://github.com/opendatahub-io/s2i-lab-elyra) repository contains the artifacts that make Elyra available as an image stream. -- Install pipenv<=2022.1.8 from PyPi. e.g. `pip install pipenv==2022.1.8` +- Install pipenv (version <= 2022.1.8) from PyPI. + ``` + $ pip install pipenv==2022.1.8 + ``` - Fork the `https://github.com/opendatahub-io/s2i-lab-elyra` repository. - Git clone the fork. ``` $ git clone git@github.com:/s2i-lab-elyra.git ``` -- Create a new branch named `update-to-vX.Y.Z` (replacing X, Y, and Z with the major, minor, and patch version number). +- Create a new branch named `update-to-vX.Y.Z` (replacing X, Y, and Z with the latest major, minor, and patch version number for Elyra). - Update the following as needed: - `.aicoe-ci.yaml` if any version changes to the base container image are needed - - `.s2i/environment` if any additional environmental variables need to bet changed or set + - `.s2i/environment` if any additional environment variables need to bet changed or set - `.s2i/run` if any additional bash setup commands need to be added/changed prior to starting Elyra -- Update the Elyra package in `Pipfile` with the latest version required - -- Regenerate the `pipfile.lock` by running `pipenv lock --pre` +- Update `Pipfile`: + - Replace the Elyra version number + ``` + "elyra[all]" = "==X.Y.Z" + ``` -- Take note of the new image version `vY.Y.Y`. (The image version is different from the Elyra version!) +- Regenerate the `pipfile.lock` file + ``` + $ pipenv lock --pre + ``` - Create a pull request providing the following information: - - title: `Update elyra image to vX.Y.Z` - - description: add links to the [release notes](https://github.com/elyra-ai/elyra/releases) for every version that isn't available yet on Open Data Hub. For example, if the last version on ODH is 3.9.1 and you are bumping Elyra to 3.10.1, add links to the release notes for 3.10.0 and 3.10.1. This enables reviewers and users to determine what is new and why an upgrade to this release should be considered. + - Title: `Update elyra image to vX.Y.Z` + - Description: add links to the [release notes](https://github.com/elyra-ai/elyra/releases) for every version that isn't available yet on Open Data Hub. For example, if the last version on ODH is 3.9.1 and you are bumping Elyra to 3.10.1, add links to the release notes for 3.10.0 and 3.10.1. This enables reviewers and users to determine what is new and why an upgrade to this release should be considered. Example pull request: https://github.com/opendatahub-io/s2i-lab-elyra/pull/43 +- After the pull request was merged a [new image release](https://github.com/opendatahub-io/s2i-lab-elyra/releases) is created for you. Take note of the new release `vY.Y.Y`. + > The release version is different from the Elyra version! + ## Update manifest files Once the image stream pull request was merged you can update Open Data Hub manifest files. @@ -62,7 +73,7 @@ Once the image stream pull request was merged you can update Open Data Hub manif - Update `jupyterhub/notebook-images/overlays/additional/elyra-notebook-imagestream.yaml` - Change the existing `opendatahub.io/notebook-python-dependencies` annotation from `"version":"X.X.X"` to `"version":"X.Y.Z"`. - - Change all existing occurrences of the old image version `vX.X.X` to the new image version `vY.Y.Y`. + - Change all existing occurrences of the old image release `vX.X.X` to the new image release `vY.Y.Y`. - Update `jupyterhub/notebook-images/overlays/build/elyra-notebook-buildconfig.yaml` - Change the existing image stream tag name from `s2i-lab-elyra:vX.X.X` to `s2i-lab-elyra:vY.Y.Y`. - Change the git ref from `ref: vX.X.X` to `ref: vY.Y.Y`. From e65f12ccc2283a1e3c6dbbbe02d0bbe55b56c54f Mon Sep 17 00:00:00 2001 From: Patrick Titzler Date: Thu, 21 Jul 2022 14:01:03 -0700 Subject: [PATCH 4/5] Fix bug --- docs/source/developer_guide/refresh-elyra-on-odh.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/developer_guide/refresh-elyra-on-odh.md b/docs/source/developer_guide/refresh-elyra-on-odh.md index fdfdb0116..120efc21e 100644 --- a/docs/source/developer_guide/refresh-elyra-on-odh.md +++ b/docs/source/developer_guide/refresh-elyra-on-odh.md @@ -69,7 +69,7 @@ Once the image stream pull request was merged you can update Open Data Hub manif ``` $ git clone git@github.com:/odh-manifests.git ``` -- Create a new branch named `update-to-vX.Y.Z` (replacing X, Y, and Z with the major, minor, and patch version number). +- Create a new branch named `update-to-vY.Y.Y` replacing YYY with the image release number. - Update `jupyterhub/notebook-images/overlays/additional/elyra-notebook-imagestream.yaml` - Change the existing `opendatahub.io/notebook-python-dependencies` annotation from `"version":"X.X.X"` to `"version":"X.Y.Z"`. From a0ae59cf9ec400120f669394baaad7bdbe069059 Mon Sep 17 00:00:00 2001 From: Alan Chin Date: Fri, 22 Jul 2022 10:19:47 -0700 Subject: [PATCH 5/5] clarify and add additional information --- docs/source/developer_guide/refresh-elyra-on-odh.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/source/developer_guide/refresh-elyra-on-odh.md b/docs/source/developer_guide/refresh-elyra-on-odh.md index 120efc21e..2a3493d8b 100644 --- a/docs/source/developer_guide/refresh-elyra-on-odh.md +++ b/docs/source/developer_guide/refresh-elyra-on-odh.md @@ -36,8 +36,8 @@ The [s2i-lab-elyra](https://github.com/opendatahub-io/s2i-lab-elyra) repository - Create a new branch named `update-to-vX.Y.Z` (replacing X, Y, and Z with the latest major, minor, and patch version number for Elyra). - Update the following as needed: - - `.aicoe-ci.yaml` if any version changes to the base container image are needed - - `.s2i/environment` if any additional environment variables need to bet changed or set + - `.aicoe-ci.yaml` if any version changes to the base container image are needed. Only updated periodically after a new version of the [base image](https://quay.io/repository/thoth-station/s2i-minimal-py38-notebook?tab=tags&tag=latest) has been released and tested and vetted by the upstream team for ODH. + - `.s2i/environment` if any additional environment variables need to be changed or set - `.s2i/run` if any additional bash setup commands need to be added/changed prior to starting Elyra - Update `Pipfile`: