From e1fe34c44758fdeab3951fc415d6855989d5302d Mon Sep 17 00:00:00 2001 From: Yi Yao Date: Mon, 2 Dec 2024 15:13:10 +0800 Subject: [PATCH 1/6] Add RELEASE.md --- release_notes/RELEASE.md | 72 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 release_notes/RELEASE.md diff --git a/release_notes/RELEASE.md b/release_notes/RELEASE.md new file mode 100644 index 00000000..d5f12633 --- /dev/null +++ b/release_notes/RELEASE.md @@ -0,0 +1,72 @@ +# Releasing OPEA + +## Release Cadence + +The following release cadence is for year 2024/2025. Please note that the dates listed below may not reflect the most up-to-date information + +| Version | Release Date | +| --- | --- | +| 0.6 | Jun 2024 | +| 0.7 | Jun 2024 | +| 0.8 | Jul 2024 | +| 0.9 | Aug 2024 | +| 1.0 | Sep 2024 | +| 1.1 | Nov 2024 | +| 1.2 | Jan 2025 | +| 1.3 | Mar 2025 | +| 1.4 | May 2025 | +| 1.5 | Jul 2025 | +| 1.6 | Sep 2025 | +| 1.7 | Nov 2025 | + +## General Overview + +Releasing a new version of OPEA generally involves the following key steps: + +1. Feature/Dockerfile Freeze (2 weeks before the release) +2. Code/Doc Freeze, and Creating the RC(Release Candidate) Branch (1 week before the release) +3. Merging Cherry Picks to the RC Branch +4. Creating Tag from RC Branch + +## Feature/Dockerfile Freeze + +Generally, this marks a point in the OPEA release process where no new features or Dockerfile updates are added to the `main` branch of OPEA projects. It typically occurs two weeks before the scheduled OPEA release. + +## Code/Doc Freeze, and Creating the RC Branch + +This is the point in the OPEA release process where no code changes or document changes are updated to the `main` branch of OPEA projects. It typically occurs one week before the scheduled OPEA release. + +### Preparing Creating RC Branch +Following requirements needs to be met prior to creating the RC branch: +- Implement all features and functionalities targeting this release. +- Resolve all the known outstanding issues targeting this release. +- Validation?? TODO + +### Creating RC Branch +The RC branch are typically created from the `main` branch. The branch name must follow the following format: +``` +v{MAJOR}.{MINOR}rc +``` +An example of this would look like: +``` +v1.1rc +``` + +## Merging Cherry Picks to the RC Branch +Fixes typically are necessary for bugs and regressions after code freeze. + +### How to do Cherry Picking +TODO + +### Cherry Picking Reverts +TODO + +## Creating Tag from RC Branch +The following requirements need to be met prior to creating final Release Candidate: +- No outstanding issues in the milestone. No open issues/PRs whose has the milestone of this release(e.g. v1.1). +- All the closed milestone PRs should be present in the release branch. + +You can use the following commands to create release tag. +TODO + + From bafb07dc91d615bc2827f758d5711d91807d36ad Mon Sep 17 00:00:00 2001 From: chensuyue Date: Tue, 3 Dec 2024 12:36:55 +0800 Subject: [PATCH 2/6] update release page Signed-off-by: chensuyue --- release_notes/RELEASE.md | 45 ++++++++++++++++++++-------------------- 1 file changed, 23 insertions(+), 22 deletions(-) diff --git a/release_notes/RELEASE.md b/release_notes/RELEASE.md index d5f12633..57f5e5ee 100644 --- a/release_notes/RELEASE.md +++ b/release_notes/RELEASE.md @@ -2,7 +2,7 @@ ## Release Cadence -The following release cadence is for year 2024/2025. Please note that the dates listed below may not reflect the most up-to-date information +The following release cadence is for year 2024/2025. Please note that the dates listed below may not reflect the most up-to-date information. | Version | Release Date | | --- | --- | @@ -23,24 +23,25 @@ The following release cadence is for year 2024/2025. Please note that the dates Releasing a new version of OPEA generally involves the following key steps: -1. Feature/Dockerfile Freeze (2 weeks before the release) -2. Code/Doc Freeze, and Creating the RC(Release Candidate) Branch (1 week before the release) -3. Merging Cherry Picks to the RC Branch -4. Creating Tag from RC Branch +1. Feature freeze (2 weeks before the release) +2. Code/Doc freeze, and creating the RC(Release Candidate) branch (1 week before the release) +3. Cherry Pick critical Code/Doc fix from main branch to the RC branch +4. Create release tag from RC branch +5. Deliver docker images, helm charts, and pypi binaries -## Feature/Dockerfile Freeze +## Feature Freeze -Generally, this marks a point in the OPEA release process where no new features or Dockerfile updates are added to the `main` branch of OPEA projects. It typically occurs two weeks before the scheduled OPEA release. +Generally, this marks a point in the OPEA release process where no new features are added to the `main` branch of OPEA projects. It typically occurs two weeks before the scheduled OPEA release. After this point, first round release test will be triggered. ## Code/Doc Freeze, and Creating the RC Branch -This is the point in the OPEA release process where no code changes or document changes are updated to the `main` branch of OPEA projects. It typically occurs one week before the scheduled OPEA release. +This is the point in the OPEA release cycle to create the Release Candidate (RC) branch. It typically occurs one week before the scheduled OPEA release. After this point, final round release test will be triggered. ### Preparing Creating RC Branch Following requirements needs to be met prior to creating the RC branch: - Implement all features and functionalities targeting this release. - Resolve all the known outstanding issues targeting this release. -- Validation?? TODO +- Fix all the bugs found in the release test. ### Creating RC Branch The RC branch are typically created from the `main` branch. The branch name must follow the following format: @@ -52,21 +53,21 @@ An example of this would look like: v1.1rc ``` -## Merging Cherry Picks to the RC Branch -Fixes typically are necessary for bugs and regressions after code freeze. +## Cherry Pick Critical Code/Doc Fix +Fixes for critical issues after code freeze must cherry-pick into the RC branch. ### How to do Cherry Picking -TODO - -### Cherry Picking Reverts -TODO +Critical issues found in the RC branch must be fixed in the `main` branch and then cherry-picked into the RC branch. Cherry-picking will be done manually by the CI/CD owner. ## Creating Tag from RC Branch The following requirements need to be met prior to creating final Release Candidate: -- No outstanding issues in the milestone. No open issues/PRs whose has the milestone of this release(e.g. v1.1). -- All the closed milestone PRs should be present in the release branch. - -You can use the following commands to create release tag. -TODO - - +- No outstanding issues in the milestone. +- No open issues/PRs marked with the milestone of this release(e.g. v1.1). +- All the closed milestone PRs should be contained in the release branch. +- Create tags with [GHA job](https://github.com/opea-project/Validation/actions/workflows/manual-create-tag.yaml). + +## Deliver Docker Images, Helm Charts, and PyPi Binaries +After the release tag is created, the following artifacts need to be delivered: +- Docker images, [GHA job](https://github.com/opea-project/GenAIExamples/actions/workflows/manual-docker-publish.yml). +- Helm charts, [GHA job](https://github.com/opea-project/GenAIInfra/actions/workflows/manual-release-charts.yaml). +- PyPi binaries, [GHA job](https://github.com/opea-project/Validation/actions/workflows/manual-pypi-publish.yml). From 6439e87eba8381b0be3c5365132dd675f9d74310 Mon Sep 17 00:00:00 2001 From: chensuyue Date: Wed, 4 Dec 2024 13:42:51 +0800 Subject: [PATCH 3/6] update io build Signed-off-by: chensuyue --- release_notes/RELEASE.md | 2 +- release_notes/index.rst | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/release_notes/RELEASE.md b/release_notes/RELEASE.md index 57f5e5ee..83ec1e1e 100644 --- a/release_notes/RELEASE.md +++ b/release_notes/RELEASE.md @@ -1,4 +1,4 @@ -# Releasing OPEA +# OPEA Release Guide ## Release Cadence diff --git a/release_notes/index.rst b/release_notes/index.rst index 3311de0c..0ba9958f 100644 --- a/release_notes/index.rst +++ b/release_notes/index.rst @@ -11,6 +11,5 @@ Release notes for the current and previous releases are archived here. :maxdepth: 1 :glob: :reversed: - + RELEASE.md v* - From d84a28619571c991bef163cadf25dfb91647daf2 Mon Sep 17 00:00:00 2001 From: chensuyue Date: Wed, 4 Dec 2024 13:54:55 +0800 Subject: [PATCH 4/6] update io build Signed-off-by: chensuyue --- release_notes/index.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/release_notes/index.rst b/release_notes/index.rst index 0ba9958f..4a63d385 100644 --- a/release_notes/index.rst +++ b/release_notes/index.rst @@ -11,5 +11,7 @@ Release notes for the current and previous releases are archived here. :maxdepth: 1 :glob: :reversed: + + RELEASE.md v* From edb17361a6620f4c13a4442d4145125e0f457109 Mon Sep 17 00:00:00 2001 From: ZhangJianyu Date: Wed, 4 Dec 2024 14:21:53 +0800 Subject: [PATCH 5/6] update the format --- release_notes/index.rst | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/release_notes/index.rst b/release_notes/index.rst index 4a63d385..e36dc137 100644 --- a/release_notes/index.rst +++ b/release_notes/index.rst @@ -3,6 +3,15 @@ Release Notes ############# +Release plan & guide. + +.. rst-class:: rst-columns3 + +.. toctree:: + :maxdepth: 1 + + RELEASE.md + Release notes for the current and previous releases are archived here. .. rst-class:: rst-columns3 @@ -12,6 +21,4 @@ Release notes for the current and previous releases are archived here. :glob: :reversed: - - RELEASE.md v* From c3187470abe81d0cf93f041717b508702789c4a6 Mon Sep 17 00:00:00 2001 From: chensuyue Date: Wed, 4 Dec 2024 14:33:01 +0800 Subject: [PATCH 6/6] update version table Signed-off-by: chensuyue --- release_notes/RELEASE.md | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/release_notes/RELEASE.md b/release_notes/RELEASE.md index 83ec1e1e..306901bf 100644 --- a/release_notes/RELEASE.md +++ b/release_notes/RELEASE.md @@ -5,19 +5,20 @@ The following release cadence is for year 2024/2025. Please note that the dates listed below may not reflect the most up-to-date information. | Version | Release Date | -| --- | --- | -| 0.6 | Jun 2024 | -| 0.7 | Jun 2024 | -| 0.8 | Jul 2024 | -| 0.9 | Aug 2024 | -| 1.0 | Sep 2024 | -| 1.1 | Nov 2024 | -| 1.2 | Jan 2025 | -| 1.3 | Mar 2025 | -| 1.4 | May 2025 | -| 1.5 | Jul 2025 | -| 1.6 | Sep 2025 | -| 1.7 | Nov 2025 | +|---------|--------------| +| 0.1 | Apr 2024 | +| 0.6 | May 2024 | +| 0.7 | Jun 2024 | +| 0.8 | Jul 2024 | +| 0.9 | Aug 2024 | +| 1.0 | Sep 2024 | +| 1.1 | Nov 2024 | +| 1.2 | Jan 2025 | +| 1.3 | Mar 2025 | +| 1.4 | May 2025 | +| 1.5 | Jul 2025 | +| 1.6 | Sep 2025 | +| 1.7 | Nov 2025 | ## General Overview