provider

package
v0.12.8 Latest Latest
Warning

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

Go to latest
Published: Jun 16, 2025 License: MIT Imports: 51 Imported by: 0

Documentation

Index

Constants

View Source
const (
	PreflightCheckEnabledServices           = PreflightCheck("[User] Enabled Services")
	PreflightCheckServiceAccountPermissions = PreflightCheck("[User] Test Permissions")
)
View Source
const (
	ZoneLabel = "topology.gke.io/zone"
)

Variables

This section is empty.

Functions

func GetAwsAccount added in v0.8.1

func GetAwsAccount(ctx context.Context) (string, error)

func GetAzureAccount

func GetAzureAccount() (string, string, error)

func SetCloudFlag

func SetCloudFlag(cloud bool)

func SetClusterFlag

func SetClusterFlag(cluster string)

Types

type AWSProvider

type AWSProvider struct {
	Clus string `survey:"cluster"`

	Reg string `survey:"region"`
	// contains filtered or unexported fields
}

func (*AWSProvider) Bucket

func (aws *AWSProvider) Bucket() string

func (*AWSProvider) Cluster

func (aws *AWSProvider) Cluster() string

func (*AWSProvider) Context

func (aws *AWSProvider) Context() map[string]interface{}

func (*AWSProvider) CreateBucket

func (aws *AWSProvider) CreateBucket() error

func (*AWSProvider) Decommision

func (prov *AWSProvider) Decommision(node *v1.Node) error

func (*AWSProvider) Flush

func (aws *AWSProvider) Flush() error

func (*AWSProvider) KubeConfig

func (aws *AWSProvider) KubeConfig() error

func (*AWSProvider) KubeContext

func (aws *AWSProvider) KubeContext() string

func (*AWSProvider) Name

func (aws *AWSProvider) Name() string

func (*AWSProvider) Permissions

func (prov *AWSProvider) Permissions() (permissions.Checker, error)

func (*AWSProvider) Preflights

func (aws *AWSProvider) Preflights() []*Preflight

func (*AWSProvider) Project

func (aws *AWSProvider) Project() string

func (*AWSProvider) Region

func (aws *AWSProvider) Region() string

type AzureProvider

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

func AzureFromManifest

func AzureFromManifest(man *manifest.ProjectManifest, clientSet *ClientSet) (*AzureProvider, error)

func (*AzureProvider) Bucket

func (az *AzureProvider) Bucket() string

func (*AzureProvider) Cluster

func (az *AzureProvider) Cluster() string

func (*AzureProvider) Context

func (az *AzureProvider) Context() map[string]interface{}

func (*AzureProvider) CreateBucket

func (az *AzureProvider) CreateBucket() error

func (*AzureProvider) CreateResourceGroup

func (az *AzureProvider) CreateResourceGroup(resourceGroup string) error

func (*AzureProvider) Decommision

func (az *AzureProvider) Decommision(node *v1.Node) error

func (*AzureProvider) Flush

func (az *AzureProvider) Flush() error

func (*AzureProvider) KubeConfig

func (az *AzureProvider) KubeConfig() error

func (*AzureProvider) KubeContext

func (az *AzureProvider) KubeContext() string

func (*AzureProvider) Name

func (az *AzureProvider) Name() string

func (*AzureProvider) Permissions

func (*AzureProvider) Permissions() (permissions.Checker, error)

func (*AzureProvider) Preflights

func (az *AzureProvider) Preflights() []*Preflight

func (*AzureProvider) Project

func (az *AzureProvider) Project() string

func (*AzureProvider) Region

func (az *AzureProvider) Region() string

type BucketLocation added in v0.8.1

type BucketLocation string
const (
	BucketLocationUS   BucketLocation = "US"
	BucketLocationEU   BucketLocation = "EU"
	BucketLocationASIA BucketLocation = "ASIA"
)

type ClientSet

type ClientSet struct {
	Subscriptions SubscriptionClient
	Groups        ResourceGroupClient
	Accounts      AccountsClient
	Containers    ContainerClient
}

func GetClientSet

func GetClientSet(subscriptionId string) (*ClientSet, error)

type ContainerClient added in v0.8.1

type ContainerClient interface {
	GetProperties(ctx context.Context, ac azblob.LeaseAccessConditions) (*azblob.ContainerGetPropertiesResponse, error)
	Create(ctx context.Context, metadata azblob.Metadata, publicAccessType azblob.PublicAccessType) (*azblob.ContainerCreateResponse, error)
}

type GCPProvider added in v0.8.1

type GCPProvider struct {
	Clust string `survey:"cluster"`
	Proj  string `survey:"project"`

	Reg string `survey:"region"`
	// contains filtered or unexported fields
}

func (*GCPProvider) Bucket added in v0.8.1

func (gcp *GCPProvider) Bucket() string

func (*GCPProvider) Cluster added in v0.8.1

func (gcp *GCPProvider) Cluster() string

func (*GCPProvider) Context added in v0.8.1

func (gcp *GCPProvider) Context() map[string]interface{}

func (*GCPProvider) CreateBucket added in v0.8.3

func (gcp *GCPProvider) CreateBucket() error

func (*GCPProvider) Decommision added in v0.8.1

func (gcp *GCPProvider) Decommision(node *v1.Node) error

func (*GCPProvider) Flush added in v0.8.1

func (gcp *GCPProvider) Flush() error

func (*GCPProvider) KubeConfig added in v0.8.1

func (gcp *GCPProvider) KubeConfig() error

func (*GCPProvider) KubeContext added in v0.8.1

func (gcp *GCPProvider) KubeContext() string

func (*GCPProvider) Name added in v0.8.1

func (gcp *GCPProvider) Name() string

func (*GCPProvider) Permissions added in v0.8.1

func (gcp *GCPProvider) Permissions() (permissions.Checker, error)

func (*GCPProvider) Preflights added in v0.8.1

func (gcp *GCPProvider) Preflights() []*Preflight

func (*GCPProvider) Project added in v0.8.1

func (gcp *GCPProvider) Project() string

func (*GCPProvider) Region added in v0.8.1

func (gcp *GCPProvider) Region() string

type Preflight added in v0.8.1

type Preflight struct {
	Name     string
	Callback func() error
}

func (*Preflight) Validate added in v0.8.1

func (pf *Preflight) Validate() error

type PreflightCheck added in v0.8.1

type PreflightCheck string

type Provider added in v0.8.1

type Provider interface {
	Name() string
	Cluster() string
	Project() string
	Region() string
	Bucket() string
	KubeConfig() error
	KubeContext() string
	CreateBucket() error
	Context() map[string]interface{}
	Preflights() []*Preflight
	Permissions() (permissions.Checker, error)
	Flush() error
}

func FromManifest

func FromManifest(man *manifest.ProjectManifest) (Provider, error)

func GetProvider

func GetProvider() (Provider, error)

func New

func New(provider string) (Provider, error)

type Providers

type Providers struct {
	AvailableProviders []string
	Scaffolds          map[string]string
}

type ResourceGroupClient added in v0.8.1

ResourceGroupClient is the subset of functions we need from armresources.VirtualResourceGroupsClient; this interface is purely here for allowing unit tests.

type SubscriptionClient added in v0.12.3

type SubscriptionClient interface {
	NewListLocationsPager(subscriptionID string, options *armsubscription.SubscriptionsClientListLocationsOptions) *runtime.Pager[armsubscription.SubscriptionsClientListLocationsResponse]
}

type TestProvider

type TestProvider struct {
	Clust string `survey:"cluster"`
	Proj  string

	Reg string
	// contains filtered or unexported fields
}

func (TestProvider) Bucket

func (t TestProvider) Bucket() string

func (TestProvider) Cluster

func (t TestProvider) Cluster() string

func (TestProvider) Context

func (t TestProvider) Context() map[string]interface{}

func (TestProvider) CreateBucket

func (t TestProvider) CreateBucket() error

func (TestProvider) Decommision

func (t TestProvider) Decommision(_ *corev1.Node) error

func (TestProvider) Flush

func (t TestProvider) Flush() error

func (TestProvider) KubeConfig

func (t TestProvider) KubeConfig() error

func (TestProvider) KubeContext

func (t TestProvider) KubeContext() string

func (TestProvider) Name

func (t TestProvider) Name() string

func (TestProvider) Permissions

func (t TestProvider) Permissions() (permissions.Checker, error)

func (TestProvider) Preflights

func (t TestProvider) Preflights() []*Preflight

func (TestProvider) Project

func (t TestProvider) Project() string

func (TestProvider) Region

func (t TestProvider) Region() string

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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