From 9e8581ad905fc06ba6fb6a39c301e3f3e6e549ac Mon Sep 17 00:00:00 2001 From: Pierre-Olivier Mercier Date: Fri, 1 Dec 2023 11:58:53 +0100 Subject: [PATCH] Add new provider: azure_private_dns --- go.mod | 1 + go.sum | 6 +++ providers/AzurePrivateDnsAPI.png | Bin 0 -> 13215 bytes providers/azurePrivateDns.go | 71 +++++++++++++++++++++++++++++++ 4 files changed, 78 insertions(+) create mode 100644 providers/AzurePrivateDnsAPI.png create mode 100644 providers/azurePrivateDns.go diff --git a/go.mod b/go.mod index 9548d3d..8b596ba 100644 --- a/go.mod +++ b/go.mod @@ -28,6 +28,7 @@ require ( github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0 // indirect github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0 // indirect github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns v1.2.0 // indirect + github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns v1.2.0 // indirect github.com/Azure/go-autorest v14.2.0+incompatible // indirect github.com/Azure/go-autorest/autorest/to v0.4.0 // indirect github.com/AzureAD/microsoft-authentication-library-for-go v1.1.1 // indirect diff --git a/go.sum b/go.sum index ac84a78..6780f4a 100644 --- a/go.sum +++ b/go.sum @@ -11,6 +11,12 @@ github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0 h1:d81/ng9rET2YqdVkVwkb6EX github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0/go.mod h1:s4kgfzA0covAXNicZHDMN58jExvcng2mC/DepXiF1EI= github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns v1.2.0 h1:lpOxwrQ919lCZoNCd69rVt8u1eLZuMORrGXqy8sNf3c= github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns v1.2.0/go.mod h1:fSvRkb8d26z9dbL40Uf/OO6Vo9iExtZK3D0ulRV+8M0= +github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/internal/v2 v2.0.0 h1:PTFGRSlMKCQelWwxUyYVEUqseBJVemLyqWJjvMyt0do= +github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/internal/v2 v2.0.0/go.mod h1:LRr2FzBTQlONPPa5HREE5+RjSCTXl7BwOvYOaWTqCaI= +github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns v1.2.0 h1:9Eih8XcEeQnFD0ntMlUDleKMzfeCeUfa+VbnDCI4AZs= +github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns v1.2.0/go.mod h1:wGPyTi+aURdqPAGMZDQqnNs9IrShADF8w2WZb6bKeq0= +github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources v1.1.1 h1:7CBQ+Ei8SP2c6ydQTGCCrS35bDxgTMfoP2miAwK++OU= +github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources v1.1.1/go.mod h1:c/wcGeGx5FUPbM/JltUYHZcKmigwyVLJlDq+4HdtXaw= github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs= github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= github.com/Azure/go-autorest/autorest/to v0.4.0 h1:oXVqrxakqqV1UZdSazDOPOLvOIz+XA683u8EctwboHk= diff --git a/providers/AzurePrivateDnsAPI.png b/providers/AzurePrivateDnsAPI.png new file mode 100644 index 0000000000000000000000000000000000000000..1cf06e767f060f7f7b18418191c75feaca3f8c6a GIT binary patch literal 13215 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� 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