diff --git a/src/azure-cli-core/azure/cli/core/extension/__init__.py b/src/azure-cli-core/azure/cli/core/extension/__init__.py index 53afb00ecd9..a6d8eb2234d 100644 --- a/src/azure-cli-core/azure/cli/core/extension/__init__.py +++ b/src/azure-cli-core/azure/cli/core/extension/__init__.py @@ -363,6 +363,10 @@ def is_preview_from_extension_meta(extension_meta): is_preview_from_semantic_version(extension_meta.get('version'))) +def is_experimental_from_extension_meta(extension_meta): + return bool(extension_meta.get(EXT_METADATA_ISEXPERIMENTAL, False)) + + def is_preview_from_semantic_version(version): """ pre = [a, b] -> preview diff --git a/src/azure-cli-core/azure/cli/core/extension/operations.py b/src/azure-cli-core/azure/cli/core/extension/operations.py index e20aed58b03..db79dbe07af 100644 --- a/src/azure-cli-core/azure/cli/core/extension/operations.py +++ b/src/azure-cli-core/azure/cli/core/extension/operations.py @@ -20,6 +20,7 @@ from azure.cli.core.util import CLIError, reload_module, rmtree_with_retry from azure.cli.core.extension import (extension_exists, build_extension_path, get_extensions, get_extension_modname, get_extension, ext_compat_with_cli, is_preview_from_extension_meta, + is_experimental_from_extension_meta, WheelExtension, DevExtension, ExtensionNotInstalledException, WHEEL_INFO_RE) from azure.cli.core.telemetry import set_extension_management_detail @@ -466,7 +467,7 @@ def list_available_extensions(index_url=None, show_details=False, cli_ctx=None): 'version': latest['metadata']['version'], 'summary': latest['metadata']['summary'], 'preview': is_preview_from_extension_meta(latest['metadata']), - 'experimental': False, + 'experimental': is_experimental_from_extension_meta(latest['metadata']), 'installed': installed }) return results diff --git a/src/azure-cli-core/azure/cli/core/tests/test_extension.py b/src/azure-cli-core/azure/cli/core/tests/test_extension.py index 1b002025cc5..711d3b70d50 100644 --- a/src/azure-cli-core/azure/cli/core/tests/test_extension.py +++ b/src/azure-cli-core/azure/cli/core/tests/test_extension.py @@ -299,7 +299,7 @@ def test_list_available_extensions_preview_details(self): self.assertEqual(res[0]['summary'], 'AzureMachineLearningWorkspaces Extension') self.assertEqual(res[0]['version'], '2.0.0a1') self.assertEqual(res[0]['preview'], True) - self.assertEqual(res[0]['experimental'], False) + self.assertEqual(res[0]['experimental'], True) self.assertEqual(res[1]['name'], 'test_sample_extension1') self.assertEqual(res[1]['version'], '1.15.0') self.assertEqual(res[1]['preview'], True)