diff --git a/builder/azure/common/client/azure_client_set.go b/builder/azure/common/client/azure_client_set.go index f57442b2f..ed98173ad 100644 --- a/builder/azure/common/client/azure_client_set.go +++ b/builder/azure/common/client/azure_client_set.go @@ -8,6 +8,7 @@ import ( "github.com/Azure/azure-sdk-for-go/profiles/latest/compute/mgmt/compute" "github.com/Azure/azure-sdk-for-go/profiles/latest/compute/mgmt/compute/computeapi" "github.com/Azure/go-autorest/autorest" + "github.com/hashicorp/packer/helper/useragent" ) type AzureClientSet interface { @@ -33,6 +34,10 @@ type azureClientSet struct { } func New(c Config, say func(string)) (AzureClientSet, error) { + return new(c, say) +} + +func new(c Config, say func(string)) (*azureClientSet, error) { token, err := c.GetServicePrincipalToken(say, c.CloudEnvironment().ResourceManagerEndpoint) if err != nil { return nil, err @@ -46,12 +51,16 @@ func New(c Config, say func(string)) (AzureClientSet, error) { } func (s azureClientSet) configureAutorestClient(c *autorest.Client) { + c.AddToUserAgent(useragent.String()) c.Authorizer = s.authorizer c.Sender = s.sender } func (s azureClientSet) MetadataClient() MetadataClientAPI { - return metadataClient{s.sender} + return metadataClient{ + s.sender, + useragent.String(), + } } func (s azureClientSet) DisksClient() computeapi.DisksClientAPI { diff --git a/builder/azure/common/client/metadata.go b/builder/azure/common/client/metadata.go index c6dcf2783..99f6535f1 100644 --- a/builder/azure/common/client/metadata.go +++ b/builder/azure/common/client/metadata.go @@ -27,6 +27,7 @@ type ComputeInfo struct { // metadataClient implements MetadataClient type metadataClient struct { autorest.Sender + UserAgent string } var _ MetadataClientAPI = metadataClient{} @@ -38,6 +39,7 @@ func (client metadataClient) GetComputeInfo() (*ComputeInfo, error) { req, err := autorest.CreatePreparer( autorest.AsGet(), autorest.WithHeader("Metadata", "true"), + autorest.WithUserAgent(client.UserAgent), autorest.WithBaseURL(imdsURL), ).Prepare((&http.Request{})) if err != nil {