func createResourceGroup( name, location string, arm arm.Client) (group resources.ResourceGroup, err error) { rgc := arm.ResourceGroups() rpc := arm.Providers() params := resources.ResourceGroup{Name: &name, Location: &location} group, err = rgc.CreateOrUpdate(name, params) if err != nil { err = fmt.Errorf("Failed to create resource group '%s' in location '%s': '%s'\n", name, location, err.Error()) return } fmt.Printf("Created resource group '%s'\n", *group.Name) if _, err1 := rpc.Register("Microsoft.Storage"); err != nil { err = fmt.Errorf("Failed to register resource provider 'Microsoft.Storage': '%s'\n", err1.Error()) } if _, err1 := rpc.Register("Microsoft.Network"); err != nil { err = fmt.Errorf("Failed to register resource provider 'Microsoft.Network': '%s'\n", err1.Error()) } if _, err1 := rpc.Register("Microsoft.Compute"); err != nil { err = fmt.Errorf("Failed to register resource provider 'Microsoft.Compute': '%s'\n", err1.Error()) } return }