diff --git a/src/k8s-extension/HISTORY.rst b/src/k8s-extension/HISTORY.rst index eeed091c6cc..bfa65dac229 100644 --- a/src/k8s-extension/HISTORY.rst +++ b/src/k8s-extension/HISTORY.rst @@ -3,6 +3,10 @@ Release History =============== +0.5.1 +++++++++++++++++++ +* Remove pyhelm dependency + 0.5.0 ++++++++++++++++++ * Add microsoft.openservicemesh customization to check distros diff --git a/src/k8s-extension/azext_k8s_extension/partner_extensions/OpenServiceMesh.py b/src/k8s-extension/azext_k8s_extension/partner_extensions/OpenServiceMesh.py index c5ad73ac35f..048dfe58637 100644 --- a/src/k8s-extension/azext_k8s_extension/partner_extensions/OpenServiceMesh.py +++ b/src/k8s-extension/azext_k8s_extension/partner_extensions/OpenServiceMesh.py @@ -12,8 +12,6 @@ from azure.cli.core.azclierror import InvalidArgumentValueError, RequiredArgumentMissingError from azure.cli.core.commands.client_factory import get_subscription_id -from pyhelm.chartbuilder import ChartBuilder -from pyhelm.repo import VersionError from packaging import version import yaml @@ -69,7 +67,7 @@ def Create(self, cmd, client, resource_group_name, cluster_name, name, cluster_t # NOTE-2: Return a valid ExtensionInstance object, Instance name and flag for Identity create_identity = False - _validate_tested_distro(cmd, resource_group_name, cluster_name, version) + # _validate_tested_distro(cmd, resource_group_name, cluster_name, version) extension_instance = ExtensionInstance( extension_type=extension_type, @@ -107,58 +105,58 @@ def Delete(self, client, resource_group_name, cluster_name, name, cluster_type): pass -def _validate_tested_distro(cmd, cluster_resource_group_name, cluster_name, extension_version): +# def _validate_tested_distro(cmd, cluster_resource_group_name, cluster_name, extension_version): - field_unavailable_error = '\"testedDistros\" field unavailable for version {0} of microsoft.openservicemesh, ' \ - 'cannot determine if this Kubernetes distribution has been properly tested'.format(extension_version) +# field_unavailable_error = '\"testedDistros\" field unavailable for version {0} of microsoft.openservicemesh, ' \ +# 'cannot determine if this Kubernetes distribution has been properly tested'.format(extension_version) - if version.parse(str(extension_version)) <= version.parse("0.8.3"): - logger.warning(field_unavailable_error) - return +# if version.parse(str(extension_version)) <= version.parse("0.8.3"): +# logger.warning(field_unavailable_error) +# return - subscription_id = get_subscription_id(cmd.cli_ctx) - resources = cf_resources(cmd.cli_ctx, subscription_id) +# subscription_id = get_subscription_id(cmd.cli_ctx) +# resources = cf_resources(cmd.cli_ctx, subscription_id) - cluster_resource_id = '/subscriptions/{0}/resourceGroups/{1}/providers/Microsoft.Kubernetes' \ - '/connectedClusters/{2}'.format(subscription_id, cluster_resource_group_name, cluster_name) +# cluster_resource_id = '/subscriptions/{0}/resourceGroups/{1}/providers/Microsoft.Kubernetes' \ +# '/connectedClusters/{2}'.format(subscription_id, cluster_resource_group_name, cluster_name) - resource = resources.get_by_id(cluster_resource_id, '2020-01-01-preview') - cluster_distro = resource.properties['distribution'].lower() +# resource = resources.get_by_id(cluster_resource_id, '2020-01-01-preview') +# cluster_distro = resource.properties['distribution'].lower() - if cluster_distro == "general": - logger.warning('Unable to determine if distro has been tested for microsoft.openservicemesh, ' - 'kubernetes distro: \"general\"') - return +# if cluster_distro == "general": +# logger.warning('Unable to determine if distro has been tested for microsoft.openservicemesh, ' +# 'kubernetes distro: \"general\"') +# return - tested_distros = _get_tested_distros(extension_version) +# tested_distros = _get_tested_distros(extension_version) - if tested_distros is None: - logger.warning(field_unavailable_error) - elif cluster_distro not in tested_distros.split(): - logger.warning('Untested kubernetes distro for microsoft.openservicemesh, Kubernetes distro is %s', - cluster_distro) +# if tested_distros is None: +# logger.warning(field_unavailable_error) +# elif cluster_distro not in tested_distros.split(): +# logger.warning('Untested kubernetes distro for microsoft.openservicemesh, Kubernetes distro is %s', +# cluster_distro) -def _get_tested_distros(chart_version): +# def _get_tested_distros(chart_version): - try: - chart_arc = ChartBuilder({ - "name": OpenServiceMesh.CHART_NAME, - "version": str(chart_version), - "source": { - "type": "repo", - "location": OpenServiceMesh.CHART_LOCATION - } - }) - except VersionError: - raise InvalidArgumentValueError( - "Invalid version '{}' for microsoft.openservicemesh".format(chart_version) - ) +# try: +# chart_arc = ChartBuilder({ +# "name": OpenServiceMesh.CHART_NAME, +# "version": str(chart_version), +# "source": { +# "type": "repo", +# "location": OpenServiceMesh.CHART_LOCATION +# } +# }) +# except VersionError: +# raise InvalidArgumentValueError( +# "Invalid version '{}' for microsoft.openservicemesh".format(chart_version) +# ) - values = chart_arc.get_values() - values_yaml = yaml.load(values.raw, Loader=yaml.FullLoader) +# values = chart_arc.get_values() +# values_yaml = yaml.load(values.raw, Loader=yaml.FullLoader) - try: - return values_yaml['OpenServiceMesh']['testedDistros'] - except KeyError: - return None +# try: +# return values_yaml['OpenServiceMesh']['testedDistros'] +# except KeyError: +# return None diff --git a/src/k8s-extension/azext_k8s_extension/tests/latest/test_open_service_mesh.py b/src/k8s-extension/azext_k8s_extension/tests/latest/test_open_service_mesh.py index 72e94a06831..61b774045ce 100644 --- a/src/k8s-extension/azext_k8s_extension/tests/latest/test_open_service_mesh.py +++ b/src/k8s-extension/azext_k8s_extension/tests/latest/test_open_service_mesh.py @@ -9,14 +9,15 @@ import unittest from azure.cli.core.azclierror import InvalidArgumentValueError -from azext_k8s_extension.partner_extensions.OpenServiceMesh import _get_tested_distros +# from azext_k8s_extension.partner_extensions.OpenServiceMesh import _get_tested_distros TEST_DIR = os.path.abspath(os.path.join(os.path.abspath(__file__), '..')) class TestOpenServiceMesh(unittest.TestCase): def test_bad_osm_arc_version(self): - version = "0.7.1" - err = "Invalid version \'" + str(version) + "\' for microsoft.openservicemesh" - with self.assertRaises(InvalidArgumentValueError) as argError: - _get_tested_distros(version) - self.assertEqual(str(argError.exception), err) + # version = "0.7.1" + # err = "Invalid version \'" + str(version) + "\' for microsoft.openservicemesh" + # with self.assertRaises(InvalidArgumentValueError) as argError: + # _get_tested_distros(version) + # self.assertEqual(str(argError.exception), err) + pass diff --git a/src/k8s-extension/setup.py b/src/k8s-extension/setup.py index a8400af15cc..218b0d47aa5 100644 --- a/src/k8s-extension/setup.py +++ b/src/k8s-extension/setup.py @@ -34,7 +34,7 @@ 'pyhelm' ] -VERSION = "0.5.0" +VERSION = "0.5.1" with open('README.rst', 'r', encoding='utf-8') as f: README = f.read()