コード例 #1
0
def create_configstore(client, resource_group_name, name, location, sku=None):
    sku = "Free" if sku is None else sku

    configstore_params = ConfigurationStore(location=location.lower(),
                                            identity=None,
                                            sku=Sku(name=sku))
    return client.create(resource_group_name, name, configstore_params)
コード例 #2
0
def update_configstore(cmd,
                       client,
                       name,
                       resource_group_name=None,
                       tags=None,
                       sku=None,
                       encryption_key_name=None,
                       encryption_key_vault=None,
                       encryption_key_version=None,
                       identity_client_id=None):
    __validate_cmk(encryption_key_name, encryption_key_vault,
                   encryption_key_version, identity_client_id)
    if resource_group_name is None:
        resource_group_name, _ = resolve_resource_group(cmd, name)

    update_params = ConfigurationStoreUpdateParameters(
        tags=tags if tags else None, sku=Sku(name=sku) if sku else None)

    if encryption_key_name is not None:
        key_vault_properties = KeyVaultProperties()
        if encryption_key_name:
            # key identifier schema https://keyvaultname.vault-int.azure-int.net/keys/keyname/keyversion
            key_identifier = "{}/keys/{}/{}".format(
                encryption_key_vault.strip('/'), encryption_key_name,
                encryption_key_version if encryption_key_version else "")
            key_vault_properties = KeyVaultProperties(
                key_identifier=key_identifier,
                identity_client_id=identity_client_id)

        update_params.encryption = EncryptionProperties(
            key_vault_properties=key_vault_properties)

    return client.update(resource_group_name=resource_group_name,
                         config_store_name=name,
                         config_store_update_parameters=update_params)
コード例 #3
0
ファイル: custom.py プロジェクト: avanigupta/azure-cli
def create_configstore(client,
                       resource_group_name,
                       name,
                       location,
                       sku="Standard",
                       tags=None,
                       assign_identity=None,
                       enable_public_network=None,
                       disable_local_auth=None):
    if assign_identity is not None and not assign_identity:
        assign_identity = [SYSTEM_ASSIGNED_IDENTITY]

    public_network_access = None
    if enable_public_network is not None:
        public_network_access = 'Enabled' if enable_public_network else 'Disabled'

    configstore_params = ConfigurationStore(
        location=location.lower(),
        identity=__get_resource_identity(assign_identity)
        if assign_identity else None,
        sku=Sku(name=sku),
        tags=tags,
        public_network_access=public_network_access,
        disable_local_auth=disable_local_auth)

    return client.begin_create(resource_group_name, name, configstore_params)
コード例 #4
0
ファイル: custom.py プロジェクト: toki95/azure-cli
def create_configstore(client, resource_group_name, name, location, sku="Standard", assign_identity=None):
    if assign_identity is not None and not assign_identity:
        assign_identity = [SYSTEM_ASSIGNED_IDENTITY]

    configstore_params = ConfigurationStore(location=location.lower(),
                                            identity=__get_resource_identity(assign_identity) if assign_identity else None,
                                            sku=Sku(name=sku))

    return client.create(resource_group_name, name, configstore_params)
コード例 #5
0
ファイル: custom.py プロジェクト: woakesd/azure-cli
def update_configstore(cmd,
                       client,
                       name,
                       resource_group_name=None,
                       tags=None,
                       sku=None,
                       encryption_key_name=None,
                       encryption_key_vault=None,
                       encryption_key_version=None,
                       identity_client_id=None,
                       enable_public_network=None,
                       disable_local_auth=None,
                       enable_purge_protection=None):
    __validate_cmk(encryption_key_name, encryption_key_vault,
                   encryption_key_version, identity_client_id)
    if resource_group_name is None:
        resource_group_name, _ = resolve_store_metadata(cmd, name)

    public_network_access = None
    if enable_public_network is not None:
        public_network_access = 'Enabled' if enable_public_network else 'Disabled'
    update_params = ConfigurationStoreUpdateParameters(
        tags=tags,
        sku=Sku(name=sku) if sku else None,
        public_network_access=public_network_access,
        disable_local_auth=disable_local_auth,
        enable_purge_protection=enable_purge_protection)

    if encryption_key_name is not None:
        key_vault_properties = KeyVaultProperties()
        if encryption_key_name:
            # key identifier schema https://keyvaultname.vault-int.azure-int.net/keys/keyname/keyversion
            key_identifier = "{}/keys/{}/{}".format(
                encryption_key_vault.strip('/'), encryption_key_name,
                encryption_key_version if encryption_key_version else "")
            key_vault_properties = KeyVaultProperties(
                key_identifier=key_identifier,
                identity_client_id=identity_client_id)

        update_params.encryption = EncryptionProperties(
            key_vault_properties=key_vault_properties)

    return client.begin_update(resource_group_name=resource_group_name,
                               config_store_name=name,
                               config_store_update_parameters=update_params)
コード例 #6
0
ファイル: custom.py プロジェクト: woakesd/azure-cli
def create_configstore(client,
                       resource_group_name,
                       name,
                       location,
                       sku="Standard",
                       tags=None,
                       assign_identity=None,
                       enable_public_network=None,
                       disable_local_auth=None,
                       retention_days=None,
                       enable_purge_protection=None):
    if assign_identity is not None and not assign_identity:
        assign_identity = [SYSTEM_ASSIGNED_IDENTITY]

    public_network_access = None
    if enable_public_network is not None:
        public_network_access = 'Enabled' if enable_public_network else 'Disabled'

    if sku.lower() == 'free' and (enable_purge_protection or retention_days):
        logger.warning(
            "Options '--enable-purge-protection' and '--retention-days' will be ignored when creating a free store."
        )
        retention_days = None
        enable_purge_protection = None

    configstore_params = ConfigurationStore(
        location=location.lower(),
        identity=__get_resource_identity(assign_identity)
        if assign_identity else None,
        sku=Sku(name=sku),
        tags=tags,
        public_network_access=public_network_access,
        disable_local_auth=disable_local_auth,
        soft_delete_retention_in_days=retention_days,
        enable_purge_protection=enable_purge_protection,
        create_mode=CreateMode.DEFAULT)

    return client.begin_create(resource_group_name, name, configstore_params)
コード例 #7
0
ファイル: custom.py プロジェクト: woakesd/azure-cli
def recover_deleted_configstore(cmd,
                                client,
                                name,
                                resource_group_name=None,
                                location=None,
                                yes=False):
    if resource_group_name is None or location is None:
        metadata_resource_group, metadata_location = resolve_deleted_store_metadata(
            cmd, name, resource_group_name, location)

        if resource_group_name is None:
            resource_group_name = metadata_resource_group
        if location is None:
            location = metadata_location

    configstore_params = ConfigurationStore(
        location=location.lower(),
        sku=Sku(name="Standard"),  # Only Standard SKU stores can be recovered!
        create_mode=CreateMode.RECOVER)
    user_confirmation(
        "Are you sure you want to recover the App Configuration: {}".format(
            name), yes)
    return client.begin_create(resource_group_name, name, configstore_params)