-
Notifications
You must be signed in to change notification settings - Fork 187
/
keyvault_manager.go
29 lines (20 loc) · 1017 Bytes
/
keyvault_manager.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
package keyvaults
import (
"context"
"github.com/Azure/azure-sdk-for-go/services/keyvault/mgmt/2018-02-14/keyvault"
"github.com/Azure/go-autorest/autorest"
azurev1alpha1 "github.com/Azure/azure-service-operator/api/v1alpha1"
"github.com/Azure/azure-service-operator/pkg/resourcemanager"
)
type KeyVaultManager interface {
CreateVault(ctx context.Context, instance *azurev1alpha1.KeyVault, sku azurev1alpha1.KeyVaultSku, tags map[string]*string) (keyvault.Vault, error)
// DeleteVault removes the resource group named by env var
DeleteVault(ctx context.Context, groupName string, vaultName string) (result autorest.Response, err error)
// CheckExistence checks for the presence of a keyvault instance on Azure
GetVault(ctx context.Context, groupName string, vaultName string) (result keyvault.Vault, err error)
// also embed async client methods
resourcemanager.ARMClient
}
var _ KeyVaultManager = &AzureKeyVaultManager{}