Skip to content
This repository was archived by the owner on May 13, 2025. It is now read-only.

Commit a0431a6

Browse files
Use default extension with identity instead of Cassandra specific (#69)
1 parent 611b81f commit a0431a6

File tree

2 files changed

+62
-62
lines changed

2 files changed

+62
-62
lines changed

src/k8s-extension/azext_k8s_extension/custom.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818
from .partner_extensions.ContainerInsights import ContainerInsights
1919
from .partner_extensions.AzureDefender import AzureDefender
20-
from .partner_extensions.Cassandra import Cassandra
20+
from .partner_extensions.DefaultExtensionWithIdentity import DefaultExtensionWithIdentity
2121
from .partner_extensions.AzureMLKubernetes import AzureMLKubernetes
2222
from .partner_extensions.OpenServiceMesh import OpenServiceMesh
2323
from .partner_extensions.DefaultExtension import DefaultExtension
@@ -35,7 +35,7 @@ def ExtensionFactory(extension_name):
3535
'microsoft.azuredefender.kubernetes': AzureDefender,
3636
'microsoft.openservicemesh': OpenServiceMesh,
3737
'microsoft.azureml.kubernetes': AzureMLKubernetes,
38-
'cassandradatacentersoperator': Cassandra,
38+
'cassandradatacentersoperator': DefaultExtensionWithIdentity,
3939
}
4040

4141
# Return the extension if we find it in the map, else return the default
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,60 @@
1-
# --------------------------------------------------------------------------------------------
2-
# Copyright (c) Microsoft Corporation. All rights reserved.
3-
# Licensed under the MIT License. See License.txt in the project root for license information.
4-
# --------------------------------------------------------------------------------------------
5-
6-
# pylint: disable=unused-argument
7-
8-
from ..vendored_sdks.models import ExtensionInstance
9-
from ..vendored_sdks.models import ExtensionInstanceUpdate
10-
from ..vendored_sdks.models import ScopeCluster
11-
from ..vendored_sdks.models import ScopeNamespace
12-
from ..vendored_sdks.models import Scope
13-
14-
from .PartnerExtensionModel import PartnerExtensionModel
15-
16-
17-
class Cassandra(PartnerExtensionModel):
18-
def Create(self, cmd, client, resource_group_name, cluster_name, name, cluster_type, extension_type,
19-
scope, auto_upgrade_minor_version, release_train, version, target_namespace,
20-
release_namespace, configuration_settings, configuration_protected_settings,
21-
configuration_settings_file, configuration_protected_settings_file):
22-
23-
"""Default validations & defaults for Create
24-
Must create and return a valid 'ExtensionInstance' object.
25-
26-
"""
27-
ext_scope = None
28-
if scope is not None:
29-
if scope.lower() == 'cluster':
30-
scope_cluster = ScopeCluster(release_namespace=release_namespace)
31-
ext_scope = Scope(cluster=scope_cluster, namespace=None)
32-
elif scope.lower() == 'namespace':
33-
scope_namespace = ScopeNamespace(target_namespace=target_namespace)
34-
ext_scope = Scope(namespace=scope_namespace, cluster=None)
35-
36-
create_identity = True
37-
extension_instance = ExtensionInstance(
38-
extension_type=extension_type,
39-
auto_upgrade_minor_version=auto_upgrade_minor_version,
40-
release_train=release_train,
41-
version=version,
42-
scope=ext_scope,
43-
configuration_settings=configuration_settings,
44-
configuration_protected_settings=configuration_protected_settings,
45-
)
46-
return extension_instance, name, create_identity
47-
48-
def Update(self, extension, auto_upgrade_minor_version, release_train, version):
49-
"""Default validations & defaults for Update
50-
Must create and return a valid 'ExtensionInstanceUpdate' object.
51-
52-
"""
53-
return ExtensionInstanceUpdate(
54-
auto_upgrade_minor_version=auto_upgrade_minor_version,
55-
release_train=release_train,
56-
version=version
57-
)
58-
59-
def Delete(self, client, resource_group_name, cluster_name, name, cluster_type):
60-
pass
1+
# --------------------------------------------------------------------------------------------
2+
# Copyright (c) Microsoft Corporation. All rights reserved.
3+
# Licensed under the MIT License. See License.txt in the project root for license information.
4+
# --------------------------------------------------------------------------------------------
5+
6+
# pylint: disable=unused-argument
7+
8+
from ..vendored_sdks.models import ExtensionInstance
9+
from ..vendored_sdks.models import ExtensionInstanceUpdate
10+
from ..vendored_sdks.models import ScopeCluster
11+
from ..vendored_sdks.models import ScopeNamespace
12+
from ..vendored_sdks.models import Scope
13+
14+
from .PartnerExtensionModel import PartnerExtensionModel
15+
16+
17+
class DefaultExtensionWithIdentity(PartnerExtensionModel):
18+
def Create(self, cmd, client, resource_group_name, cluster_name, name, cluster_type, extension_type,
19+
scope, auto_upgrade_minor_version, release_train, version, target_namespace,
20+
release_namespace, configuration_settings, configuration_protected_settings,
21+
configuration_settings_file, configuration_protected_settings_file):
22+
23+
"""Default validations & defaults for Create
24+
Must create and return a valid 'ExtensionInstance' object.
25+
26+
"""
27+
ext_scope = None
28+
if scope is not None:
29+
if scope.lower() == 'cluster':
30+
scope_cluster = ScopeCluster(release_namespace=release_namespace)
31+
ext_scope = Scope(cluster=scope_cluster, namespace=None)
32+
elif scope.lower() == 'namespace':
33+
scope_namespace = ScopeNamespace(target_namespace=target_namespace)
34+
ext_scope = Scope(namespace=scope_namespace, cluster=None)
35+
36+
create_identity = True
37+
extension_instance = ExtensionInstance(
38+
extension_type=extension_type,
39+
auto_upgrade_minor_version=auto_upgrade_minor_version,
40+
release_train=release_train,
41+
version=version,
42+
scope=ext_scope,
43+
configuration_settings=configuration_settings,
44+
configuration_protected_settings=configuration_protected_settings,
45+
)
46+
return extension_instance, name, create_identity
47+
48+
def Update(self, extension, auto_upgrade_minor_version, release_train, version):
49+
"""Default validations & defaults for Update
50+
Must create and return a valid 'ExtensionInstanceUpdate' object.
51+
52+
"""
53+
return ExtensionInstanceUpdate(
54+
auto_upgrade_minor_version=auto_upgrade_minor_version,
55+
release_train=release_train,
56+
version=version
57+
)
58+
59+
def Delete(self, client, resource_group_name, cluster_name, name, cluster_type):
60+
pass

0 commit comments

Comments
 (0)