|
9 | 9 | # https://github.com/Azure/azure-cli/blob/release/doc/extensions/versioning_guidelines.md |
10 | 10 |
|
11 | 11 | from packaging.version import parse |
| 12 | +from knack.util import CLIError |
12 | 13 | from azure_cli_diff_tool.utils import DiffLevel |
13 | 14 | from azdev.operations.constant import (PREVIEW_INIT_SUFFIX, VERSION_MAJOR_TAG, VERSION_MINOR_TAG, |
14 | 15 | VERSION_PATCH_TAG, VERSION_STABLE_TAG, VERSION_PREVIEW_TAG, VERSION_PRE_TAG, |
@@ -70,6 +71,8 @@ def __init__(self, module_name, current_version, is_preview, is_experimental, |
70 | 71 | self.init_version_pre_tag() |
71 | 72 | self.next_version = ModuleVersion(self.version) |
72 | 73 | self.last_stable_major = float('inf') |
| 74 | + self.pkg_name = self.module_name |
| 75 | + self.parse_pkg_name() |
73 | 76 | self.parse_last_stable_major() |
74 | 77 |
|
75 | 78 | def norm_versions(self): |
@@ -179,15 +182,22 @@ def find_max_version(version_datas): |
179 | 182 | has_stable = True |
180 | 183 | return has_stable, max_stable_major |
181 | 184 |
|
| 185 | + def parse_pkg_name(self): |
| 186 | + from azdev.operations.extensions import show_extension |
| 187 | + try: |
| 188 | + self.pkg_name = show_extension(self.module_name)["pkg_name"] |
| 189 | + except CLIError: |
| 190 | + pass |
| 191 | + |
182 | 192 | def parse_last_stable_major(self): |
183 | 193 | import requests |
184 | 194 | try: |
185 | 195 | response = requests.get(CLI_EXTENSION_INDEX_URL) |
186 | 196 | extension_data = response.json() |
187 | | - if self.module_name not in extension_data["extensions"]: |
| 197 | + if self.pkg_name not in extension_data["extensions"]: |
188 | 198 | return |
189 | 199 | has_stable, max_stable_major = self.find_max_version( |
190 | | - extension_data["extensions"][self.module_name]) |
| 200 | + extension_data["extensions"][self.pkg_name]) |
191 | 201 | if has_stable: |
192 | 202 | self.last_stable_major = max_stable_major |
193 | 203 | else: |
|
0 commit comments