From f5a5d3d6ce86b66258f6758887202cc9cbce9e6b Mon Sep 17 00:00:00 2001
From: alafanechere <augustin.lafanechere@gmail.com>
Date: Thu, 10 Oct 2024 15:47:31 +0200
Subject: [PATCH] airbyte-ci: add `rc` bump type to bump version

---
 airbyte-ci/connectors/pipelines/README.md                       | 1 +
 .../pipelines/airbyte_ci/connectors/bump_version/commands.py    | 2 +-
 .../pipelines/pipelines/airbyte_ci/steps/bump_version.py        | 2 ++
 airbyte-ci/connectors/pipelines/pyproject.toml                  | 2 +-
 4 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/airbyte-ci/connectors/pipelines/README.md b/airbyte-ci/connectors/pipelines/README.md
index d7a014854807..56def020f454 100644
--- a/airbyte-ci/connectors/pipelines/README.md
+++ b/airbyte-ci/connectors/pipelines/README.md
@@ -851,6 +851,7 @@ airbyte-ci connectors --language=low-code migrate-to-manifest-only
 
 | Version | PR                                                         | Description                                                                                                                  |
 | ------- | ---------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
+| 4.39.0  | [#46380](https://github.com/airbytehq/airbyte/pull/46380)  | The `bump-version` command now allows the `rc` bump type.                                                               |
 | 4.38.0  | [#46380](https://github.com/airbytehq/airbyte/pull/46380)  | `connectors up-to-date` now supports manifest-only connectors!                                                               |
 | 4.37.0  | [#46380](https://github.com/airbytehq/airbyte/pull/46380)  | Include custom components file handling in manifest-only migrations                                                          |
 | 4.36.2  | [#46278](https://github.com/airbytehq/airbyte/pull/46278)  | Fixed a bug in RC rollout and promote not taking `semaphore`                                                                 |
diff --git a/airbyte-ci/connectors/pipelines/pipelines/airbyte_ci/connectors/bump_version/commands.py b/airbyte-ci/connectors/pipelines/pipelines/airbyte_ci/connectors/bump_version/commands.py
index d727c2bc130d..c7047ba3dcc3 100644
--- a/airbyte-ci/connectors/pipelines/pipelines/airbyte_ci/connectors/bump_version/commands.py
+++ b/airbyte-ci/connectors/pipelines/pipelines/airbyte_ci/connectors/bump_version/commands.py
@@ -16,7 +16,7 @@ class BumpType(click.ParamType):
     name = "bump-type"
 
     def __init__(self) -> None:
-        self.choices = ["patch", "minor", "major"]
+        self.choices = ["patch", "minor", "major", "rc"]
 
     def convert(self, value: str, param: Optional[click.Parameter], ctx: Optional[click.Context]) -> str:
         if value in self.choices:
diff --git a/airbyte-ci/connectors/pipelines/pipelines/airbyte_ci/steps/bump_version.py b/airbyte-ci/connectors/pipelines/pipelines/airbyte_ci/steps/bump_version.py
index 2e78c0ec6a1b..00cf2c96d171 100644
--- a/airbyte-ci/connectors/pipelines/pipelines/airbyte_ci/steps/bump_version.py
+++ b/airbyte-ci/connectors/pipelines/pipelines/airbyte_ci/steps/bump_version.py
@@ -139,6 +139,8 @@ def get_bumped_version(version: str | None, bump_type: str) -> str:
             new_version = current_version.bump_minor()
         elif bump_type == "major":
             new_version = current_version.bump_major()
+        elif bump_type == "rc":
+            new_version = current_version.bump_prerelease()
         elif bump_type.startswith("version:"):
             version_str = bump_type.split("version:", 1)[1]
             if semver.VersionInfo.is_valid(version_str):
diff --git a/airbyte-ci/connectors/pipelines/pyproject.toml b/airbyte-ci/connectors/pipelines/pyproject.toml
index d5bf7217d2ca..c438d150a452 100644
--- a/airbyte-ci/connectors/pipelines/pyproject.toml
+++ b/airbyte-ci/connectors/pipelines/pyproject.toml
@@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api"
 
 [tool.poetry]
 name = "pipelines"
-version = "4.38.0"
+version = "4.39.0"
 description = "Packaged maintained by the connector operations team to perform CI for connectors' pipelines"
 authors = ["Airbyte <contact@airbyte.io>"]