Skip to content

Commit

Permalink
refactoring
Browse files Browse the repository at this point in the history
  • Loading branch information
catsby committed Jul 31, 2015
1 parent b31761e commit 5cbf49f
Showing 1 changed file with 6 additions and 28 deletions.
34 changes: 6 additions & 28 deletions management/publishSettings.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,33 +26,7 @@ func ClientFromPublishSettingsDataWithConfig(settingsData []byte, subscriptionID
return client, err
}

for _, profile := range publishData.PublishProfiles {
for _, sub := range profile.Subscriptions {
if sub.ID == subscriptionID || subscriptionID == "" {
base64Cert := sub.ManagementCertificate
if base64Cert == "" {
base64Cert = profile.ManagementCertificate
}

pfxData, err := base64.StdEncoding.DecodeString(base64Cert)
if err != nil {
return client, err
}

pems, err := pkcs12.ConvertToPEM(pfxData, nil)

cert := []byte{}
for _, b := range pems {
cert = append(cert, pem.EncodeToMemory(b)...)
}

config.ManagementURL = sub.ServiceManagementURL
return makeClient(sub.ID, cert, config)
}
}
}

return client, fmt.Errorf("could not find subscription '%s' in settings provided", subscriptionID)
return clientFromPublishData(publishData, subscriptionID, config)
}

// ClientFromPublishSettingsFile reads a publish settings file downloaded from https://manage.windowsazure.com/publishsettings.
Expand All @@ -78,6 +52,10 @@ func ClientFromPublishSettingsFileWithConfig(filePath, subscriptionID string, co
return client, err
}

return clientFromPublishData(publishData, subscriptionID, config)
}

func clientFromPublishData(publishData publishData, subscriptionID string, config ClientConfig) (client Client, err error) {
for _, profile := range publishData.PublishProfiles {
for _, sub := range profile.Subscriptions {
if sub.ID == subscriptionID || subscriptionID == "" {
Expand All @@ -104,7 +82,7 @@ func ClientFromPublishSettingsFileWithConfig(filePath, subscriptionID string, co
}
}

return client, fmt.Errorf("could not find subscription '%s' in '%s'", subscriptionID, filePath)
return client, fmt.Errorf("could not find subscription '%s' in settings provided", subscriptionID)
}

type publishSettings struct {
Expand Down

0 comments on commit 5cbf49f

Please sign in to comment.