armastro

package module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 27, 2024 License: MIT Imports: 14 Imported by: 0

README

Azure Astro Module for Go

PkgGoDev

The armastro module provides operations for working with Azure Astro.

Source code

Getting started

Prerequisites

  • an Azure subscription
  • Go 1.18 or above (You could download and install the latest version of Go from here. It will replace the existing Go on your machine. If you want to install multiple Go versions on the same machine, you could refer this doc.)

Install the package

This project uses Go modules for versioning and dependency management.

Install the Azure Astro module:

go get github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/astro/armastro

Authorization

When creating a client, you will need to provide a credential for authenticating with Azure Astro. The azidentity module provides facilities for various ways of authenticating with Azure including client/secret, certificate, managed identity, and more.

cred, err := azidentity.NewDefaultAzureCredential(nil)

For more information on authentication, please see the documentation for azidentity at pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azidentity.

Client Factory

Azure Astro module consists of one or more clients. We provide a client factory which could be used to create any client in this module.

clientFactory, err := armastro.NewClientFactory(<subscription ID>, cred, nil)

You can use ClientOptions in package github.com/Azure/azure-sdk-for-go/sdk/azcore/arm to set endpoint to connect with public and sovereign clouds as well as Azure Stack. For more information, please see the documentation for azcore at pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azcore.

options := arm.ClientOptions {
    ClientOptions: azcore.ClientOptions {
        Cloud: cloud.AzureChina,
    },
}
clientFactory, err := armastro.NewClientFactory(<subscription ID>, cred, &options)

Clients

A client groups a set of related APIs, providing access to its functionality. Create one or more clients to access the APIs you require using client factory.

client := clientFactory.NewOrganizationsClient()

Fakes

The fake package contains types used for constructing in-memory fake servers used in unit tests. This allows writing tests to cover various success/error conditions without the need for connecting to a live service.

Please see https://github.com/Azure/azure-sdk-for-go/tree/main/sdk/samples/fakes for details and examples on how to use fakes.

Provide Feedback

If you encounter bugs or have suggestions, please open an issue and assign the Astro label.

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information, see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Documentation

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ActionType

type ActionType string

ActionType - Enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs.

const (
	ActionTypeInternal ActionType = "Internal"
)

func PossibleActionTypeValues

func PossibleActionTypeValues() []ActionType

PossibleActionTypeValues returns the possible values for the ActionType const type.

type ClientFactory

type ClientFactory struct {
	// contains filtered or unexported fields
}

ClientFactory is a client factory used to create any client in this module. Don't use this type directly, use NewClientFactory instead.

func NewClientFactory

func NewClientFactory(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ClientFactory, error)

NewClientFactory creates a new instance of ClientFactory with the specified values. The parameter values will be propagated to any client created from this factory.

  • subscriptionID - The ID of the target subscription.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - pass nil to accept the default values.

func (*ClientFactory) NewOperationsClient

func (c *ClientFactory) NewOperationsClient() *OperationsClient

NewOperationsClient creates a new instance of OperationsClient.

func (*ClientFactory) NewOrganizationsClient

func (c *ClientFactory) NewOrganizationsClient() *OrganizationsClient

NewOrganizationsClient creates a new instance of OrganizationsClient.

type CreatedByType

type CreatedByType string

CreatedByType - The type of identity that created the resource.

const (
	CreatedByTypeApplication     CreatedByType = "Application"
	CreatedByTypeKey             CreatedByType = "Key"
	CreatedByTypeManagedIdentity CreatedByType = "ManagedIdentity"
	CreatedByTypeUser            CreatedByType = "User"
)

func PossibleCreatedByTypeValues

func PossibleCreatedByTypeValues() []CreatedByType

PossibleCreatedByTypeValues returns the possible values for the CreatedByType const type.

type LiftrBaseDataOrganizationProperties

type LiftrBaseDataOrganizationProperties struct {
	// REQUIRED; Marketplace details of the resource.
	Marketplace *LiftrBaseMarketplaceDetails

	// REQUIRED; Details of the user.
	User *LiftrBaseUserDetails

	// Organization properties
	PartnerOrganizationProperties *LiftrBaseDataPartnerOrganizationProperties

	// READ-ONLY; Provisioning state of the resource.
	ProvisioningState *ResourceProvisioningState
}

LiftrBaseDataOrganizationProperties - Properties specific to Data Organization resource

func (LiftrBaseDataOrganizationProperties) MarshalJSON

func (l LiftrBaseDataOrganizationProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type LiftrBaseDataOrganizationProperties.

func (*LiftrBaseDataOrganizationProperties) UnmarshalJSON

func (l *LiftrBaseDataOrganizationProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type LiftrBaseDataOrganizationProperties.

type LiftrBaseDataPartnerOrganizationProperties

type LiftrBaseDataPartnerOrganizationProperties struct {
	// REQUIRED; Organization name in partner's system
	OrganizationName *string

	// Organization Id in partner's system
	OrganizationID *string

	// Single Sign On properties for the organization
	SingleSignOnProperties *LiftrBaseSingleSignOnProperties

	// Workspace Id in partner's system
	WorkspaceID *string

	// Workspace name in partner's system
	WorkspaceName *string
}

LiftrBaseDataPartnerOrganizationProperties - Properties specific to Partner's organization

func (LiftrBaseDataPartnerOrganizationProperties) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type LiftrBaseDataPartnerOrganizationProperties.

func (*LiftrBaseDataPartnerOrganizationProperties) UnmarshalJSON

func (l *LiftrBaseDataPartnerOrganizationProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type LiftrBaseDataPartnerOrganizationProperties.

type LiftrBaseDataPartnerOrganizationPropertiesUpdate

type LiftrBaseDataPartnerOrganizationPropertiesUpdate struct {
	// Organization Id in partner's system
	OrganizationID *string

	// Organization name in partner's system
	OrganizationName *string

	// Single Sign On properties for the organization
	SingleSignOnProperties *LiftrBaseSingleSignOnProperties

	// Workspace Id in partner's system
	WorkspaceID *string

	// Workspace name in partner's system
	WorkspaceName *string
}

LiftrBaseDataPartnerOrganizationPropertiesUpdate - Properties specific to Partner's organization

func (LiftrBaseDataPartnerOrganizationPropertiesUpdate) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type LiftrBaseDataPartnerOrganizationPropertiesUpdate.

func (*LiftrBaseDataPartnerOrganizationPropertiesUpdate) UnmarshalJSON

UnmarshalJSON implements the json.Unmarshaller interface for type LiftrBaseDataPartnerOrganizationPropertiesUpdate.

type LiftrBaseMarketplaceDetails

type LiftrBaseMarketplaceDetails struct {
	// REQUIRED; Offer details for the marketplace that is selected by the user
	OfferDetails *LiftrBaseOfferDetails

	// REQUIRED; Azure subscription id for the the marketplace offer is purchased from
	SubscriptionID *string

	// Marketplace subscription status
	SubscriptionStatus *MarketplaceSubscriptionStatus
}

LiftrBaseMarketplaceDetails - Marketplace details for an organization

func (LiftrBaseMarketplaceDetails) MarshalJSON

func (l LiftrBaseMarketplaceDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type LiftrBaseMarketplaceDetails.

func (*LiftrBaseMarketplaceDetails) UnmarshalJSON

func (l *LiftrBaseMarketplaceDetails) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type LiftrBaseMarketplaceDetails.

type LiftrBaseOfferDetails

type LiftrBaseOfferDetails struct {
	// REQUIRED; Offer Id for the marketplace offer
	OfferID *string

	// REQUIRED; Plan Id for the marketplace offer
	PlanID *string

	// REQUIRED; Publisher Id for the marketplace offer
	PublisherID *string

	// Plan Name for the marketplace offer
	PlanName *string

	// Plan Display Name for the marketplace offer
	TermID *string

	// Plan Display Name for the marketplace offer
	TermUnit *string
}

LiftrBaseOfferDetails - Offer details for the marketplace that is selected by the user

func (LiftrBaseOfferDetails) MarshalJSON

func (l LiftrBaseOfferDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type LiftrBaseOfferDetails.

func (*LiftrBaseOfferDetails) UnmarshalJSON

func (l *LiftrBaseOfferDetails) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type LiftrBaseOfferDetails.

type LiftrBaseSingleSignOnProperties

type LiftrBaseSingleSignOnProperties struct {
	// List of AAD domains fetched from Microsoft Graph for user.
	AADDomains []*string

	// AAD enterprise application Id used to setup SSO
	EnterpriseAppID *string

	// State of the Single Sign On for the organization
	SingleSignOnState *SingleSignOnStates

	// URL for SSO to be used by the partner to redirect the user to their system
	SingleSignOnURL *string

	// READ-ONLY; Provisioning State of the resource
	ProvisioningState *ResourceProvisioningState
}

LiftrBaseSingleSignOnProperties - Properties specific to Single Sign On Resource

func (LiftrBaseSingleSignOnProperties) MarshalJSON

func (l LiftrBaseSingleSignOnProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type LiftrBaseSingleSignOnProperties.

func (*LiftrBaseSingleSignOnProperties) UnmarshalJSON

func (l *LiftrBaseSingleSignOnProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type LiftrBaseSingleSignOnProperties.

type LiftrBaseUserDetails

type LiftrBaseUserDetails struct {
	// REQUIRED; Email address of the user
	EmailAddress *string

	// REQUIRED; First name of the user
	FirstName *string

	// REQUIRED; Last name of the user
	LastName *string

	// User's phone number
	PhoneNumber *string

	// User's principal name
	Upn *string
}

LiftrBaseUserDetails - User details for an organization

func (LiftrBaseUserDetails) MarshalJSON

func (l LiftrBaseUserDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type LiftrBaseUserDetails.

func (*LiftrBaseUserDetails) UnmarshalJSON

func (l *LiftrBaseUserDetails) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type LiftrBaseUserDetails.

type LiftrBaseUserDetailsUpdate

type LiftrBaseUserDetailsUpdate struct {
	// Email address of the user
	EmailAddress *string

	// First name of the user
	FirstName *string

	// Last name of the user
	LastName *string

	// User's phone number
	PhoneNumber *string

	// User's principal name
	Upn *string
}

LiftrBaseUserDetailsUpdate - User details for an organization

func (LiftrBaseUserDetailsUpdate) MarshalJSON

func (l LiftrBaseUserDetailsUpdate) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type LiftrBaseUserDetailsUpdate.

func (*LiftrBaseUserDetailsUpdate) UnmarshalJSON

func (l *LiftrBaseUserDetailsUpdate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type LiftrBaseUserDetailsUpdate.

type ManagedServiceIdentity

type ManagedServiceIdentity struct {
	// REQUIRED; Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
	Type *ManagedServiceIdentityType

	// The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM
	// resource ids in the form:
	// '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}.
	// The dictionary values can be empty objects ({}) in
	// requests.
	UserAssignedIdentities map[string]*UserAssignedIdentity

	// READ-ONLY; The service principal ID of the system assigned identity. This property will only be provided for a system assigned
	// identity.
	PrincipalID *string

	// READ-ONLY; The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity.
	TenantID *string
}

ManagedServiceIdentity - Managed service identity (system assigned and/or user assigned identities)

func (ManagedServiceIdentity) MarshalJSON

func (m ManagedServiceIdentity) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ManagedServiceIdentity.

func (*ManagedServiceIdentity) UnmarshalJSON

func (m *ManagedServiceIdentity) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ManagedServiceIdentity.

type ManagedServiceIdentityType

type ManagedServiceIdentityType string

ManagedServiceIdentityType - Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).

const (
	ManagedServiceIdentityTypeNone                       ManagedServiceIdentityType = "None"
	ManagedServiceIdentityTypeSystemAssigned             ManagedServiceIdentityType = "SystemAssigned"
	ManagedServiceIdentityTypeSystemAssignedUserAssigned ManagedServiceIdentityType = "SystemAssigned, UserAssigned"
	ManagedServiceIdentityTypeUserAssigned               ManagedServiceIdentityType = "UserAssigned"
)

func PossibleManagedServiceIdentityTypeValues

func PossibleManagedServiceIdentityTypeValues() []ManagedServiceIdentityType

PossibleManagedServiceIdentityTypeValues returns the possible values for the ManagedServiceIdentityType const type.

type MarketplaceSubscriptionStatus

type MarketplaceSubscriptionStatus string

MarketplaceSubscriptionStatus - Marketplace subscription status of a resource.

const (
	// MarketplaceSubscriptionStatusPendingFulfillmentStart - Purchased but not yet activated
	MarketplaceSubscriptionStatusPendingFulfillmentStart MarketplaceSubscriptionStatus = "PendingFulfillmentStart"
	// MarketplaceSubscriptionStatusSubscribed - Marketplace subscription is activated
	MarketplaceSubscriptionStatusSubscribed MarketplaceSubscriptionStatus = "Subscribed"
	// MarketplaceSubscriptionStatusSuspended - This state indicates that a customer's payment for the Marketplace service was
	// not received
	MarketplaceSubscriptionStatusSuspended MarketplaceSubscriptionStatus = "Suspended"
	// MarketplaceSubscriptionStatusUnsubscribed - Customer has cancelled the subscription
	MarketplaceSubscriptionStatusUnsubscribed MarketplaceSubscriptionStatus = "Unsubscribed"
)

func PossibleMarketplaceSubscriptionStatusValues

func PossibleMarketplaceSubscriptionStatusValues() []MarketplaceSubscriptionStatus

PossibleMarketplaceSubscriptionStatusValues returns the possible values for the MarketplaceSubscriptionStatus const type.

type Operation

type Operation struct {
	// Localized display information for this particular operation.
	Display *OperationDisplay

	// READ-ONLY; Enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs.
	ActionType *ActionType

	// READ-ONLY; Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for ARM/control-plane
	// operations.
	IsDataAction *bool

	// READ-ONLY; The name of the operation, as per Resource-Based Access Control (RBAC). Examples: "Microsoft.Compute/virtualMachines/write",
	// "Microsoft.Compute/virtualMachines/capture/action"
	Name *string

	// READ-ONLY; The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default
	// value is "user,system"
	Origin *Origin
}

Operation - Details of a REST API operation, returned from the Resource Provider Operations API

func (Operation) MarshalJSON

func (o Operation) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Operation.

func (*Operation) UnmarshalJSON

func (o *Operation) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Operation.

type OperationDisplay

type OperationDisplay struct {
	// READ-ONLY; The short, localized friendly description of the operation; suitable for tool tips and detailed views.
	Description *string

	// READ-ONLY; The concise, localized friendly name for the operation; suitable for dropdowns. E.g. "Create or Update Virtual
	// Machine", "Restart Virtual Machine".
	Operation *string

	// READ-ONLY; The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft
	// Compute".
	Provider *string

	// READ-ONLY; The localized friendly name of the resource type related to this operation. E.g. "Virtual Machines" or "Job
	// Schedule Collections".
	Resource *string
}

OperationDisplay - Localized display information for this particular operation.

func (OperationDisplay) MarshalJSON

func (o OperationDisplay) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OperationDisplay.

func (*OperationDisplay) UnmarshalJSON

func (o *OperationDisplay) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationDisplay.

type OperationListResult

type OperationListResult struct {
	// READ-ONLY; URL to get the next set of operation list results (if there are any).
	NextLink *string

	// READ-ONLY; List of operations supported by the resource provider
	Value []*Operation
}

OperationListResult - A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results.

func (OperationListResult) MarshalJSON

func (o OperationListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OperationListResult.

func (*OperationListResult) UnmarshalJSON

func (o *OperationListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationListResult.

type OperationsClient

type OperationsClient struct {
	// contains filtered or unexported fields
}

OperationsClient contains the methods for the Operations group. Don't use this type directly, use NewOperationsClient() instead.

func NewOperationsClient

func NewOperationsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*OperationsClient, error)

NewOperationsClient creates a new instance of OperationsClient with the specified values.

  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - pass nil to accept the default values.

func (*OperationsClient) NewListPager

NewListPager - List the operations for the provider

Generated from API version 2023-08-01

  • options - OperationsClientListOptions contains the optional parameters for the OperationsClient.NewListPager method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/d4205894880b989ede35d62d97c8e901ed14fb5a/specification/liftrastronomer/resource-manager/Astronomer.Astro/stable/2023-08-01/examples/Operations_List_MaximumSet_Gen.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/astro/armastro"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armastro.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewOperationsClient().NewListPager(nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page.OperationListResult = armastro.OperationListResult{
		// 	Value: []*armastro.Operation{
		// 		{
		// 			Name: to.Ptr("zabhglnki"),
		// 			ActionType: to.Ptr(armastro.ActionTypeInternal),
		// 			Display: &armastro.OperationDisplay{
		// 				Description: to.Ptr("nkucjlsbtriwdgedbxlknbwfz"),
		// 				Operation: to.Ptr("teozafbxkiagahfypii"),
		// 				Provider: to.Ptr("hgepwsvbptqbigephgxoxyll"),
		// 				Resource: to.Ptr("thhzqbtxxi"),
		// 			},
		// 			IsDataAction: to.Ptr(true),
		// 			Origin: to.Ptr(armastro.OriginUser),
		// 	}},
		// }
	}
}
Output:

type OperationsClientListOptions

type OperationsClientListOptions struct {
}

OperationsClientListOptions contains the optional parameters for the OperationsClient.NewListPager method.

type OperationsClientListResponse

type OperationsClientListResponse struct {
	// A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results.
	OperationListResult
}

OperationsClientListResponse contains the response from method OperationsClient.NewListPager.

type OrganizationResource

type OrganizationResource struct {
	// REQUIRED; The geo-location where the resource lives
	Location *string

	// The managed service identities assigned to this resource.
	Identity *ManagedServiceIdentity

	// The resource-specific properties for this resource.
	Properties *LiftrBaseDataOrganizationProperties

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

OrganizationResource - Organization Resource by Astronomer

func (OrganizationResource) MarshalJSON

func (o OrganizationResource) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OrganizationResource.

func (*OrganizationResource) UnmarshalJSON

func (o *OrganizationResource) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OrganizationResource.

type OrganizationResourceListResult

type OrganizationResourceListResult struct {
	// REQUIRED; The OrganizationResource items on this page
	Value []*OrganizationResource

	// The link to the next page of items
	NextLink *string
}

OrganizationResourceListResult - The response of a OrganizationResource list operation.

func (OrganizationResourceListResult) MarshalJSON

func (o OrganizationResourceListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OrganizationResourceListResult.

func (*OrganizationResourceListResult) UnmarshalJSON

func (o *OrganizationResourceListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OrganizationResourceListResult.

type OrganizationResourceUpdate

type OrganizationResourceUpdate struct {
	// The managed service identities assigned to this resource.
	Identity *ManagedServiceIdentity

	// The updatable properties of the OrganizationResource.
	Properties *OrganizationResourceUpdateProperties

	// Resource tags.
	Tags map[string]*string
}

OrganizationResourceUpdate - The type used for update operations of the OrganizationResource.

func (OrganizationResourceUpdate) MarshalJSON

func (o OrganizationResourceUpdate) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OrganizationResourceUpdate.

func (*OrganizationResourceUpdate) UnmarshalJSON

func (o *OrganizationResourceUpdate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OrganizationResourceUpdate.

type OrganizationResourceUpdateProperties

type OrganizationResourceUpdateProperties struct {
	// Organization properties
	PartnerOrganizationProperties *LiftrBaseDataPartnerOrganizationPropertiesUpdate

	// Details of the user.
	User *LiftrBaseUserDetailsUpdate
}

OrganizationResourceUpdateProperties - The updatable properties of the OrganizationResource.

func (OrganizationResourceUpdateProperties) MarshalJSON

func (o OrganizationResourceUpdateProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OrganizationResourceUpdateProperties.

func (*OrganizationResourceUpdateProperties) UnmarshalJSON

func (o *OrganizationResourceUpdateProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OrganizationResourceUpdateProperties.

type OrganizationsClient

type OrganizationsClient struct {
	// contains filtered or unexported fields
}

OrganizationsClient contains the methods for the Organizations group. Don't use this type directly, use NewOrganizationsClient() instead.

func NewOrganizationsClient

func NewOrganizationsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*OrganizationsClient, error)

NewOrganizationsClient creates a new instance of OrganizationsClient with the specified values.

  • subscriptionID - The ID of the target subscription.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - pass nil to accept the default values.

func (*OrganizationsClient) BeginCreateOrUpdate

func (client *OrganizationsClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, organizationName string, resource OrganizationResource, options *OrganizationsClientBeginCreateOrUpdateOptions) (*runtime.Poller[OrganizationsClientCreateOrUpdateResponse], error)

BeginCreateOrUpdate - Create a OrganizationResource If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-08-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • organizationName - Name of the Organizations resource
  • resource - Resource create parameters.
  • options - OrganizationsClientBeginCreateOrUpdateOptions contains the optional parameters for the OrganizationsClient.BeginCreateOrUpdate method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/d4205894880b989ede35d62d97c8e901ed14fb5a/specification/liftrastronomer/resource-manager/Astronomer.Astro/stable/2023-08-01/examples/Organizations_CreateOrUpdate_MaximumSet_Gen.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/astro/armastro"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armastro.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewOrganizationsClient().BeginCreateOrUpdate(ctx, "rgastronomer", "U.1-:7", armastro.OrganizationResource{
		Location: to.Ptr("mhqthlsatwvqkl"),
		Tags:     map[string]*string{},
		Identity: &armastro.ManagedServiceIdentity{
			Type:                   to.Ptr(armastro.ManagedServiceIdentityTypeNone),
			UserAssignedIdentities: map[string]*armastro.UserAssignedIdentity{},
		},
		Properties: &armastro.LiftrBaseDataOrganizationProperties{
			Marketplace: &armastro.LiftrBaseMarketplaceDetails{
				OfferDetails: &armastro.LiftrBaseOfferDetails{
					OfferID:     to.Ptr("krzkefmpxztqyusidzgpchfaswuyce"),
					PlanID:      to.Ptr("kndxzygsanuiqzwbfbbvoipv"),
					PlanName:    to.Ptr("pwqjwlq"),
					PublisherID: to.Ptr("gfsqxygpnerxmvols"),
					TermID:      to.Ptr("pwds"),
					TermUnit:    to.Ptr("xyygyzcazkuelz"),
				},
				SubscriptionID:     to.Ptr("ntthclydlpqmasr"),
				SubscriptionStatus: to.Ptr(armastro.MarketplaceSubscriptionStatusPendingFulfillmentStart),
			},
			PartnerOrganizationProperties: &armastro.LiftrBaseDataPartnerOrganizationProperties{
				OrganizationID:   to.Ptr("lskgzdmziusgrsucv"),
				OrganizationName: to.Ptr("3-"),
				SingleSignOnProperties: &armastro.LiftrBaseSingleSignOnProperties{
					AADDomains: []*string{
						to.Ptr("kfbleh")},
					EnterpriseAppID:   to.Ptr("mklfypyujwumgwdzae"),
					ProvisioningState: to.Ptr(armastro.ResourceProvisioningStateSucceeded),
					SingleSignOnState: to.Ptr(armastro.SingleSignOnStatesInitial),
					SingleSignOnURL:   to.Ptr("ymmtzkyghvinvhgnqlzwrr"),
				},
				WorkspaceID:   to.Ptr("vcrupxwpaba"),
				WorkspaceName: to.Ptr("9.:06"),
			},
			ProvisioningState: to.Ptr(armastro.ResourceProvisioningStateSucceeded),
			User: &armastro.LiftrBaseUserDetails{
				EmailAddress: to.Ptr(".K_@e7N-g1.xjqnbPs"),
				FirstName:    to.Ptr("nfh"),
				LastName:     to.Ptr("lazfbstcccykibvcrxpmglqam"),
				PhoneNumber:  to.Ptr("inxkscllh"),
				Upn:          to.Ptr("xtutvycpxjrtoftx"),
			},
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.OrganizationResource = armastro.OrganizationResource{
	// 	Name: to.Ptr("ycyrfvupthkudm"),
	// 	Type: to.Ptr("ldwwclcpqssjomo"),
	// 	ID: to.Ptr("bhslekyvgkfomahtvjiin"),
	// 	SystemData: &armastro.SystemData{
	// 		CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-07-25T11:16:12.868Z"); return t}()),
	// 		CreatedBy: to.Ptr("zw"),
	// 		CreatedByType: to.Ptr(armastro.CreatedByTypeUser),
	// 		LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-07-25T11:16:12.868Z"); return t}()),
	// 		LastModifiedBy: to.Ptr("isirkhwcppaqoqzoebybzikzbzkjzf"),
	// 		LastModifiedByType: to.Ptr(armastro.CreatedByTypeUser),
	// 	},
	// 	Location: to.Ptr("mhqthlsatwvqkl"),
	// 	Tags: map[string]*string{
	// 	},
	// 	Identity: &armastro.ManagedServiceIdentity{
	// 		Type: to.Ptr(armastro.ManagedServiceIdentityTypeNone),
	// 		PrincipalID: to.Ptr("b5684bd7-7958-4c0e-9795-d686c31746d2"),
	// 		TenantID: to.Ptr("b5684bd7-7958-4c0e-9795-d686c31746d2"),
	// 		UserAssignedIdentities: map[string]*armastro.UserAssignedIdentity{
	// 		},
	// 	},
	// 	Properties: &armastro.LiftrBaseDataOrganizationProperties{
	// 		Marketplace: &armastro.LiftrBaseMarketplaceDetails{
	// 			OfferDetails: &armastro.LiftrBaseOfferDetails{
	// 				OfferID: to.Ptr("krzkefmpxztqyusidzgpchfaswuyce"),
	// 				PlanID: to.Ptr("kndxzygsanuiqzwbfbbvoipv"),
	// 				PlanName: to.Ptr("pwqjwlq"),
	// 				PublisherID: to.Ptr("gfsqxygpnerxmvols"),
	// 				TermID: to.Ptr("pwds"),
	// 				TermUnit: to.Ptr("xyygyzcazkuelz"),
	// 			},
	// 			SubscriptionID: to.Ptr("ntthclydlpqmasr"),
	// 			SubscriptionStatus: to.Ptr(armastro.MarketplaceSubscriptionStatusPendingFulfillmentStart),
	// 		},
	// 		PartnerOrganizationProperties: &armastro.LiftrBaseDataPartnerOrganizationProperties{
	// 			OrganizationID: to.Ptr("lskgzdmziusgrsucv"),
	// 			OrganizationName: to.Ptr("3-"),
	// 			SingleSignOnProperties: &armastro.LiftrBaseSingleSignOnProperties{
	// 				AADDomains: []*string{
	// 					to.Ptr("kfbleh")},
	// 					EnterpriseAppID: to.Ptr("mklfypyujwumgwdzae"),
	// 					ProvisioningState: to.Ptr(armastro.ResourceProvisioningStateSucceeded),
	// 					SingleSignOnState: to.Ptr(armastro.SingleSignOnStatesInitial),
	// 					SingleSignOnURL: to.Ptr("ymmtzkyghvinvhgnqlzwrr"),
	// 				},
	// 				WorkspaceID: to.Ptr("vcrupxwpaba"),
	// 				WorkspaceName: to.Ptr("9.:06"),
	// 			},
	// 			ProvisioningState: to.Ptr(armastro.ResourceProvisioningStateSucceeded),
	// 			User: &armastro.LiftrBaseUserDetails{
	// 				EmailAddress: to.Ptr(".K_@e7N-g1.xjqnbPs"),
	// 				FirstName: to.Ptr("nfh"),
	// 				LastName: to.Ptr("lazfbstcccykibvcrxpmglqam"),
	// 				PhoneNumber: to.Ptr("inxkscllh"),
	// 				Upn: to.Ptr("xtutvycpxjrtoftx"),
	// 			},
	// 		},
	// 	}
}
Output:

func (*OrganizationsClient) BeginDelete

func (client *OrganizationsClient) BeginDelete(ctx context.Context, resourceGroupName string, organizationName string, options *OrganizationsClientBeginDeleteOptions) (*runtime.Poller[OrganizationsClientDeleteResponse], error)

BeginDelete - Delete a OrganizationResource If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-08-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • organizationName - Name of the Organizations resource
  • options - OrganizationsClientBeginDeleteOptions contains the optional parameters for the OrganizationsClient.BeginDelete method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/d4205894880b989ede35d62d97c8e901ed14fb5a/specification/liftrastronomer/resource-manager/Astronomer.Astro/stable/2023-08-01/examples/Organizations_Delete_MaximumSet_Gen.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/astro/armastro"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armastro.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewOrganizationsClient().BeginDelete(ctx, "rgastronomer", "q:", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
}
Output:

func (*OrganizationsClient) BeginUpdate

func (client *OrganizationsClient) BeginUpdate(ctx context.Context, resourceGroupName string, organizationName string, properties OrganizationResourceUpdate, options *OrganizationsClientBeginUpdateOptions) (*runtime.Poller[OrganizationsClientUpdateResponse], error)

BeginUpdate - Update a OrganizationResource If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-08-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • organizationName - Name of the Organizations resource
  • properties - The resource properties to be updated.
  • options - OrganizationsClientBeginUpdateOptions contains the optional parameters for the OrganizationsClient.BeginUpdate method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/d4205894880b989ede35d62d97c8e901ed14fb5a/specification/liftrastronomer/resource-manager/Astronomer.Astro/stable/2023-08-01/examples/Organizations_Update_MaximumSet_Gen.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/astro/armastro"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armastro.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewOrganizationsClient().BeginUpdate(ctx, "rgastronomer", "6.", armastro.OrganizationResourceUpdate{
		Identity: &armastro.ManagedServiceIdentity{
			Type:                   to.Ptr(armastro.ManagedServiceIdentityTypeNone),
			UserAssignedIdentities: map[string]*armastro.UserAssignedIdentity{},
		},
		Properties: &armastro.OrganizationResourceUpdateProperties{
			PartnerOrganizationProperties: &armastro.LiftrBaseDataPartnerOrganizationPropertiesUpdate{
				OrganizationID:   to.Ptr("lrtmbkvyvvoszhjevohkmyjhfyty"),
				OrganizationName: to.Ptr("U2P_"),
				SingleSignOnProperties: &armastro.LiftrBaseSingleSignOnProperties{
					AADDomains: []*string{
						to.Ptr("kfbleh")},
					EnterpriseAppID:   to.Ptr("mklfypyujwumgwdzae"),
					ProvisioningState: to.Ptr(armastro.ResourceProvisioningStateSucceeded),
					SingleSignOnState: to.Ptr(armastro.SingleSignOnStatesInitial),
					SingleSignOnURL:   to.Ptr("ymmtzkyghvinvhgnqlzwrr"),
				},
				WorkspaceID:   to.Ptr("xsepuskdhejaadusyxq"),
				WorkspaceName: to.Ptr("L.-y_--:"),
			},
			User: &armastro.LiftrBaseUserDetailsUpdate{
				EmailAddress: to.Ptr(".K_@e7N-g1.xjqnbPs"),
				FirstName:    to.Ptr("qeuofehzypzljgcuysugefbgxde"),
				LastName:     to.Ptr("g"),
				PhoneNumber:  to.Ptr("aqpyxznvqpgkzohevynofrjdfgoo"),
				Upn:          to.Ptr("uwtprzdfpsqmktx"),
			},
		},
		Tags: map[string]*string{
			"key1474": to.Ptr("bqqyipxnbbxryhznyaosmtpo"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.OrganizationResource = armastro.OrganizationResource{
	// 	Name: to.Ptr("ycyrfvupthkudm"),
	// 	Type: to.Ptr("ldwwclcpqssjomo"),
	// 	ID: to.Ptr("bhslekyvgkfomahtvjiin"),
	// 	SystemData: &armastro.SystemData{
	// 		CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-07-25T11:16:12.868Z"); return t}()),
	// 		CreatedBy: to.Ptr("zw"),
	// 		CreatedByType: to.Ptr(armastro.CreatedByTypeUser),
	// 		LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-07-25T11:16:12.868Z"); return t}()),
	// 		LastModifiedBy: to.Ptr("isirkhwcppaqoqzoebybzikzbzkjzf"),
	// 		LastModifiedByType: to.Ptr(armastro.CreatedByTypeUser),
	// 	},
	// 	Location: to.Ptr("mhqthlsatwvqkl"),
	// 	Tags: map[string]*string{
	// 	},
	// 	Identity: &armastro.ManagedServiceIdentity{
	// 		Type: to.Ptr(armastro.ManagedServiceIdentityTypeNone),
	// 		PrincipalID: to.Ptr("b5684bd7-7958-4c0e-9795-d686c31746d2"),
	// 		TenantID: to.Ptr("b5684bd7-7958-4c0e-9795-d686c31746d2"),
	// 		UserAssignedIdentities: map[string]*armastro.UserAssignedIdentity{
	// 		},
	// 	},
	// 	Properties: &armastro.LiftrBaseDataOrganizationProperties{
	// 		Marketplace: &armastro.LiftrBaseMarketplaceDetails{
	// 			OfferDetails: &armastro.LiftrBaseOfferDetails{
	// 				OfferID: to.Ptr("krzkefmpxztqyusidzgpchfaswuyce"),
	// 				PlanID: to.Ptr("kndxzygsanuiqzwbfbbvoipv"),
	// 				PlanName: to.Ptr("pwqjwlq"),
	// 				PublisherID: to.Ptr("gfsqxygpnerxmvols"),
	// 				TermID: to.Ptr("pwds"),
	// 				TermUnit: to.Ptr("xyygyzcazkuelz"),
	// 			},
	// 			SubscriptionID: to.Ptr("ntthclydlpqmasr"),
	// 			SubscriptionStatus: to.Ptr(armastro.MarketplaceSubscriptionStatusPendingFulfillmentStart),
	// 		},
	// 		PartnerOrganizationProperties: &armastro.LiftrBaseDataPartnerOrganizationProperties{
	// 			OrganizationID: to.Ptr("lrtmbkvyvvoszhjevohkmyjhfyty"),
	// 			OrganizationName: to.Ptr("U2P_"),
	// 			SingleSignOnProperties: &armastro.LiftrBaseSingleSignOnProperties{
	// 				AADDomains: []*string{
	// 					to.Ptr("kfbleh")},
	// 					EnterpriseAppID: to.Ptr("mklfypyujwumgwdzae"),
	// 					ProvisioningState: to.Ptr(armastro.ResourceProvisioningStateSucceeded),
	// 					SingleSignOnState: to.Ptr(armastro.SingleSignOnStatesInitial),
	// 					SingleSignOnURL: to.Ptr("ymmtzkyghvinvhgnqlzwrr"),
	// 				},
	// 				WorkspaceID: to.Ptr("xsepuskdhejaadusyxq"),
	// 				WorkspaceName: to.Ptr("L.-y_--:"),
	// 			},
	// 			ProvisioningState: to.Ptr(armastro.ResourceProvisioningStateSucceeded),
	// 			User: &armastro.LiftrBaseUserDetails{
	// 				EmailAddress: to.Ptr(".K_@e7N-g1.xjqnbPs"),
	// 				FirstName: to.Ptr("qeuofehzypzljgcuysugefbgxde"),
	// 				LastName: to.Ptr("g"),
	// 				PhoneNumber: to.Ptr("aqpyxznvqpgkzohevynofrjdfgoo"),
	// 				Upn: to.Ptr("uwtprzdfpsqmktx"),
	// 			},
	// 		},
	// 	}
}
Output:

func (*OrganizationsClient) Get

func (client *OrganizationsClient) Get(ctx context.Context, resourceGroupName string, organizationName string, options *OrganizationsClientGetOptions) (OrganizationsClientGetResponse, error)

Get - Get a OrganizationResource If the operation fails it returns an *azcore.ResponseError type.

Generated from API version 2023-08-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • organizationName - Name of the Organizations resource
  • options - OrganizationsClientGetOptions contains the optional parameters for the OrganizationsClient.Get method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/d4205894880b989ede35d62d97c8e901ed14fb5a/specification/liftrastronomer/resource-manager/Astronomer.Astro/stable/2023-08-01/examples/Organizations_Get_MaximumSet_Gen.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/astro/armastro"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armastro.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewOrganizationsClient().Get(ctx, "rgastronomer", "S PS", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res.OrganizationResource = armastro.OrganizationResource{
	// 	Name: to.Ptr("ycyrfvupthkudm"),
	// 	Type: to.Ptr("ldwwclcpqssjomo"),
	// 	ID: to.Ptr("bhslekyvgkfomahtvjiin"),
	// 	SystemData: &armastro.SystemData{
	// 		CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-07-25T11:16:12.868Z"); return t}()),
	// 		CreatedBy: to.Ptr("zw"),
	// 		CreatedByType: to.Ptr(armastro.CreatedByTypeUser),
	// 		LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-07-25T11:16:12.868Z"); return t}()),
	// 		LastModifiedBy: to.Ptr("isirkhwcppaqoqzoebybzikzbzkjzf"),
	// 		LastModifiedByType: to.Ptr(armastro.CreatedByTypeUser),
	// 	},
	// 	Location: to.Ptr("mhqthlsatwvqkl"),
	// 	Tags: map[string]*string{
	// 	},
	// 	Identity: &armastro.ManagedServiceIdentity{
	// 		Type: to.Ptr(armastro.ManagedServiceIdentityTypeNone),
	// 		PrincipalID: to.Ptr("b5684bd7-7958-4c0e-9795-d686c31746d2"),
	// 		TenantID: to.Ptr("b5684bd7-7958-4c0e-9795-d686c31746d2"),
	// 		UserAssignedIdentities: map[string]*armastro.UserAssignedIdentity{
	// 		},
	// 	},
	// 	Properties: &armastro.LiftrBaseDataOrganizationProperties{
	// 		Marketplace: &armastro.LiftrBaseMarketplaceDetails{
	// 			OfferDetails: &armastro.LiftrBaseOfferDetails{
	// 				OfferID: to.Ptr("krzkefmpxztqyusidzgpchfaswuyce"),
	// 				PlanID: to.Ptr("kndxzygsanuiqzwbfbbvoipv"),
	// 				PlanName: to.Ptr("pwqjwlq"),
	// 				PublisherID: to.Ptr("gfsqxygpnerxmvols"),
	// 				TermID: to.Ptr("pwds"),
	// 				TermUnit: to.Ptr("xyygyzcazkuelz"),
	// 			},
	// 			SubscriptionID: to.Ptr("ntthclydlpqmasr"),
	// 			SubscriptionStatus: to.Ptr(armastro.MarketplaceSubscriptionStatusPendingFulfillmentStart),
	// 		},
	// 		PartnerOrganizationProperties: &armastro.LiftrBaseDataPartnerOrganizationProperties{
	// 			OrganizationID: to.Ptr("lskgzdmziusgrsucv"),
	// 			OrganizationName: to.Ptr("3-"),
	// 			SingleSignOnProperties: &armastro.LiftrBaseSingleSignOnProperties{
	// 				AADDomains: []*string{
	// 					to.Ptr("kfbleh")},
	// 					EnterpriseAppID: to.Ptr("mklfypyujwumgwdzae"),
	// 					ProvisioningState: to.Ptr(armastro.ResourceProvisioningStateSucceeded),
	// 					SingleSignOnState: to.Ptr(armastro.SingleSignOnStatesInitial),
	// 					SingleSignOnURL: to.Ptr("ymmtzkyghvinvhgnqlzwrr"),
	// 				},
	// 				WorkspaceID: to.Ptr("vcrupxwpaba"),
	// 				WorkspaceName: to.Ptr("9.:06"),
	// 			},
	// 			ProvisioningState: to.Ptr(armastro.ResourceProvisioningStateSucceeded),
	// 			User: &armastro.LiftrBaseUserDetails{
	// 				EmailAddress: to.Ptr(".K_@e7N-g1.xjqnbPs"),
	// 				FirstName: to.Ptr("nfh"),
	// 				LastName: to.Ptr("lazfbstcccykibvcrxpmglqam"),
	// 				PhoneNumber: to.Ptr("inxkscllh"),
	// 				Upn: to.Ptr("xtutvycpxjrtoftx"),
	// 			},
	// 		},
	// 	}
}
Output:

func (*OrganizationsClient) NewListByResourceGroupPager

NewListByResourceGroupPager - List OrganizationResource resources by resource group

Generated from API version 2023-08-01

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • options - OrganizationsClientListByResourceGroupOptions contains the optional parameters for the OrganizationsClient.NewListByResourceGroupPager method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/d4205894880b989ede35d62d97c8e901ed14fb5a/specification/liftrastronomer/resource-manager/Astronomer.Astro/stable/2023-08-01/examples/Organizations_ListByResourceGroup_MaximumSet_Gen.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/astro/armastro"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armastro.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewOrganizationsClient().NewListByResourceGroupPager("rgastronomer", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page.OrganizationResourceListResult = armastro.OrganizationResourceListResult{
		// 	Value: []*armastro.OrganizationResource{
		// 		{
		// 			Name: to.Ptr("ycyrfvupthkudm"),
		// 			Type: to.Ptr("ldwwclcpqssjomo"),
		// 			ID: to.Ptr("bhslekyvgkfomahtvjiin"),
		// 			SystemData: &armastro.SystemData{
		// 				CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-07-25T11:16:12.868Z"); return t}()),
		// 				CreatedBy: to.Ptr("zw"),
		// 				CreatedByType: to.Ptr(armastro.CreatedByTypeUser),
		// 				LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-07-25T11:16:12.868Z"); return t}()),
		// 				LastModifiedBy: to.Ptr("isirkhwcppaqoqzoebybzikzbzkjzf"),
		// 				LastModifiedByType: to.Ptr(armastro.CreatedByTypeUser),
		// 			},
		// 			Location: to.Ptr("mhqthlsatwvqkl"),
		// 			Tags: map[string]*string{
		// 			},
		// 			Identity: &armastro.ManagedServiceIdentity{
		// 				Type: to.Ptr(armastro.ManagedServiceIdentityTypeNone),
		// 				PrincipalID: to.Ptr("b5684bd7-7958-4c0e-9795-d686c31746d2"),
		// 				TenantID: to.Ptr("b5684bd7-7958-4c0e-9795-d686c31746d2"),
		// 				UserAssignedIdentities: map[string]*armastro.UserAssignedIdentity{
		// 				},
		// 			},
		// 			Properties: &armastro.LiftrBaseDataOrganizationProperties{
		// 				Marketplace: &armastro.LiftrBaseMarketplaceDetails{
		// 					OfferDetails: &armastro.LiftrBaseOfferDetails{
		// 						OfferID: to.Ptr("krzkefmpxztqyusidzgpchfaswuyce"),
		// 						PlanID: to.Ptr("kndxzygsanuiqzwbfbbvoipv"),
		// 						PlanName: to.Ptr("pwqjwlq"),
		// 						PublisherID: to.Ptr("gfsqxygpnerxmvols"),
		// 						TermID: to.Ptr("pwds"),
		// 						TermUnit: to.Ptr("xyygyzcazkuelz"),
		// 					},
		// 					SubscriptionID: to.Ptr("ntthclydlpqmasr"),
		// 					SubscriptionStatus: to.Ptr(armastro.MarketplaceSubscriptionStatusPendingFulfillmentStart),
		// 				},
		// 				PartnerOrganizationProperties: &armastro.LiftrBaseDataPartnerOrganizationProperties{
		// 					OrganizationID: to.Ptr("lskgzdmziusgrsucv"),
		// 					OrganizationName: to.Ptr("3-"),
		// 					SingleSignOnProperties: &armastro.LiftrBaseSingleSignOnProperties{
		// 						AADDomains: []*string{
		// 							to.Ptr("kfbleh")},
		// 							EnterpriseAppID: to.Ptr("mklfypyujwumgwdzae"),
		// 							ProvisioningState: to.Ptr(armastro.ResourceProvisioningStateSucceeded),
		// 							SingleSignOnState: to.Ptr(armastro.SingleSignOnStatesInitial),
		// 							SingleSignOnURL: to.Ptr("ymmtzkyghvinvhgnqlzwrr"),
		// 						},
		// 						WorkspaceID: to.Ptr("vcrupxwpaba"),
		// 						WorkspaceName: to.Ptr("9.:06"),
		// 					},
		// 					ProvisioningState: to.Ptr(armastro.ResourceProvisioningStateSucceeded),
		// 					User: &armastro.LiftrBaseUserDetails{
		// 						EmailAddress: to.Ptr(".K_@e7N-g1.xjqnbPs"),
		// 						FirstName: to.Ptr("nfh"),
		// 						LastName: to.Ptr("lazfbstcccykibvcrxpmglqam"),
		// 						PhoneNumber: to.Ptr("inxkscllh"),
		// 						Upn: to.Ptr("xtutvycpxjrtoftx"),
		// 					},
		// 				},
		// 		}},
		// 	}
	}
}
Output:

func (*OrganizationsClient) NewListBySubscriptionPager

NewListBySubscriptionPager - List OrganizationResource resources by subscription ID

Generated from API version 2023-08-01

  • options - OrganizationsClientListBySubscriptionOptions contains the optional parameters for the OrganizationsClient.NewListBySubscriptionPager method.
Example

Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/d4205894880b989ede35d62d97c8e901ed14fb5a/specification/liftrastronomer/resource-manager/Astronomer.Astro/stable/2023-08-01/examples/Organizations_ListBySubscription_MaximumSet_Gen.json

package main

import (
	"context"
	"log"

	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/astro/armastro"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armastro.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewOrganizationsClient().NewListBySubscriptionPager(nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page.OrganizationResourceListResult = armastro.OrganizationResourceListResult{
		// 	Value: []*armastro.OrganizationResource{
		// 		{
		// 			Name: to.Ptr("ycyrfvupthkudm"),
		// 			Type: to.Ptr("ldwwclcpqssjomo"),
		// 			ID: to.Ptr("bhslekyvgkfomahtvjiin"),
		// 			SystemData: &armastro.SystemData{
		// 				CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-07-25T11:16:12.868Z"); return t}()),
		// 				CreatedBy: to.Ptr("zw"),
		// 				CreatedByType: to.Ptr(armastro.CreatedByTypeUser),
		// 				LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-07-25T11:16:12.868Z"); return t}()),
		// 				LastModifiedBy: to.Ptr("isirkhwcppaqoqzoebybzikzbzkjzf"),
		// 				LastModifiedByType: to.Ptr(armastro.CreatedByTypeUser),
		// 			},
		// 			Location: to.Ptr("mhqthlsatwvqkl"),
		// 			Tags: map[string]*string{
		// 			},
		// 			Identity: &armastro.ManagedServiceIdentity{
		// 				Type: to.Ptr(armastro.ManagedServiceIdentityTypeNone),
		// 				PrincipalID: to.Ptr("b5684bd7-7958-4c0e-9795-d686c31746d2"),
		// 				TenantID: to.Ptr("b5684bd7-7958-4c0e-9795-d686c31746d2"),
		// 				UserAssignedIdentities: map[string]*armastro.UserAssignedIdentity{
		// 				},
		// 			},
		// 			Properties: &armastro.LiftrBaseDataOrganizationProperties{
		// 				Marketplace: &armastro.LiftrBaseMarketplaceDetails{
		// 					OfferDetails: &armastro.LiftrBaseOfferDetails{
		// 						OfferID: to.Ptr("krzkefmpxztqyusidzgpchfaswuyce"),
		// 						PlanID: to.Ptr("kndxzygsanuiqzwbfbbvoipv"),
		// 						PlanName: to.Ptr("pwqjwlq"),
		// 						PublisherID: to.Ptr("gfsqxygpnerxmvols"),
		// 						TermID: to.Ptr("pwds"),
		// 						TermUnit: to.Ptr("xyygyzcazkuelz"),
		// 					},
		// 					SubscriptionID: to.Ptr("ntthclydlpqmasr"),
		// 					SubscriptionStatus: to.Ptr(armastro.MarketplaceSubscriptionStatusPendingFulfillmentStart),
		// 				},
		// 				PartnerOrganizationProperties: &armastro.LiftrBaseDataPartnerOrganizationProperties{
		// 					OrganizationID: to.Ptr("lskgzdmziusgrsucv"),
		// 					OrganizationName: to.Ptr("3-"),
		// 					SingleSignOnProperties: &armastro.LiftrBaseSingleSignOnProperties{
		// 						AADDomains: []*string{
		// 							to.Ptr("kfbleh")},
		// 							EnterpriseAppID: to.Ptr("mklfypyujwumgwdzae"),
		// 							ProvisioningState: to.Ptr(armastro.ResourceProvisioningStateSucceeded),
		// 							SingleSignOnState: to.Ptr(armastro.SingleSignOnStatesInitial),
		// 							SingleSignOnURL: to.Ptr("ymmtzkyghvinvhgnqlzwrr"),
		// 						},
		// 						WorkspaceID: to.Ptr("vcrupxwpaba"),
		// 						WorkspaceName: to.Ptr("9.:06"),
		// 					},
		// 					ProvisioningState: to.Ptr(armastro.ResourceProvisioningStateSucceeded),
		// 					User: &armastro.LiftrBaseUserDetails{
		// 						EmailAddress: to.Ptr(".K_@e7N-g1.xjqnbPs"),
		// 						FirstName: to.Ptr("nfh"),
		// 						LastName: to.Ptr("lazfbstcccykibvcrxpmglqam"),
		// 						PhoneNumber: to.Ptr("inxkscllh"),
		// 						Upn: to.Ptr("xtutvycpxjrtoftx"),
		// 					},
		// 				},
		// 		}},
		// 	}
	}
}
Output:

type OrganizationsClientBeginCreateOrUpdateOptions

type OrganizationsClientBeginCreateOrUpdateOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

OrganizationsClientBeginCreateOrUpdateOptions contains the optional parameters for the OrganizationsClient.BeginCreateOrUpdate method.

type OrganizationsClientBeginDeleteOptions

type OrganizationsClientBeginDeleteOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

OrganizationsClientBeginDeleteOptions contains the optional parameters for the OrganizationsClient.BeginDelete method.

type OrganizationsClientBeginUpdateOptions

type OrganizationsClientBeginUpdateOptions struct {
	// Resumes the LRO from the provided token.
	ResumeToken string
}

OrganizationsClientBeginUpdateOptions contains the optional parameters for the OrganizationsClient.BeginUpdate method.

type OrganizationsClientCreateOrUpdateResponse

type OrganizationsClientCreateOrUpdateResponse struct {
	// Organization Resource by Astronomer
	OrganizationResource
}

OrganizationsClientCreateOrUpdateResponse contains the response from method OrganizationsClient.BeginCreateOrUpdate.

type OrganizationsClientDeleteResponse

type OrganizationsClientDeleteResponse struct {
}

OrganizationsClientDeleteResponse contains the response from method OrganizationsClient.BeginDelete.

type OrganizationsClientGetOptions

type OrganizationsClientGetOptions struct {
}

OrganizationsClientGetOptions contains the optional parameters for the OrganizationsClient.Get method.

type OrganizationsClientGetResponse

type OrganizationsClientGetResponse struct {
	// Organization Resource by Astronomer
	OrganizationResource
}

OrganizationsClientGetResponse contains the response from method OrganizationsClient.Get.

type OrganizationsClientListByResourceGroupOptions

type OrganizationsClientListByResourceGroupOptions struct {
}

OrganizationsClientListByResourceGroupOptions contains the optional parameters for the OrganizationsClient.NewListByResourceGroupPager method.

type OrganizationsClientListByResourceGroupResponse

type OrganizationsClientListByResourceGroupResponse struct {
	// The response of a OrganizationResource list operation.
	OrganizationResourceListResult
}

OrganizationsClientListByResourceGroupResponse contains the response from method OrganizationsClient.NewListByResourceGroupPager.

type OrganizationsClientListBySubscriptionOptions

type OrganizationsClientListBySubscriptionOptions struct {
}

OrganizationsClientListBySubscriptionOptions contains the optional parameters for the OrganizationsClient.NewListBySubscriptionPager method.

type OrganizationsClientListBySubscriptionResponse

type OrganizationsClientListBySubscriptionResponse struct {
	// The response of a OrganizationResource list operation.
	OrganizationResourceListResult
}

OrganizationsClientListBySubscriptionResponse contains the response from method OrganizationsClient.NewListBySubscriptionPager.

type OrganizationsClientUpdateResponse

type OrganizationsClientUpdateResponse struct {
	// Organization Resource by Astronomer
	OrganizationResource
}

OrganizationsClientUpdateResponse contains the response from method OrganizationsClient.BeginUpdate.

type Origin

type Origin string

Origin - The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system"

const (
	OriginSystem     Origin = "system"
	OriginUser       Origin = "user"
	OriginUserSystem Origin = "user,system"
)

func PossibleOriginValues

func PossibleOriginValues() []Origin

PossibleOriginValues returns the possible values for the Origin const type.

type ResourceProvisioningState

type ResourceProvisioningState string

ResourceProvisioningState - The provisioning state of a resource type.

const (
	// ResourceProvisioningStateCanceled - Resource creation was canceled.
	ResourceProvisioningStateCanceled ResourceProvisioningState = "Canceled"
	// ResourceProvisioningStateFailed - Resource creation failed.
	ResourceProvisioningStateFailed ResourceProvisioningState = "Failed"
	// ResourceProvisioningStateSucceeded - Resource has been created.
	ResourceProvisioningStateSucceeded ResourceProvisioningState = "Succeeded"
)

func PossibleResourceProvisioningStateValues

func PossibleResourceProvisioningStateValues() []ResourceProvisioningState

PossibleResourceProvisioningStateValues returns the possible values for the ResourceProvisioningState const type.

type SingleSignOnStates

type SingleSignOnStates string

SingleSignOnStates - Various states of the SSO resource

const (
	// SingleSignOnStatesDisable - State of the SSO resource when it is disabled
	SingleSignOnStatesDisable SingleSignOnStates = "Disable"
	// SingleSignOnStatesEnable - State of the SSO resource when it is enabled
	SingleSignOnStatesEnable SingleSignOnStates = "Enable"
	// SingleSignOnStatesInitial - Initial state of the SSO resource
	SingleSignOnStatesInitial SingleSignOnStates = "Initial"
)

func PossibleSingleSignOnStatesValues

func PossibleSingleSignOnStatesValues() []SingleSignOnStates

PossibleSingleSignOnStatesValues returns the possible values for the SingleSignOnStates const type.

type SystemData

type SystemData struct {
	// The timestamp of resource creation (UTC).
	CreatedAt *time.Time

	// The identity that created the resource.
	CreatedBy *string

	// The type of identity that created the resource.
	CreatedByType *CreatedByType

	// The timestamp of resource last modification (UTC)
	LastModifiedAt *time.Time

	// The identity that last modified the resource.
	LastModifiedBy *string

	// The type of identity that last modified the resource.
	LastModifiedByType *CreatedByType
}

SystemData - Metadata pertaining to creation and last modification of the resource.

func (SystemData) MarshalJSON

func (s SystemData) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type SystemData.

func (*SystemData) UnmarshalJSON

func (s *SystemData) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type SystemData.

type UserAssignedIdentity

type UserAssignedIdentity struct {
	// READ-ONLY; The client ID of the assigned identity.
	ClientID *string

	// READ-ONLY; The principal ID of the assigned identity.
	PrincipalID *string
}

UserAssignedIdentity - User assigned identity properties

func (UserAssignedIdentity) MarshalJSON

func (u UserAssignedIdentity) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type UserAssignedIdentity.

func (*UserAssignedIdentity) UnmarshalJSON

func (u *UserAssignedIdentity) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type UserAssignedIdentity.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL