provider/azurerm: update Azure SDK to 6.0 Beta (#9700)

Fix keyvault KeyPermissions references
This commit is contained in:
Peter McAtominey 2016-11-01 19:25:20 +00:00 committed by Paul Stack
parent 744d1648f6
commit 565e8719db
32 changed files with 899 additions and 233 deletions

View File

@ -96,21 +96,21 @@ func resourceArmKeyVault() *schema.Resource {
Elem: &schema.Schema{
Type: schema.TypeString,
ValidateFunc: validation.StringInSlice([]string{
string(keyvault.All),
string(keyvault.Backup),
string(keyvault.Create),
string(keyvault.Decrypt),
string(keyvault.Delete),
string(keyvault.Encrypt),
string(keyvault.Get),
string(keyvault.Import),
string(keyvault.List),
string(keyvault.Restore),
string(keyvault.Sign),
string(keyvault.Unwrapkey),
string(keyvault.Update),
string(keyvault.Verify),
string(keyvault.Wrapkey),
string(keyvault.KeyPermissionsAll),
string(keyvault.KeyPermissionsBackup),
string(keyvault.KeyPermissionsCreate),
string(keyvault.KeyPermissionsDecrypt),
string(keyvault.KeyPermissionsDelete),
string(keyvault.KeyPermissionsEncrypt),
string(keyvault.KeyPermissionsGet),
string(keyvault.KeyPermissionsImport),
string(keyvault.KeyPermissionsList),
string(keyvault.KeyPermissionsRestore),
string(keyvault.KeyPermissionsSign),
string(keyvault.KeyPermissionsUnwrapKey),
string(keyvault.KeyPermissionsUpdate),
string(keyvault.KeyPermissionsVerify),
string(keyvault.KeyPermissionsWrapKey),
}, false),
},
},

View File

@ -2,8 +2,8 @@
//
// Use these APIs to manage Azure CDN resources through the Azure Resource
// Manager. You must make sure that requests made to these resources are
// secure. For more information, see Authenticating Azure Resource Manager
// requests (https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx).
// secure. For more information, see
// https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx.
package cdn
// Copyright (c) Microsoft and contributors. All rights reserved.

View File

@ -27,9 +27,8 @@ import (
// CustomDomainsClient is the use these APIs to manage Azure CDN resources
// through the Azure Resource Manager. You must make sure that requests made
// to these resources are secure. For more information, see <a
// href="https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx">Authenticating
// Azure Resource Manager requests.</a>
// to these resources are secure. For more information, see
// https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx.
type CustomDomainsClient struct {
ManagementClient
}

View File

@ -27,9 +27,8 @@ import (
// EndpointsClient is the use these APIs to manage Azure CDN resources through
// the Azure Resource Manager. You must make sure that requests made to these
// resources are secure. For more information, see <a
// href="https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx">Authenticating
// Azure Resource Manager requests.</a>
// resources are secure. For more information, see
// https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx.
type EndpointsClient struct {
ManagementClient
}

View File

@ -27,9 +27,8 @@ import (
// NameAvailabilityClient is the use these APIs to manage Azure CDN resources
// through the Azure Resource Manager. You must make sure that requests made
// to these resources are secure. For more information, see <a
// href="https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx">Authenticating
// Azure Resource Manager requests.</a>
// to these resources are secure. For more information, see
// https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx.
type NameAvailabilityClient struct {
ManagementClient
}

View File

@ -26,9 +26,8 @@ import (
// OperationsClient is the use these APIs to manage Azure CDN resources
// through the Azure Resource Manager. You must make sure that requests made
// to these resources are secure. For more information, see <a
// href="https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx">Authenticating
// Azure Resource Manager requests.</a>
// to these resources are secure. For more information, see
// https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx.
type OperationsClient struct {
ManagementClient
}

View File

@ -27,9 +27,8 @@ import (
// OriginsClient is the use these APIs to manage Azure CDN resources through
// the Azure Resource Manager. You must make sure that requests made to these
// resources are secure. For more information, see <a
// href="https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx">Authenticating
// Azure Resource Manager requests.</a>
// resources are secure. For more information, see
// https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx.
type OriginsClient struct {
ManagementClient
}

View File

@ -27,9 +27,8 @@ import (
// ProfilesClient is the use these APIs to manage Azure CDN resources through
// the Azure Resource Manager. You must make sure that requests made to these
// resources are secure. For more information, see <a
// href="https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx">Authenticating
// Azure Resource Manager requests.</a>
// resources are secure. For more information, see
// https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx.
type ProfilesClient struct {
ManagementClient
}

View File

@ -23,7 +23,7 @@ import (
)
const (
major = "5"
major = "6"
minor = "0"
patch = "0"
// Always begin a "tag" with a dash (as per http://semver.org)

View File

@ -21,6 +21,7 @@ package compute
import (
"github.com/Azure/go-autorest/autorest"
"github.com/Azure/go-autorest/autorest/azure"
"github.com/Azure/go-autorest/autorest/validation"
"net/http"
)
@ -47,6 +48,13 @@ func NewAvailabilitySetsClientWithBaseURI(baseURI string, subscriptionID string)
// supplied to the Create Availability Set operation. parameters is
// parameters supplied to the Create Availability Set operation.
func (client AvailabilitySetsClient) CreateOrUpdate(resourceGroupName string, name string, parameters AvailabilitySet) (result AvailabilitySet, err error) {
if err := validation.Validate([]validation.Validation{
{TargetValue: parameters,
Constraints: []validation.Constraint{{Target: "parameters.Properties", Name: validation.Null, Rule: false,
Chain: []validation.Constraint{{Target: "parameters.Properties.Statuses", Name: validation.ReadOnly, Rule: true, Chain: nil}}}}}}); err != nil {
return result, validation.NewErrorWithValidationError(err, "compute.AvailabilitySetsClient", "CreateOrUpdate")
}
req, err := client.CreateOrUpdatePreparer(resourceGroupName, name, parameters)
if err != nil {
return result, autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "CreateOrUpdate", nil, "Failure preparing request")

View File

@ -581,7 +581,7 @@ type PurchasePlan struct {
Product *string `json:"product,omitempty"`
}
// Resource is
// Resource is the Resource model definition.
type Resource struct {
ID *string `json:"id,omitempty"`
Name *string `json:"name,omitempty"`
@ -1015,7 +1015,7 @@ type VirtualMachineScaleSetProperties struct {
UpgradePolicy *UpgradePolicy `json:"upgradePolicy,omitempty"`
VirtualMachineProfile *VirtualMachineScaleSetVMProfile `json:"virtualMachineProfile,omitempty"`
ProvisioningState *string `json:"provisioningState,omitempty"`
OverProvision *bool `json:"overProvision,omitempty"`
Overprovision *bool `json:"overprovision,omitempty"`
}
// VirtualMachineScaleSetSku is describes an available virtual machine scale

View File

@ -23,7 +23,7 @@ import (
)
const (
major = "5"
major = "6"
minor = "0"
patch = "0"
// Always begin a "tag" with a dash (as per http://semver.org)

View File

@ -272,7 +272,7 @@ type Properties struct {
CreatedAt *date.Time `json:"createdAt,omitempty"`
MessageRetentionInDays *int64 `json:"messageRetentionInDays,omitempty"`
PartitionCount *int64 `json:"partitionCount,omitempty"`
PartitionIds *[]int32 `json:"partitionIds,omitempty"`
PartitionIds *[]string `json:"partitionIds,omitempty"`
Status EntityStatus `json:"status,omitempty"`
UpdatedAt *date.Time `json:"updatedAt,omitempty"`
}

View File

@ -23,7 +23,7 @@ import (
)
const (
major = "5"
major = "6"
minor = "0"
patch = "0"
// Always begin a "tag" with a dash (as per http://semver.org)

View File

@ -25,40 +25,90 @@ import (
"net/http"
)
// CertificatePermissions enumerates the values for certificate permissions.
type CertificatePermissions string
const (
// All specifies the all state for certificate permissions.
All CertificatePermissions = "all"
// Create specifies the create state for certificate permissions.
Create CertificatePermissions = "create"
// Delete specifies the delete state for certificate permissions.
Delete CertificatePermissions = "delete"
// Deleteissuers specifies the deleteissuers state for certificate
// permissions.
Deleteissuers CertificatePermissions = "deleteissuers"
// Get specifies the get state for certificate permissions.
Get CertificatePermissions = "get"
// Getissuers specifies the getissuers state for certificate permissions.
Getissuers CertificatePermissions = "getissuers"
// Import specifies the import state for certificate permissions.
Import CertificatePermissions = "import"
// List specifies the list state for certificate permissions.
List CertificatePermissions = "list"
// Listissuers specifies the listissuers state for certificate permissions.
Listissuers CertificatePermissions = "listissuers"
// Managecontacts specifies the managecontacts state for certificate
// permissions.
Managecontacts CertificatePermissions = "managecontacts"
// Manageissuers specifies the manageissuers state for certificate
// permissions.
Manageissuers CertificatePermissions = "manageissuers"
// Setissuers specifies the setissuers state for certificate permissions.
Setissuers CertificatePermissions = "setissuers"
// Update specifies the update state for certificate permissions.
Update CertificatePermissions = "update"
)
// KeyPermissions enumerates the values for key permissions.
type KeyPermissions string
const (
// All specifies the all state for key permissions.
All KeyPermissions = "all"
// Backup specifies the backup state for key permissions.
Backup KeyPermissions = "backup"
// Create specifies the create state for key permissions.
Create KeyPermissions = "create"
// Decrypt specifies the decrypt state for key permissions.
Decrypt KeyPermissions = "decrypt"
// Delete specifies the delete state for key permissions.
Delete KeyPermissions = "delete"
// Encrypt specifies the encrypt state for key permissions.
Encrypt KeyPermissions = "encrypt"
// Get specifies the get state for key permissions.
Get KeyPermissions = "get"
// Import specifies the import state for key permissions.
Import KeyPermissions = "import"
// List specifies the list state for key permissions.
List KeyPermissions = "list"
// Restore specifies the restore state for key permissions.
Restore KeyPermissions = "restore"
// Sign specifies the sign state for key permissions.
Sign KeyPermissions = "sign"
// Unwrapkey specifies the unwrapkey state for key permissions.
Unwrapkey KeyPermissions = "unwrapkey"
// Update specifies the update state for key permissions.
Update KeyPermissions = "update"
// Verify specifies the verify state for key permissions.
Verify KeyPermissions = "verify"
// Wrapkey specifies the wrapkey state for key permissions.
Wrapkey KeyPermissions = "wrapkey"
// KeyPermissionsAll specifies the key permissions all state for key
// permissions.
KeyPermissionsAll KeyPermissions = "all"
// KeyPermissionsBackup specifies the key permissions backup state for key
// permissions.
KeyPermissionsBackup KeyPermissions = "backup"
// KeyPermissionsCreate specifies the key permissions create state for key
// permissions.
KeyPermissionsCreate KeyPermissions = "create"
// KeyPermissionsDecrypt specifies the key permissions decrypt state for
// key permissions.
KeyPermissionsDecrypt KeyPermissions = "decrypt"
// KeyPermissionsDelete specifies the key permissions delete state for key
// permissions.
KeyPermissionsDelete KeyPermissions = "delete"
// KeyPermissionsEncrypt specifies the key permissions encrypt state for
// key permissions.
KeyPermissionsEncrypt KeyPermissions = "encrypt"
// KeyPermissionsGet specifies the key permissions get state for key
// permissions.
KeyPermissionsGet KeyPermissions = "get"
// KeyPermissionsImport specifies the key permissions import state for key
// permissions.
KeyPermissionsImport KeyPermissions = "import"
// KeyPermissionsList specifies the key permissions list state for key
// permissions.
KeyPermissionsList KeyPermissions = "list"
// KeyPermissionsRestore specifies the key permissions restore state for
// key permissions.
KeyPermissionsRestore KeyPermissions = "restore"
// KeyPermissionsSign specifies the key permissions sign state for key
// permissions.
KeyPermissionsSign KeyPermissions = "sign"
// KeyPermissionsUnwrapKey specifies the key permissions unwrap key state
// for key permissions.
KeyPermissionsUnwrapKey KeyPermissions = "unwrapKey"
// KeyPermissionsUpdate specifies the key permissions update state for key
// permissions.
KeyPermissionsUpdate KeyPermissions = "update"
// KeyPermissionsVerify specifies the key permissions verify state for key
// permissions.
KeyPermissionsVerify KeyPermissions = "verify"
// KeyPermissionsWrapKey specifies the key permissions wrap key state for
// key permissions.
KeyPermissionsWrapKey KeyPermissions = "wrapKey"
)
// SecretPermissions enumerates the values for secret permissions.
@ -92,9 +142,9 @@ const (
Standard SkuName = "standard"
)
// AccessPolicyEntry is an array of 0 to 16 identities that have access to the
// key vault. All identities in the array must use the same tenant ID as the
// key vault's tenant ID.
// AccessPolicyEntry is an identity that have access to the key vault. All
// identities in the array must use the same tenant ID as the key vault's
// tenant ID.
type AccessPolicyEntry struct {
TenantID *uuid.UUID `json:"tenantId,omitempty"`
ObjectID *uuid.UUID `json:"objectId,omitempty"`
@ -102,10 +152,12 @@ type AccessPolicyEntry struct {
Permissions *Permissions `json:"permissions,omitempty"`
}
// Permissions is permissions the identity has for keys and secrets
// Permissions is permissions the identity has for keys, secrets and
// certificates.
type Permissions struct {
Keys *[]KeyPermissions `json:"keys,omitempty"`
Secrets *[]SecretPermissions `json:"secrets,omitempty"`
Keys *[]KeyPermissions `json:"keys,omitempty"`
Secrets *[]SecretPermissions `json:"secrets,omitempty"`
Certificates *[]CertificatePermissions `json:"certificates,omitempty"`
}
// Resource is key Vault resource

View File

@ -23,7 +23,7 @@ import (
)
const (
major = "5"
major = "6"
minor = "0"
patch = "0"
// Always begin a "tag" with a dash (as per http://semver.org)

View File

@ -46,6 +46,78 @@ func NewApplicationGatewaysClientWithBaseURI(baseURI string, subscriptionID stri
return ApplicationGatewaysClient{NewWithBaseURI(baseURI, subscriptionID)}
}
// BackendHealth the BackendHealth operation gets the backend health of
// application gateway in the specified resource group through Network
// resource provider. This method may poll for completion. Polling can be
// canceled by passing the cancel channel argument. The channel will be used
// to cancel polling and any outstanding HTTP requests.
//
// resourceGroupName is the name of the resource group. applicationGatewayName
// is the name of the application gateway. expand is expands
// BackendAddressPool and BackendHttpSettings referenced in backend health.
func (client ApplicationGatewaysClient) BackendHealth(resourceGroupName string, applicationGatewayName string, expand string, cancel <-chan struct{}) (result autorest.Response, err error) {
req, err := client.BackendHealthPreparer(resourceGroupName, applicationGatewayName, expand, cancel)
if err != nil {
return result, autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "BackendHealth", nil, "Failure preparing request")
}
resp, err := client.BackendHealthSender(req)
if err != nil {
result.Response = resp
return result, autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "BackendHealth", resp, "Failure sending request")
}
result, err = client.BackendHealthResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "BackendHealth", resp, "Failure responding to request")
}
return
}
// BackendHealthPreparer prepares the BackendHealth request.
func (client ApplicationGatewaysClient) BackendHealthPreparer(resourceGroupName string, applicationGatewayName string, expand string, cancel <-chan struct{}) (*http.Request, error) {
pathParameters := map[string]interface{}{
"applicationGatewayName": autorest.Encode("path", applicationGatewayName),
"resourceGroupName": autorest.Encode("path", resourceGroupName),
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
queryParameters := map[string]interface{}{
"api-version": client.APIVersion,
}
if len(expand) > 0 {
queryParameters["$expand"] = autorest.Encode("query", expand)
}
preparer := autorest.CreatePreparer(
autorest.AsPost(),
autorest.WithBaseURL(client.BaseURI),
autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendhealth", pathParameters),
autorest.WithQueryParameters(queryParameters))
return preparer.Prepare(&http.Request{Cancel: cancel})
}
// BackendHealthSender sends the BackendHealth request. The method will close the
// http.Response Body if it receives an error.
func (client ApplicationGatewaysClient) BackendHealthSender(req *http.Request) (*http.Response, error) {
return autorest.SendWithSender(client,
req,
azure.DoPollForAsynchronous(client.PollingDelay))
}
// BackendHealthResponder handles the response to the BackendHealth request. The method always
// closes the http.Response Body.
func (client ApplicationGatewaysClient) BackendHealthResponder(resp *http.Response) (result autorest.Response, err error) {
err = autorest.Respond(
resp,
client.ByInspecting(),
azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted),
autorest.ByClosing())
result.Response = resp
return
}
// CreateOrUpdate the Put ApplicationGateway operation creates/updates a
// ApplicationGateway This method may poll for completion. Polling can be
// canceled by passing the cancel channel argument. The channel will be used
@ -58,7 +130,10 @@ func (client ApplicationGatewaysClient) CreateOrUpdate(resourceGroupName string,
if err := validation.Validate([]validation.Validation{
{TargetValue: parameters,
Constraints: []validation.Constraint{{Target: "parameters.Properties", Name: validation.Null, Rule: false,
Chain: []validation.Constraint{{Target: "parameters.Properties.OperationalState", Name: validation.ReadOnly, Rule: true, Chain: nil}}}}}}); err != nil {
Chain: []validation.Constraint{{Target: "parameters.Properties.WebApplicationFirewallConfiguration", Name: validation.Null, Rule: false,
Chain: []validation.Constraint{{Target: "parameters.Properties.WebApplicationFirewallConfiguration.Enabled", Name: validation.Null, Rule: true, Chain: nil}}},
{Target: "parameters.Properties.OperationalState", Name: validation.ReadOnly, Rule: true, Chain: nil},
}}}}}); err != nil {
return result, validation.NewErrorWithValidationError(err, "network.ApplicationGatewaysClient", "CreateOrUpdate")
}

View File

@ -24,6 +24,25 @@ import (
"net/http"
)
// ApplicationGatewayBackendHealthServerHealth enumerates the values for
// application gateway backend health server health.
type ApplicationGatewayBackendHealthServerHealth string
const (
// Down specifies the down state for application gateway backend health
// server health.
Down ApplicationGatewayBackendHealthServerHealth = "Down"
// Partial specifies the partial state for application gateway backend
// health server health.
Partial ApplicationGatewayBackendHealthServerHealth = "Partial"
// Unknown specifies the unknown state for application gateway backend
// health server health.
Unknown ApplicationGatewayBackendHealthServerHealth = "Unknown"
// Up specifies the up state for application gateway backend health server
// health.
Up ApplicationGatewayBackendHealthServerHealth = "Up"
)
// ApplicationGatewayCookieBasedAffinity enumerates the values for application
// gateway cookie based affinity.
type ApplicationGatewayCookieBasedAffinity string
@ -37,6 +56,19 @@ const (
Enabled ApplicationGatewayCookieBasedAffinity = "Enabled"
)
// ApplicationGatewayFirewallMode enumerates the values for application
// gateway firewall mode.
type ApplicationGatewayFirewallMode string
const (
// Detection specifies the detection state for application gateway
// firewall mode.
Detection ApplicationGatewayFirewallMode = "Detection"
// Prevention specifies the prevention state for application gateway
// firewall mode.
Prevention ApplicationGatewayFirewallMode = "Prevention"
)
// ApplicationGatewayOperationalState enumerates the values for application
// gateway operational state.
type ApplicationGatewayOperationalState string
@ -94,6 +126,11 @@ const (
// StandardSmall specifies the standard small state for application
// gateway sku name.
StandardSmall ApplicationGatewaySkuName = "Standard_Small"
// WAFLarge specifies the waf large state for application gateway sku name.
WAFLarge ApplicationGatewaySkuName = "WAF_Large"
// WAFMedium specifies the waf medium state for application gateway sku
// name.
WAFMedium ApplicationGatewaySkuName = "WAF_Medium"
)
// ApplicationGatewaySslProtocol enumerates the values for application gateway
@ -118,6 +155,8 @@ type ApplicationGatewayTier string
const (
// Standard specifies the standard state for application gateway tier.
Standard ApplicationGatewayTier = "Standard"
// WAF specifies the waf state for application gateway tier.
WAF ApplicationGatewayTier = "WAF"
)
// AuthorizationUseStatus enumerates the values for authorization use status.
@ -390,18 +429,22 @@ const (
type VirtualNetworkGatewayConnectionStatus string
const (
// Connected specifies the connected state for virtual network gateway
// connection status.
Connected VirtualNetworkGatewayConnectionStatus = "Connected"
// Connecting specifies the connecting state for virtual network gateway
// connection status.
Connecting VirtualNetworkGatewayConnectionStatus = "Connecting"
// NotConnected specifies the not connected state for virtual network
// VirtualNetworkGatewayConnectionStatusConnected specifies the virtual
// network gateway connection status connected state for virtual network
// gateway connection status.
NotConnected VirtualNetworkGatewayConnectionStatus = "NotConnected"
// Unknown specifies the unknown state for virtual network gateway
// connection status.
Unknown VirtualNetworkGatewayConnectionStatus = "Unknown"
VirtualNetworkGatewayConnectionStatusConnected VirtualNetworkGatewayConnectionStatus = "Connected"
// VirtualNetworkGatewayConnectionStatusConnecting specifies the virtual
// network gateway connection status connecting state for virtual network
// gateway connection status.
VirtualNetworkGatewayConnectionStatusConnecting VirtualNetworkGatewayConnectionStatus = "Connecting"
// VirtualNetworkGatewayConnectionStatusNotConnected specifies the virtual
// network gateway connection status not connected state for virtual
// network gateway connection status.
VirtualNetworkGatewayConnectionStatusNotConnected VirtualNetworkGatewayConnectionStatus = "NotConnected"
// VirtualNetworkGatewayConnectionStatusUnknown specifies the virtual
// network gateway connection status unknown state for virtual network
// gateway connection status.
VirtualNetworkGatewayConnectionStatusUnknown VirtualNetworkGatewayConnectionStatus = "Unknown"
)
// VirtualNetworkGatewayConnectionType enumerates the values for virtual
@ -483,15 +526,15 @@ const (
type VirtualNetworkPeeringState string
const (
// VirtualNetworkPeeringStateConnected specifies the virtual network
// peering state connected state for virtual network peering state.
VirtualNetworkPeeringStateConnected VirtualNetworkPeeringState = "Connected"
// VirtualNetworkPeeringStateDisconnected specifies the virtual network
// peering state disconnected state for virtual network peering state.
VirtualNetworkPeeringStateDisconnected VirtualNetworkPeeringState = "Disconnected"
// VirtualNetworkPeeringStateInitiated specifies the virtual network
// peering state initiated state for virtual network peering state.
VirtualNetworkPeeringStateInitiated VirtualNetworkPeeringState = "Initiated"
// Connected specifies the connected state for virtual network peering
// state.
Connected VirtualNetworkPeeringState = "Connected"
// Disconnected specifies the disconnected state for virtual network
// peering state.
Disconnected VirtualNetworkPeeringState = "Disconnected"
// Initiated specifies the initiated state for virtual network peering
// state.
Initiated VirtualNetworkPeeringState = "Initiated"
)
// VpnType enumerates the values for vpn type.
@ -561,6 +604,34 @@ type ApplicationGatewayBackendAddressPoolPropertiesFormat struct {
ProvisioningState *string `json:"provisioningState,omitempty"`
}
// ApplicationGatewayBackendHealth is list of backendhealth pools.
type ApplicationGatewayBackendHealth struct {
autorest.Response `json:"-"`
BackendAddressPools *[]ApplicationGatewayBackendHealthPool `json:"backendAddressPools,omitempty"`
}
// ApplicationGatewayBackendHealthHTTPSettings is application gateway
// backendhealth http settings.
type ApplicationGatewayBackendHealthHTTPSettings struct {
BackendHTTPSettings *ApplicationGatewayBackendHTTPSettings `json:"backendHttpSettings,omitempty"`
Servers *[]ApplicationGatewayBackendHealthServer `json:"servers,omitempty"`
}
// ApplicationGatewayBackendHealthPool is application gateway backendhealth
// pool.
type ApplicationGatewayBackendHealthPool struct {
BackendAddressPool *ApplicationGatewayBackendAddressPool `json:"backendAddressPool,omitempty"`
BackendHTTPSettingsCollection *[]ApplicationGatewayBackendHealthHTTPSettings `json:"backendHttpSettingsCollection,omitempty"`
}
// ApplicationGatewayBackendHealthServer is application gateway backendhealth
// http settings.
type ApplicationGatewayBackendHealthServer struct {
Address *string `json:"address,omitempty"`
IPConfiguration *SubResource `json:"ipConfiguration,omitempty"`
Health ApplicationGatewayBackendHealthServerHealth `json:"health,omitempty"`
}
// ApplicationGatewayBackendHTTPSettings is backend address pool settings of
// application gateway
type ApplicationGatewayBackendHTTPSettings struct {
@ -711,22 +782,23 @@ type ApplicationGatewayProbePropertiesFormat struct {
// ApplicationGatewayPropertiesFormat is properties of Application Gateway
type ApplicationGatewayPropertiesFormat struct {
Sku *ApplicationGatewaySku `json:"sku,omitempty"`
SslPolicy *ApplicationGatewaySslPolicy `json:"sslPolicy,omitempty"`
OperationalState ApplicationGatewayOperationalState `json:"operationalState,omitempty"`
GatewayIPConfigurations *[]ApplicationGatewayIPConfiguration `json:"gatewayIPConfigurations,omitempty"`
AuthenticationCertificates *[]ApplicationGatewayAuthenticationCertificate `json:"authenticationCertificates,omitempty"`
SslCertificates *[]ApplicationGatewaySslCertificate `json:"sslCertificates,omitempty"`
FrontendIPConfigurations *[]ApplicationGatewayFrontendIPConfiguration `json:"frontendIPConfigurations,omitempty"`
FrontendPorts *[]ApplicationGatewayFrontendPort `json:"frontendPorts,omitempty"`
Probes *[]ApplicationGatewayProbe `json:"probes,omitempty"`
BackendAddressPools *[]ApplicationGatewayBackendAddressPool `json:"backendAddressPools,omitempty"`
BackendHTTPSettingsCollection *[]ApplicationGatewayBackendHTTPSettings `json:"backendHttpSettingsCollection,omitempty"`
HTTPListeners *[]ApplicationGatewayHTTPListener `json:"httpListeners,omitempty"`
URLPathMaps *[]ApplicationGatewayURLPathMap `json:"urlPathMaps,omitempty"`
RequestRoutingRules *[]ApplicationGatewayRequestRoutingRule `json:"requestRoutingRules,omitempty"`
ResourceGUID *string `json:"resourceGuid,omitempty"`
ProvisioningState *string `json:"provisioningState,omitempty"`
Sku *ApplicationGatewaySku `json:"sku,omitempty"`
SslPolicy *ApplicationGatewaySslPolicy `json:"sslPolicy,omitempty"`
OperationalState ApplicationGatewayOperationalState `json:"operationalState,omitempty"`
GatewayIPConfigurations *[]ApplicationGatewayIPConfiguration `json:"gatewayIPConfigurations,omitempty"`
AuthenticationCertificates *[]ApplicationGatewayAuthenticationCertificate `json:"authenticationCertificates,omitempty"`
SslCertificates *[]ApplicationGatewaySslCertificate `json:"sslCertificates,omitempty"`
FrontendIPConfigurations *[]ApplicationGatewayFrontendIPConfiguration `json:"frontendIPConfigurations,omitempty"`
FrontendPorts *[]ApplicationGatewayFrontendPort `json:"frontendPorts,omitempty"`
Probes *[]ApplicationGatewayProbe `json:"probes,omitempty"`
BackendAddressPools *[]ApplicationGatewayBackendAddressPool `json:"backendAddressPools,omitempty"`
BackendHTTPSettingsCollection *[]ApplicationGatewayBackendHTTPSettings `json:"backendHttpSettingsCollection,omitempty"`
HTTPListeners *[]ApplicationGatewayHTTPListener `json:"httpListeners,omitempty"`
URLPathMaps *[]ApplicationGatewayURLPathMap `json:"urlPathMaps,omitempty"`
RequestRoutingRules *[]ApplicationGatewayRequestRoutingRule `json:"requestRoutingRules,omitempty"`
WebApplicationFirewallConfiguration *ApplicationGatewayWebApplicationFirewallConfiguration `json:"webApplicationFirewallConfiguration,omitempty"`
ResourceGUID *string `json:"resourceGuid,omitempty"`
ProvisioningState *string `json:"provisioningState,omitempty"`
}
// ApplicationGatewayRequestRoutingRule is request routing rule of application
@ -795,6 +867,13 @@ type ApplicationGatewayURLPathMapPropertiesFormat struct {
ProvisioningState *string `json:"provisioningState,omitempty"`
}
// ApplicationGatewayWebApplicationFirewallConfiguration is application
// gateway web application firewall configuration
type ApplicationGatewayWebApplicationFirewallConfiguration struct {
Enabled *bool `json:"enabled,omitempty"`
FirewallMode ApplicationGatewayFirewallMode `json:"firewallMode,omitempty"`
}
// AuthorizationListResult is response for ListAuthorizations Api service
// callRetrieves all authorizations that belongs to an ExpressRouteCircuit
type AuthorizationListResult struct {
@ -1321,16 +1400,16 @@ func (client InterfaceListResult) InterfaceListResultPreparer() (*http.Request,
// InterfacePropertiesFormat is networkInterface properties.
type InterfacePropertiesFormat struct {
VirtualMachine *SubResource `json:"virtualMachine,omitempty"`
NetworkSecurityGroup *SecurityGroup `json:"networkSecurityGroup,omitempty"`
IPConfigurations *[]InterfaceIPConfiguration `json:"ipConfigurations,omitempty"`
DNSSettings *InterfaceDNSSettings `json:"dnsSettings,omitempty"`
MacAddress *string `json:"macAddress,omitempty"`
Primary *bool `json:"primary,omitempty"`
AcceleratedNetworkingEnabled *bool `json:"acceleratedNetworkingEnabled,omitempty"`
EnableIPForwarding *bool `json:"enableIPForwarding,omitempty"`
ResourceGUID *string `json:"resourceGuid,omitempty"`
ProvisioningState *string `json:"provisioningState,omitempty"`
VirtualMachine *SubResource `json:"virtualMachine,omitempty"`
NetworkSecurityGroup *SecurityGroup `json:"networkSecurityGroup,omitempty"`
IPConfigurations *[]InterfaceIPConfiguration `json:"ipConfigurations,omitempty"`
DNSSettings *InterfaceDNSSettings `json:"dnsSettings,omitempty"`
MacAddress *string `json:"macAddress,omitempty"`
Primary *bool `json:"primary,omitempty"`
EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty"`
EnableIPForwarding *bool `json:"enableIPForwarding,omitempty"`
ResourceGUID *string `json:"resourceGuid,omitempty"`
ProvisioningState *string `json:"provisioningState,omitempty"`
}
// IPAddressAvailabilityResult is response for CheckIPAddressAvailability Api

View File

@ -23,7 +23,7 @@ import (
)
const (
major = "5"
major = "6"
minor = "0"
patch = "0"
// Always begin a "tag" with a dash (as per http://semver.org)

View File

@ -1,5 +1,5 @@
// Package resources implements the Azure ARM Resources service API version
// 2016-07-01.
// 2016-09-01.
//
package resources
@ -27,7 +27,7 @@ import (
const (
// APIVersion is the version of the Resources
APIVersion = "2016-07-01"
APIVersion = "2016-09-01"
// DefaultBaseURI is the default URI used for the service Resources
DefaultBaseURI = "https://management.azure.com"

View File

@ -53,7 +53,11 @@ func (client DeploymentOperationsClient) Get(resourceGroupName string, deploymen
{TargetValue: resourceGroupName,
Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil},
{Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil {
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}},
{TargetValue: deploymentName,
Constraints: []validation.Constraint{{Target: "deploymentName", Name: validation.MaxLength, Rule: 64, Chain: nil},
{Target: "deploymentName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "deploymentName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil {
return result, validation.NewErrorWithValidationError(err, "resources.DeploymentOperationsClient", "Get")
}
@ -126,7 +130,11 @@ func (client DeploymentOperationsClient) List(resourceGroupName string, deployme
{TargetValue: resourceGroupName,
Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil},
{Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil {
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}},
{TargetValue: deploymentName,
Constraints: []validation.Constraint{{Target: "deploymentName", Name: validation.MaxLength, Rule: 64, Chain: nil},
{Target: "deploymentName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "deploymentName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil {
return result, validation.NewErrorWithValidationError(err, "resources.DeploymentOperationsClient", "List")
}

View File

@ -51,7 +51,11 @@ func (client DeploymentsClient) Cancel(resourceGroupName string, deploymentName
{TargetValue: resourceGroupName,
Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil},
{Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil {
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}},
{TargetValue: deploymentName,
Constraints: []validation.Constraint{{Target: "deploymentName", Name: validation.MaxLength, Rule: 64, Chain: nil},
{Target: "deploymentName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "deploymentName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil {
return result, validation.NewErrorWithValidationError(err, "resources.DeploymentsClient", "Cancel")
}
@ -121,7 +125,11 @@ func (client DeploymentsClient) CheckExistence(resourceGroupName string, deploym
{TargetValue: resourceGroupName,
Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil},
{Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil {
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}},
{TargetValue: deploymentName,
Constraints: []validation.Constraint{{Target: "deploymentName", Name: validation.MaxLength, Rule: 64, Chain: nil},
{Target: "deploymentName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "deploymentName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil {
return result, validation.NewErrorWithValidationError(err, "resources.DeploymentsClient", "CheckExistence")
}
@ -196,6 +204,10 @@ func (client DeploymentsClient) CreateOrUpdate(resourceGroupName string, deploym
Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil},
{Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}},
{TargetValue: deploymentName,
Constraints: []validation.Constraint{{Target: "deploymentName", Name: validation.MaxLength, Rule: 64, Chain: nil},
{Target: "deploymentName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "deploymentName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}},
{TargetValue: parameters,
Constraints: []validation.Constraint{{Target: "parameters.Properties", Name: validation.Null, Rule: false,
Chain: []validation.Constraint{{Target: "parameters.Properties.TemplateLink", Name: validation.Null, Rule: false,
@ -278,7 +290,11 @@ func (client DeploymentsClient) Delete(resourceGroupName string, deploymentName
{TargetValue: resourceGroupName,
Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil},
{Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil {
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}},
{TargetValue: deploymentName,
Constraints: []validation.Constraint{{Target: "deploymentName", Name: validation.MaxLength, Rule: 64, Chain: nil},
{Target: "deploymentName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "deploymentName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil {
return result, validation.NewErrorWithValidationError(err, "resources.DeploymentsClient", "Delete")
}
@ -350,7 +366,11 @@ func (client DeploymentsClient) ExportTemplate(resourceGroupName string, deploym
{TargetValue: resourceGroupName,
Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil},
{Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil {
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}},
{TargetValue: deploymentName,
Constraints: []validation.Constraint{{Target: "deploymentName", Name: validation.MaxLength, Rule: 64, Chain: nil},
{Target: "deploymentName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "deploymentName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil {
return result, validation.NewErrorWithValidationError(err, "resources.DeploymentsClient", "ExportTemplate")
}
@ -421,7 +441,11 @@ func (client DeploymentsClient) Get(resourceGroupName string, deploymentName str
{TargetValue: resourceGroupName,
Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil},
{Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil {
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}},
{TargetValue: deploymentName,
Constraints: []validation.Constraint{{Target: "deploymentName", Name: validation.MaxLength, Rule: 64, Chain: nil},
{Target: "deploymentName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "deploymentName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}}}); err != nil {
return result, validation.NewErrorWithValidationError(err, "resources.DeploymentsClient", "Get")
}
@ -595,6 +619,10 @@ func (client DeploymentsClient) Validate(resourceGroupName string, deploymentNam
Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil},
{Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}},
{TargetValue: deploymentName,
Constraints: []validation.Constraint{{Target: "deploymentName", Name: validation.MaxLength, Rule: 64, Chain: nil},
{Target: "deploymentName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "deploymentName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}},
{TargetValue: parameters,
Constraints: []validation.Constraint{{Target: "parameters.Properties", Name: validation.Null, Rule: false,
Chain: []validation.Constraint{{Target: "parameters.Properties.TemplateLink", Name: validation.Null, Rule: false,

View File

@ -289,7 +289,6 @@ type ProviderResourceType struct {
Locations *[]string `json:"locations,omitempty"`
Aliases *[]AliasType `json:"aliases,omitempty"`
APIVersions *[]string `json:"apiVersions,omitempty"`
ZoneMappings *[]ZoneMappingType `json:"zoneMappings,omitempty"`
Properties *map[string]*string `json:"properties,omitempty"`
}
@ -309,6 +308,7 @@ type ResourceGroup struct {
Name *string `json:"name,omitempty"`
Properties *ResourceGroupProperties `json:"properties,omitempty"`
Location *string `json:"location,omitempty"`
ManagedBy *string `json:"managedBy,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
@ -455,9 +455,3 @@ type TemplateLink struct {
URI *string `json:"uri,omitempty"`
ContentVersion *string `json:"contentVersion,omitempty"`
}
// ZoneMappingType is zone mapping type.
type ZoneMappingType struct {
Location *string `json:"location,omitempty"`
Zones *[]string `json:"zones,omitempty"`
}

View File

@ -115,35 +115,100 @@ func (client Client) CheckExistenceResponder(resp *http.Response) (result autore
return
}
// CreateOrUpdate create a resource.
// CheckExistenceByID checks whether resource exists.
//
// resourceID is the fully qualified Id of the resource, including the
// resource name and resource type. For example,
// /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myGroup/Microsoft.Web/sites/mySite
func (client Client) CheckExistenceByID(resourceID string) (result autorest.Response, err error) {
req, err := client.CheckExistenceByIDPreparer(resourceID)
if err != nil {
return result, autorest.NewErrorWithError(err, "resources.Client", "CheckExistenceByID", nil, "Failure preparing request")
}
resp, err := client.CheckExistenceByIDSender(req)
if err != nil {
result.Response = resp
return result, autorest.NewErrorWithError(err, "resources.Client", "CheckExistenceByID", resp, "Failure sending request")
}
result, err = client.CheckExistenceByIDResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "resources.Client", "CheckExistenceByID", resp, "Failure responding to request")
}
return
}
// CheckExistenceByIDPreparer prepares the CheckExistenceByID request.
func (client Client) CheckExistenceByIDPreparer(resourceID string) (*http.Request, error) {
pathParameters := map[string]interface{}{
"resourceId": resourceID,
}
queryParameters := map[string]interface{}{
"api-version": client.APIVersion,
}
preparer := autorest.CreatePreparer(
autorest.AsHead(),
autorest.WithBaseURL(client.BaseURI),
autorest.WithPathParameters("/{resourceId}", pathParameters),
autorest.WithQueryParameters(queryParameters))
return preparer.Prepare(&http.Request{})
}
// CheckExistenceByIDSender sends the CheckExistenceByID request. The method will close the
// http.Response Body if it receives an error.
func (client Client) CheckExistenceByIDSender(req *http.Request) (*http.Response, error) {
return autorest.SendWithSender(client, req)
}
// CheckExistenceByIDResponder handles the response to the CheckExistenceByID request. The method always
// closes the http.Response Body.
func (client Client) CheckExistenceByIDResponder(resp *http.Response) (result autorest.Response, err error) {
err = autorest.Respond(
resp,
client.ByInspecting(),
azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusNoContent, http.StatusNotFound),
autorest.ByClosing())
result.Response = resp
return
}
// CreateOrUpdate create a resource. This method may poll for completion.
// Polling can be canceled by passing the cancel channel argument. The
// channel will be used to cancel polling and any outstanding HTTP requests.
//
// resourceGroupName is the name of the resource group. The name is case
// insensitive. resourceProviderNamespace is resource identity.
// parentResourcePath is resource identity. resourceType is resource
// identity. resourceName is resource identity. parameters is create or
// update resource parameters.
func (client Client) CreateOrUpdate(resourceGroupName string, resourceProviderNamespace string, parentResourcePath string, resourceType string, resourceName string, parameters GenericResource) (result GenericResource, err error) {
func (client Client) CreateOrUpdate(resourceGroupName string, resourceProviderNamespace string, parentResourcePath string, resourceType string, resourceName string, parameters GenericResource, cancel <-chan struct{}) (result autorest.Response, err error) {
if err := validation.Validate([]validation.Validation{
{TargetValue: resourceGroupName,
Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil},
{Target: "resourceGroupName", Name: validation.MinLength, Rule: 1, Chain: nil},
{Target: "resourceGroupName", Name: validation.Pattern, Rule: `^[-\w\._\(\)]+$`, Chain: nil}}},
{TargetValue: parameters,
Constraints: []validation.Constraint{{Target: "parameters.Identity", Name: validation.Null, Rule: false,
Chain: []validation.Constraint{{Target: "parameters.Identity.PrincipalID", Name: validation.ReadOnly, Rule: true, Chain: nil},
{Target: "parameters.Identity.TenantID", Name: validation.ReadOnly, Rule: true, Chain: nil},
}}}}}); err != nil {
Constraints: []validation.Constraint{{Target: "parameters.Kind", Name: validation.Null, Rule: false,
Chain: []validation.Constraint{{Target: "parameters.Kind", Name: validation.Pattern, Rule: `^[-\w\._,\(\)]+$`, Chain: nil}}},
{Target: "parameters.Identity", Name: validation.Null, Rule: false,
Chain: []validation.Constraint{{Target: "parameters.Identity.PrincipalID", Name: validation.ReadOnly, Rule: true, Chain: nil},
{Target: "parameters.Identity.TenantID", Name: validation.ReadOnly, Rule: true, Chain: nil},
}}}}}); err != nil {
return result, validation.NewErrorWithValidationError(err, "resources.Client", "CreateOrUpdate")
}
req, err := client.CreateOrUpdatePreparer(resourceGroupName, resourceProviderNamespace, parentResourcePath, resourceType, resourceName, parameters)
req, err := client.CreateOrUpdatePreparer(resourceGroupName, resourceProviderNamespace, parentResourcePath, resourceType, resourceName, parameters, cancel)
if err != nil {
return result, autorest.NewErrorWithError(err, "resources.Client", "CreateOrUpdate", nil, "Failure preparing request")
}
resp, err := client.CreateOrUpdateSender(req)
if err != nil {
result.Response = autorest.Response{Response: resp}
result.Response = resp
return result, autorest.NewErrorWithError(err, "resources.Client", "CreateOrUpdate", resp, "Failure sending request")
}
@ -156,7 +221,7 @@ func (client Client) CreateOrUpdate(resourceGroupName string, resourceProviderNa
}
// CreateOrUpdatePreparer prepares the CreateOrUpdate request.
func (client Client) CreateOrUpdatePreparer(resourceGroupName string, resourceProviderNamespace string, parentResourcePath string, resourceType string, resourceName string, parameters GenericResource) (*http.Request, error) {
func (client Client) CreateOrUpdatePreparer(resourceGroupName string, resourceProviderNamespace string, parentResourcePath string, resourceType string, resourceName string, parameters GenericResource, cancel <-chan struct{}) (*http.Request, error) {
pathParameters := map[string]interface{}{
"parentResourcePath": parentResourcePath,
"resourceGroupName": autorest.Encode("path", resourceGroupName),
@ -177,35 +242,117 @@ func (client Client) CreateOrUpdatePreparer(resourceGroupName string, resourcePr
autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}", pathParameters),
autorest.WithJSON(parameters),
autorest.WithQueryParameters(queryParameters))
return preparer.Prepare(&http.Request{})
return preparer.Prepare(&http.Request{Cancel: cancel})
}
// CreateOrUpdateSender sends the CreateOrUpdate request. The method will close the
// http.Response Body if it receives an error.
func (client Client) CreateOrUpdateSender(req *http.Request) (*http.Response, error) {
return autorest.SendWithSender(client, req)
return autorest.SendWithSender(client,
req,
azure.DoPollForAsynchronous(client.PollingDelay))
}
// CreateOrUpdateResponder handles the response to the CreateOrUpdate request. The method always
// closes the http.Response Body.
func (client Client) CreateOrUpdateResponder(resp *http.Response) (result GenericResource, err error) {
func (client Client) CreateOrUpdateResponder(resp *http.Response) (result autorest.Response, err error) {
err = autorest.Respond(
resp,
client.ByInspecting(),
azure.WithErrorUnlessStatusCode(http.StatusCreated, http.StatusOK),
autorest.ByUnmarshallingJSON(&result),
azure.WithErrorUnlessStatusCode(http.StatusCreated, http.StatusOK, http.StatusAccepted),
autorest.ByClosing())
result.Response = autorest.Response{Response: resp}
result.Response = resp
return
}
// Delete delete resource and all of its resources.
// CreateOrUpdateByID create a resource. This method may poll for completion.
// Polling can be canceled by passing the cancel channel argument. The
// channel will be used to cancel polling and any outstanding HTTP requests.
//
// resourceID is the fully qualified Id of the resource, including the
// resource name and resource type. For example,
// /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myGroup/Microsoft.Web/sites/mySite
// parameters is create or update resource parameters.
func (client Client) CreateOrUpdateByID(resourceID string, parameters GenericResource, cancel <-chan struct{}) (result autorest.Response, err error) {
if err := validation.Validate([]validation.Validation{
{TargetValue: parameters,
Constraints: []validation.Constraint{{Target: "parameters.Kind", Name: validation.Null, Rule: false,
Chain: []validation.Constraint{{Target: "parameters.Kind", Name: validation.Pattern, Rule: `^[-\w\._,\(\)]+$`, Chain: nil}}},
{Target: "parameters.Identity", Name: validation.Null, Rule: false,
Chain: []validation.Constraint{{Target: "parameters.Identity.PrincipalID", Name: validation.ReadOnly, Rule: true, Chain: nil},
{Target: "parameters.Identity.TenantID", Name: validation.ReadOnly, Rule: true, Chain: nil},
}}}}}); err != nil {
return result, validation.NewErrorWithValidationError(err, "resources.Client", "CreateOrUpdateByID")
}
req, err := client.CreateOrUpdateByIDPreparer(resourceID, parameters, cancel)
if err != nil {
return result, autorest.NewErrorWithError(err, "resources.Client", "CreateOrUpdateByID", nil, "Failure preparing request")
}
resp, err := client.CreateOrUpdateByIDSender(req)
if err != nil {
result.Response = resp
return result, autorest.NewErrorWithError(err, "resources.Client", "CreateOrUpdateByID", resp, "Failure sending request")
}
result, err = client.CreateOrUpdateByIDResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "resources.Client", "CreateOrUpdateByID", resp, "Failure responding to request")
}
return
}
// CreateOrUpdateByIDPreparer prepares the CreateOrUpdateByID request.
func (client Client) CreateOrUpdateByIDPreparer(resourceID string, parameters GenericResource, cancel <-chan struct{}) (*http.Request, error) {
pathParameters := map[string]interface{}{
"resourceId": resourceID,
}
queryParameters := map[string]interface{}{
"api-version": client.APIVersion,
}
preparer := autorest.CreatePreparer(
autorest.AsJSON(),
autorest.AsPut(),
autorest.WithBaseURL(client.BaseURI),
autorest.WithPathParameters("/{resourceId}", pathParameters),
autorest.WithJSON(parameters),
autorest.WithQueryParameters(queryParameters))
return preparer.Prepare(&http.Request{Cancel: cancel})
}
// CreateOrUpdateByIDSender sends the CreateOrUpdateByID request. The method will close the
// http.Response Body if it receives an error.
func (client Client) CreateOrUpdateByIDSender(req *http.Request) (*http.Response, error) {
return autorest.SendWithSender(client,
req,
azure.DoPollForAsynchronous(client.PollingDelay))
}
// CreateOrUpdateByIDResponder handles the response to the CreateOrUpdateByID request. The method always
// closes the http.Response Body.
func (client Client) CreateOrUpdateByIDResponder(resp *http.Response) (result autorest.Response, err error) {
err = autorest.Respond(
resp,
client.ByInspecting(),
azure.WithErrorUnlessStatusCode(http.StatusCreated, http.StatusOK, http.StatusAccepted),
autorest.ByClosing())
result.Response = resp
return
}
// Delete deletes a resource. This method may poll for completion. Polling can
// be canceled by passing the cancel channel argument. The channel will be
// used to cancel polling and any outstanding HTTP requests.
//
// resourceGroupName is the name of the resource group. The name is case
// insensitive. resourceProviderNamespace is resource identity.
// parentResourcePath is resource identity. resourceType is resource
// identity. resourceName is resource identity.
func (client Client) Delete(resourceGroupName string, resourceProviderNamespace string, parentResourcePath string, resourceType string, resourceName string) (result autorest.Response, err error) {
func (client Client) Delete(resourceGroupName string, resourceProviderNamespace string, parentResourcePath string, resourceType string, resourceName string, cancel <-chan struct{}) (result autorest.Response, err error) {
if err := validation.Validate([]validation.Validation{
{TargetValue: resourceGroupName,
Constraints: []validation.Constraint{{Target: "resourceGroupName", Name: validation.MaxLength, Rule: 90, Chain: nil},
@ -214,7 +361,7 @@ func (client Client) Delete(resourceGroupName string, resourceProviderNamespace
return result, validation.NewErrorWithValidationError(err, "resources.Client", "Delete")
}
req, err := client.DeletePreparer(resourceGroupName, resourceProviderNamespace, parentResourcePath, resourceType, resourceName)
req, err := client.DeletePreparer(resourceGroupName, resourceProviderNamespace, parentResourcePath, resourceType, resourceName, cancel)
if err != nil {
return result, autorest.NewErrorWithError(err, "resources.Client", "Delete", nil, "Failure preparing request")
}
@ -234,7 +381,7 @@ func (client Client) Delete(resourceGroupName string, resourceProviderNamespace
}
// DeletePreparer prepares the Delete request.
func (client Client) DeletePreparer(resourceGroupName string, resourceProviderNamespace string, parentResourcePath string, resourceType string, resourceName string) (*http.Request, error) {
func (client Client) DeletePreparer(resourceGroupName string, resourceProviderNamespace string, parentResourcePath string, resourceType string, resourceName string, cancel <-chan struct{}) (*http.Request, error) {
pathParameters := map[string]interface{}{
"parentResourcePath": parentResourcePath,
"resourceGroupName": autorest.Encode("path", resourceGroupName),
@ -253,13 +400,15 @@ func (client Client) DeletePreparer(resourceGroupName string, resourceProviderNa
autorest.WithBaseURL(client.BaseURI),
autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}", pathParameters),
autorest.WithQueryParameters(queryParameters))
return preparer.Prepare(&http.Request{})
return preparer.Prepare(&http.Request{Cancel: cancel})
}
// DeleteSender sends the Delete request. The method will close the
// http.Response Body if it receives an error.
func (client Client) DeleteSender(req *http.Request) (*http.Response, error) {
return autorest.SendWithSender(client, req)
return autorest.SendWithSender(client,
req,
azure.DoPollForAsynchronous(client.PollingDelay))
}
// DeleteResponder handles the response to the Delete request. The method always
@ -274,6 +423,71 @@ func (client Client) DeleteResponder(resp *http.Response) (result autorest.Respo
return
}
// DeleteByID deletes a resource. This method may poll for completion. Polling
// can be canceled by passing the cancel channel argument. The channel will
// be used to cancel polling and any outstanding HTTP requests.
//
// resourceID is the fully qualified Id of the resource, including the
// resource name and resource type. For example,
// /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myGroup/Microsoft.Web/sites/mySite
func (client Client) DeleteByID(resourceID string, cancel <-chan struct{}) (result autorest.Response, err error) {
req, err := client.DeleteByIDPreparer(resourceID, cancel)
if err != nil {
return result, autorest.NewErrorWithError(err, "resources.Client", "DeleteByID", nil, "Failure preparing request")
}
resp, err := client.DeleteByIDSender(req)
if err != nil {
result.Response = resp
return result, autorest.NewErrorWithError(err, "resources.Client", "DeleteByID", resp, "Failure sending request")
}
result, err = client.DeleteByIDResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "resources.Client", "DeleteByID", resp, "Failure responding to request")
}
return
}
// DeleteByIDPreparer prepares the DeleteByID request.
func (client Client) DeleteByIDPreparer(resourceID string, cancel <-chan struct{}) (*http.Request, error) {
pathParameters := map[string]interface{}{
"resourceId": resourceID,
}
queryParameters := map[string]interface{}{
"api-version": client.APIVersion,
}
preparer := autorest.CreatePreparer(
autorest.AsDelete(),
autorest.WithBaseURL(client.BaseURI),
autorest.WithPathParameters("/{resourceId}", pathParameters),
autorest.WithQueryParameters(queryParameters))
return preparer.Prepare(&http.Request{Cancel: cancel})
}
// DeleteByIDSender sends the DeleteByID request. The method will close the
// http.Response Body if it receives an error.
func (client Client) DeleteByIDSender(req *http.Request) (*http.Response, error) {
return autorest.SendWithSender(client,
req,
azure.DoPollForAsynchronous(client.PollingDelay))
}
// DeleteByIDResponder handles the response to the DeleteByID request. The method always
// closes the http.Response Body.
func (client Client) DeleteByIDResponder(resp *http.Response) (result autorest.Response, err error) {
err = autorest.Respond(
resp,
client.ByInspecting(),
azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusNoContent, http.StatusAccepted),
autorest.ByClosing())
result.Response = resp
return
}
// Get returns a resource belonging to a resource group.
//
// resourceGroupName is the name of the resource group. The name is case
@ -350,6 +564,68 @@ func (client Client) GetResponder(resp *http.Response) (result GenericResource,
return
}
// GetByID gets a resource.
//
// resourceID is the fully qualified Id of the resource, including the
// resource name and resource type. For example,
// /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myGroup/Microsoft.Web/sites/mySite
func (client Client) GetByID(resourceID string) (result GenericResource, err error) {
req, err := client.GetByIDPreparer(resourceID)
if err != nil {
return result, autorest.NewErrorWithError(err, "resources.Client", "GetByID", nil, "Failure preparing request")
}
resp, err := client.GetByIDSender(req)
if err != nil {
result.Response = autorest.Response{Response: resp}
return result, autorest.NewErrorWithError(err, "resources.Client", "GetByID", resp, "Failure sending request")
}
result, err = client.GetByIDResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "resources.Client", "GetByID", resp, "Failure responding to request")
}
return
}
// GetByIDPreparer prepares the GetByID request.
func (client Client) GetByIDPreparer(resourceID string) (*http.Request, error) {
pathParameters := map[string]interface{}{
"resourceId": resourceID,
}
queryParameters := map[string]interface{}{
"api-version": client.APIVersion,
}
preparer := autorest.CreatePreparer(
autorest.AsGet(),
autorest.WithBaseURL(client.BaseURI),
autorest.WithPathParameters("/{resourceId}", pathParameters),
autorest.WithQueryParameters(queryParameters))
return preparer.Prepare(&http.Request{})
}
// GetByIDSender sends the GetByID request. The method will close the
// http.Response Body if it receives an error.
func (client Client) GetByIDSender(req *http.Request) (*http.Response, error) {
return autorest.SendWithSender(client, req)
}
// GetByIDResponder handles the response to the GetByID request. The method always
// closes the http.Response Body.
func (client Client) GetByIDResponder(resp *http.Response) (result GenericResource, err error) {
err = autorest.Respond(
resp,
client.ByInspecting(),
azure.WithErrorUnlessStatusCode(http.StatusOK),
autorest.ByUnmarshallingJSON(&result),
autorest.ByClosing())
result.Response = autorest.Response{Response: resp}
return
}
// List get all of the resources under a subscription.
//
// filter is the filter to apply on the operation. expand is the $expand query

View File

@ -23,7 +23,7 @@ import (
)
const (
major = "5"
major = "6"
minor = "0"
patch = "0"
// Always begin a "tag" with a dash (as per http://semver.org)
@ -34,7 +34,7 @@ const (
// UserAgent returns the UserAgent string to use when sending http.Requests.
func UserAgent() string {
return fmt.Sprintf(userAgentFormat, Version(), "resources", "2016-07-01")
return fmt.Sprintf(userAgentFormat, Version(), "resources", "2016-09-01")
}
// Version returns the semantic version (see http://semver.org) of the client.

View File

@ -23,7 +23,7 @@ import (
)
const (
major = "5"
major = "6"
minor = "0"
patch = "0"
// Always begin a "tag" with a dash (as per http://semver.org)

View File

@ -23,7 +23,7 @@ import (
)
const (
major = "5"
major = "6"
minor = "0"
patch = "0"
// Always begin a "tag" with a dash (as per http://semver.org)

View File

@ -23,7 +23,7 @@ import (
)
const (
major = "5"
major = "6"
minor = "0"
patch = "0"
// Always begin a "tag" with a dash (as per http://semver.org)

View File

@ -23,7 +23,7 @@ import (
)
const (
major = "5"
major = "6"
minor = "0"
patch = "0"
// Always begin a "tag" with a dash (as per http://semver.org)

View File

@ -70,7 +70,10 @@ func (client client) sendAzureRequest(method, url, contentType string, data []by
return nil, fmt.Errorf(errParamNotSpecified, "url")
}
httpClient := client.createHTTPClient()
httpClient, err := client.createHTTPClient()
if err != nil {
return nil, err
}
response, err := client.sendRequest(httpClient, url, method, contentType, data, 5)
if err != nil {
@ -82,8 +85,12 @@ func (client client) sendAzureRequest(method, url, contentType string, data []by
// createHTTPClient creates an HTTP Client configured with the key pair for
// the subscription for this client.
func (client client) createHTTPClient() *http.Client {
cert, _ := tls.X509KeyPair(client.publishSettings.SubscriptionCert, client.publishSettings.SubscriptionKey)
func (client client) createHTTPClient() (*http.Client, error) {
cert, err := tls.X509KeyPair(client.publishSettings.SubscriptionCert, client.publishSettings.SubscriptionKey)
if err != nil {
return nil, err
}
return &http.Client{
Transport: &http.Transport{
Proxy: http.ProxyFromEnvironment,
@ -92,7 +99,7 @@ func (client client) createHTTPClient() *http.Client {
Certificates: []tls.Certificate{cert},
},
},
}
}, nil
}
// sendRequest sends a request to the Azure management API using the given

View File

@ -256,6 +256,23 @@ const (
blobCopyStatusFailed = "failed"
)
// lease constants.
const (
leaseHeaderPrefix = "x-ms-lease-"
leaseID = "x-ms-lease-id"
leaseAction = "x-ms-lease-action"
leaseBreakPeriod = "x-ms-lease-break-period"
leaseDuration = "x-ms-lease-duration"
leaseProposedID = "x-ms-proposed-lease-id"
leaseTime = "x-ms-lease-time"
acquireLease = "acquire"
renewLease = "renew"
changeLease = "change"
releaseLease = "release"
breakLease = "break"
)
// BlockListType is used to filter out types of blocks in a Get Blocks List call
// for a block blob.
//
@ -560,6 +577,134 @@ func (b BlobStorageClient) getBlobRange(container, name, bytesRange string, extr
return resp, err
}
// leasePut is common PUT code for the various aquire/release/break etc functions.
func (b BlobStorageClient) leaseCommonPut(container string, name string, headers map[string]string, expectedStatus int) (http.Header, error) {
params := url.Values{"comp": {"lease"}}
uri := b.client.getEndpoint(blobServiceName, pathForBlob(container, name), params)
resp, err := b.client.exec("PUT", uri, headers, nil)
if err != nil {
return nil, err
}
defer resp.body.Close()
if err := checkRespCode(resp.statusCode, []int{expectedStatus}); err != nil {
return nil, err
}
return resp.headers, nil
}
// AcquireLease creates a lease for a blob as per https://msdn.microsoft.com/en-us/library/azure/ee691972.aspx
// returns leaseID acquired
func (b BlobStorageClient) AcquireLease(container string, name string, leaseTimeInSeconds int, proposedLeaseID string) (returnedLeaseID string, err error) {
headers := b.client.getStandardHeaders()
headers[leaseAction] = acquireLease
headers[leaseProposedID] = proposedLeaseID
headers[leaseDuration] = strconv.Itoa(leaseTimeInSeconds)
respHeaders, err := b.leaseCommonPut(container, name, headers, http.StatusCreated)
if err != nil {
return "", err
}
returnedLeaseID = respHeaders.Get(http.CanonicalHeaderKey(leaseID))
if returnedLeaseID != "" {
return returnedLeaseID, nil
}
// what should we return in case of HTTP 201 but no lease ID?
// or it just cant happen? (brave words)
return "", errors.New("LeaseID not returned")
}
// BreakLease breaks the lease for a blob as per https://msdn.microsoft.com/en-us/library/azure/ee691972.aspx
// Returns the timeout remaining in the lease in seconds
func (b BlobStorageClient) BreakLease(container string, name string) (breakTimeout int, err error) {
headers := b.client.getStandardHeaders()
headers[leaseAction] = breakLease
return b.breakLeaseCommon(container, name, headers)
}
// BreakLeaseWithBreakPeriod breaks the lease for a blob as per https://msdn.microsoft.com/en-us/library/azure/ee691972.aspx
// breakPeriodInSeconds is used to determine how long until new lease can be created.
// Returns the timeout remaining in the lease in seconds
func (b BlobStorageClient) BreakLeaseWithBreakPeriod(container string, name string, breakPeriodInSeconds int) (breakTimeout int, err error) {
headers := b.client.getStandardHeaders()
headers[leaseAction] = breakLease
headers[leaseBreakPeriod] = strconv.Itoa(breakPeriodInSeconds)
return b.breakLeaseCommon(container, name, headers)
}
// breakLeaseCommon is common code for both version of BreakLease (with and without break period)
func (b BlobStorageClient) breakLeaseCommon(container string, name string, headers map[string]string) (breakTimeout int, err error) {
respHeaders, err := b.leaseCommonPut(container, name, headers, http.StatusAccepted)
if err != nil {
return 0, err
}
breakTimeoutStr := respHeaders.Get(http.CanonicalHeaderKey(leaseTime))
if breakTimeoutStr != "" {
breakTimeout, err = strconv.Atoi(breakTimeoutStr)
if err != nil {
return 0, err
}
}
return breakTimeout, nil
}
// ChangeLease changes a lease ID for a blob as per https://msdn.microsoft.com/en-us/library/azure/ee691972.aspx
// Returns the new LeaseID acquired
func (b BlobStorageClient) ChangeLease(container string, name string, currentLeaseID string, proposedLeaseID string) (newLeaseID string, err error) {
headers := b.client.getStandardHeaders()
headers[leaseAction] = changeLease
headers[leaseID] = currentLeaseID
headers[leaseProposedID] = proposedLeaseID
respHeaders, err := b.leaseCommonPut(container, name, headers, http.StatusOK)
if err != nil {
return "", err
}
newLeaseID = respHeaders.Get(http.CanonicalHeaderKey(leaseID))
if newLeaseID != "" {
return newLeaseID, nil
}
return "", errors.New("LeaseID not returned")
}
// ReleaseLease releases the lease for a blob as per https://msdn.microsoft.com/en-us/library/azure/ee691972.aspx
func (b BlobStorageClient) ReleaseLease(container string, name string, currentLeaseID string) error {
headers := b.client.getStandardHeaders()
headers[leaseAction] = releaseLease
headers[leaseID] = currentLeaseID
_, err := b.leaseCommonPut(container, name, headers, http.StatusOK)
if err != nil {
return err
}
return nil
}
// RenewLease renews the lease for a blob as per https://msdn.microsoft.com/en-us/library/azure/ee691972.aspx
func (b BlobStorageClient) RenewLease(container string, name string, currentLeaseID string) error {
headers := b.client.getStandardHeaders()
headers[leaseAction] = renewLease
headers[leaseID] = currentLeaseID
_, err := b.leaseCommonPut(container, name, headers, http.StatusOK)
if err != nil {
return err
}
return nil
}
// GetBlobProperties provides various information about the specified
// blob. See https://msdn.microsoft.com/en-us/library/azure/dd179394.aspx
func (b BlobStorageClient) GetBlobProperties(container, name string) (*BlobProperties, error) {

120
vendor/vendor.json vendored
View File

@ -3,99 +3,99 @@
"ignore": "appengine test",
"package": [
{
"checksumSHA1": "jJfoTqvuxrUbr5kzLEowUl8yol4=",
"checksumSHA1": "7EtT3l4dwaxhwHlAd7IZ1DcglU0=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/arm/cdn",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
{
"checksumSHA1": "ndoTo9HTATazQPZiPzq5rFYJhHM=",
"checksumSHA1": "oIt4tXgFYnZJBsCac1BQLnTWALM=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/arm/compute",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
{
"checksumSHA1": "ndoTo9HTATazQPZiPzq5rFYJhHM=",
"checksumSHA1": "SPkgudG/pEcehXo9ytOLhOl67Pk=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/arm/eventhub",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
{
"checksumSHA1": "ndoTo9HTATazQPZiPzq5rFYJhHM=",
"checksumSHA1": "97/DmD4+utvbQqbVSDvf/eUFY+U=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/arm/keyvault",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
{
"checksumSHA1": "33Eny6aOVU6MjMYlfzufuo9OdCk=",
"checksumSHA1": "QKi6LiSyD5GnRK8ExpMgZl4XiMI=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/arm/network",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
{
"checksumSHA1": "8rreGMFmUgD89dr4TzfUQOiJJbk=",
"checksumSHA1": "FtfyN0iRVvIh5VhhOOnMcrIPn8c=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/arm/resources/resources",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
{
"checksumSHA1": "su/B4Of9HfkZSGT8+891cRSt7/0=",
"checksumSHA1": "3Y2bhfhNi9XZRM6d8+mAioAa/DU=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/arm/scheduler",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
{
"checksumSHA1": "W8WrH37bYeEuSG8qTs5a5J+eEnA=",
"checksumSHA1": "tNH1MlJGiBc5aalhn2c+K3B3lsw=",
"path": "github.com/Azure/azure-sdk-for-go/arm/servicebus",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
{
"checksumSHA1": "FKbsaZkfT8fHDGlTzK1fdK44Ufc=",
"checksumSHA1": "HEF1uByK7oq8NPBVQzs+q+Ntz8k=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/arm/storage",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
{
"checksumSHA1": "nBpj4xhS/L0RrSQf2RpEs4fe09k=",
"checksumSHA1": "HpEjcIrXo84sq0LO0bGfMl3VRRs=",
"path": "github.com/Azure/azure-sdk-for-go/arm/trafficmanager",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
{
"checksumSHA1": "+YUbdDgrxVZAyjcps6X2gB8BT+I=",
"checksumSHA1": "2TUrvoJUkp8W98S9f30Ss1J/Bnk=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/management",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
@ -103,8 +103,8 @@
"checksumSHA1": "TcQ6KXoBkvUhCYeggJ/bwcz+QaQ=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/management/affinitygroup",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
@ -112,8 +112,8 @@
"checksumSHA1": "HfjyhRfmKBsVgWLTOfWVcxe8Z88=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/management/hostedservice",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
@ -121,8 +121,8 @@
"checksumSHA1": "4otMhU6xZ41HfmiGZFYtV93GdcI=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/management/location",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
@ -130,8 +130,8 @@
"checksumSHA1": "hxivwm3D13cqFGOlOS3q8HD7DN0=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/management/networksecuritygroup",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
@ -139,8 +139,8 @@
"checksumSHA1": "XzrPv8SWFBYdh5oie+NGysqnLIM=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/management/osimage",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
@ -148,8 +148,8 @@
"checksumSHA1": "hzwziaU5QlMlFcFPdbEmW18oV3Y=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/management/sql",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
@ -157,8 +157,8 @@
"checksumSHA1": "YoAhDE0X6hSFuPpXbpfqcTC0Zvw=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/management/storageservice",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
@ -166,8 +166,8 @@
"checksumSHA1": "6xEiZL4a9rr5YbnY0RdzuzhEF1Q=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/management/virtualmachine",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
@ -175,8 +175,8 @@
"checksumSHA1": "xcBM3zQtfcE3VHNBACJJGEesCBI=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/management/virtualmachinedisk",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
@ -184,8 +184,8 @@
"checksumSHA1": "0bfdkDZ2JFV7bol6GQFfC0g+lP4=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/management/virtualmachineimage",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
@ -193,8 +193,8 @@
"checksumSHA1": "IhjDqm84VDVSIoHyiGvUzuljG3s=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/management/virtualnetwork",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
@ -202,17 +202,17 @@
"checksumSHA1": "+ykSkHo40/f6VK6/zXDqzF8Lh14=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/management/vmutils",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},
{
"checksumSHA1": "T1DpzOaZGsKlUq16elkdwF6ddsU=",
"checksumSHA1": "M30X+Wqn7AnUr1numUOkQRI7ET0=",
"comment": "v2.1.1-beta-8-gca4d906",
"path": "github.com/Azure/azure-sdk-for-go/storage",
"revision": "91f3d4a4d024e3c0d4d9412916d05cf84504a616",
"revisionTime": "2016-10-05T01:22:46Z",
"revision": "bd73d950fa4440dae889bd9917bff7cef539f86e",
"revisionTime": "2016-10-28T18:31:11Z",
"version": "v5.0.0-beta",
"versionExact": "v5.0.0-beta"
},