Skip to content

Commit

Permalink
Merge pull request #593 from hashicorp/auto-pr/27f0726dd
Browse files Browse the repository at this point in the history
Auto PR: Regenerating the Go SDK (a43ac47)
  • Loading branch information
tombuildsstuff authored Aug 2, 2023
2 parents 09e7a9a + a43ac47 commit 875b489
Show file tree
Hide file tree
Showing 789 changed files with 53,483 additions and 22 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@

## `github.com/hashicorp/go-azure-sdk/resource-manager/containerapps/2023-05-01/availableworkloadprofiles` Documentation

The `availableworkloadprofiles` SDK allows for interaction with the Azure Resource Manager Service `containerapps` (API Version `2023-05-01`).

This readme covers example usages, but further information on [using this SDK can be found in the project root](https://github.com/hashicorp/go-azure-sdk/tree/main/docs).

### Import Path

```go
import "github.com/hashicorp/go-azure-sdk/resource-manager/containerapps/2023-05-01/availableworkloadprofiles"
```


### Client Initialization

```go
client := availableworkloadprofiles.NewAvailableWorkloadProfilesClientWithBaseURI("https://management.azure.com")
client.Client.Authorizer = authorizer
```


### Example Usage: `AvailableWorkloadProfilesClient.Get`

```go
ctx := context.TODO()
id := availableworkloadprofiles.NewLocationID("12345678-1234-9876-4563-123456789012", "locationValue")

// alternatively `client.Get(ctx, id)` can be used to do batched pagination
items, err := client.GetComplete(ctx, id)
if err != nil {
// handle the error
}
for _, item := range items {
// do something
}
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package availableworkloadprofiles

import "github.com/Azure/go-autorest/autorest"

// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See NOTICE.txt in the project root for license information.

type AvailableWorkloadProfilesClient struct {
Client autorest.Client
baseUri string
}

func NewAvailableWorkloadProfilesClientWithBaseURI(endpoint string) AvailableWorkloadProfilesClient {
return AvailableWorkloadProfilesClient{
Client: autorest.NewClientWithUserAgent(userAgent()),
baseUri: endpoint,
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
package availableworkloadprofiles

import "strings"

// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See NOTICE.txt in the project root for license information.

type Applicability string

const (
ApplicabilityCustom Applicability = "Custom"
ApplicabilityLocationDefault Applicability = "LocationDefault"
)

func PossibleValuesForApplicability() []string {
return []string{
string(ApplicabilityCustom),
string(ApplicabilityLocationDefault),
}
}

func parseApplicability(input string) (*Applicability, error) {
vals := map[string]Applicability{
"custom": ApplicabilityCustom,
"locationdefault": ApplicabilityLocationDefault,
}
if v, ok := vals[strings.ToLower(input)]; ok {
return &v, nil
}

// otherwise presume it's an undefined value and best-effort it
out := Applicability(input)
return &out, nil
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
package availableworkloadprofiles

import (
"fmt"
"strings"

"github.com/hashicorp/go-azure-helpers/resourcemanager/resourceids"
)

// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See NOTICE.txt in the project root for license information.

var _ resourceids.ResourceId = LocationId{}

// LocationId is a struct representing the Resource ID for a Location
type LocationId struct {
SubscriptionId string
LocationName string
}

// NewLocationID returns a new LocationId struct
func NewLocationID(subscriptionId string, locationName string) LocationId {
return LocationId{
SubscriptionId: subscriptionId,
LocationName: locationName,
}
}

// ParseLocationID parses 'input' into a LocationId
func ParseLocationID(input string) (*LocationId, error) {
parser := resourceids.NewParserFromResourceIdType(LocationId{})
parsed, err := parser.Parse(input, false)
if err != nil {
return nil, fmt.Errorf("parsing %q: %+v", input, err)
}

var ok bool
id := LocationId{}

if id.SubscriptionId, ok = parsed.Parsed["subscriptionId"]; !ok {
return nil, resourceids.NewSegmentNotSpecifiedError(id, "subscriptionId", *parsed)
}

if id.LocationName, ok = parsed.Parsed["locationName"]; !ok {
return nil, resourceids.NewSegmentNotSpecifiedError(id, "locationName", *parsed)
}

return &id, nil
}

// ParseLocationIDInsensitively parses 'input' case-insensitively into a LocationId
// note: this method should only be used for API response data and not user input
func ParseLocationIDInsensitively(input string) (*LocationId, error) {
parser := resourceids.NewParserFromResourceIdType(LocationId{})
parsed, err := parser.Parse(input, true)
if err != nil {
return nil, fmt.Errorf("parsing %q: %+v", input, err)
}

var ok bool
id := LocationId{}

if id.SubscriptionId, ok = parsed.Parsed["subscriptionId"]; !ok {
return nil, resourceids.NewSegmentNotSpecifiedError(id, "subscriptionId", *parsed)
}

if id.LocationName, ok = parsed.Parsed["locationName"]; !ok {
return nil, resourceids.NewSegmentNotSpecifiedError(id, "locationName", *parsed)
}

return &id, nil
}

// ValidateLocationID checks that 'input' can be parsed as a Location ID
func ValidateLocationID(input interface{}, key string) (warnings []string, errors []error) {
v, ok := input.(string)
if !ok {
errors = append(errors, fmt.Errorf("expected %q to be a string", key))
return
}

if _, err := ParseLocationID(v); err != nil {
errors = append(errors, err)
}

return
}

// ID returns the formatted Location ID
func (id LocationId) ID() string {
fmtString := "/subscriptions/%s/providers/Microsoft.App/locations/%s"
return fmt.Sprintf(fmtString, id.SubscriptionId, id.LocationName)
}

// Segments returns a slice of Resource ID Segments which comprise this Location ID
func (id LocationId) Segments() []resourceids.Segment {
return []resourceids.Segment{
resourceids.StaticSegment("staticSubscriptions", "subscriptions", "subscriptions"),
resourceids.SubscriptionIdSegment("subscriptionId", "12345678-1234-9876-4563-123456789012"),
resourceids.StaticSegment("staticProviders", "providers", "providers"),
resourceids.ResourceProviderSegment("staticMicrosoftApp", "Microsoft.App", "Microsoft.App"),
resourceids.StaticSegment("staticLocations", "locations", "locations"),
resourceids.UserSpecifiedSegment("locationName", "locationValue"),
}
}

// String returns a human-readable description of this Location ID
func (id LocationId) String() string {
components := []string{
fmt.Sprintf("Subscription: %q", id.SubscriptionId),
fmt.Sprintf("Location Name: %q", id.LocationName),
}
return fmt.Sprintf("Location (%s)", strings.Join(components, "\n"))
}
Loading

0 comments on commit 875b489

Please sign in to comment.