gcp

package
v0.32.1 Latest Latest
Warning

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

Go to latest
Published: Feb 2, 2026 License: Apache-2.0 Imports: 31 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetInfraFilePath

func GetInfraFilePath() string

Types

type CodesphereEnvironment

type CodesphereEnvironment struct {
	ProjectID                string       `json:"project_id"`
	ProjectName              string       `json:"project_name"`
	DNSProjectID             string       `json:"dns_project_id"`
	Jumpbox                  *node.Node   `json:"jumpbox"`
	PostgreSQLNode           *node.Node   `json:"postgres_node"`
	ControlPlaneNodes        []*node.Node `json:"control_plane_nodes"`
	CephNodes                []*node.Node `json:"ceph_nodes"`
	ContainerRegistryURL     string       `json:"-"`
	ExistingConfigUsed       bool         `json:"-"`
	InstallCodesphereVersion string       `json:"install_codesphere_version"`
	Preemptible              bool         `json:"preemptible"`
	WriteConfig              bool         `json:"-"`
	GatewayIP                string       `json:"gateway_ip"`
	PublicGatewayIP          string       `json:"public_gateway_ip"`
	RegistryType             RegistryType `json:"registry_type"`

	// Config
	InstallConfigPath string              `json:"-"`
	SecretsFilePath   string              `json:"-"`
	InstallConfig     *files.RootConfig   `json:"-"`
	Secrets           *files.InstallVault `json:"-"`

	// GCP Specific
	ProjectDisplayName    string `json:"project_display_name"`
	BillingAccount        string `json:"billing_account"`
	BaseDomain            string `json:"base_domain"`
	GithubAppClientID     string `json:"-"`
	GithubAppClientSecret string `json:"-"`
	SecretsDir            string `json:"secrets_dir"`
	FolderID              string `json:"folder_id"`
	SSHPublicKeyPath      string `json:"-"`
	SSHPrivateKeyPath     string `json:"-"`
	DatacenterID          int    `json:"-"`
	CustomPgIP            string `json:"custom_pg_ip"`
	Region                string `json:"region"`
	Zone                  string `json:"zone"`
	DNSZoneName           string `json:"dns_zone_name"`
}

type GCPBootstrapper

type GCPBootstrapper struct {
	GCPClient GCPClientManager
	// Environment
	Env *CodesphereEnvironment
	// SSH command runner
	NodeClient node.NodeClient
	// contains filtered or unexported fields
}

func NewGCPBootstrapper

func NewGCPBootstrapper(
	ctx context.Context,
	env env.Env,
	stlog *bootstrap.StepLogger,
	CodesphereEnv *CodesphereEnvironment,
	icg installer.InstallConfigManager,
	gcpClient GCPClientManager,
	fw util.FileIO,
	sshRunner node.NodeClient) (*GCPBootstrapper, error)

func (*GCPBootstrapper) Bootstrap

func (b *GCPBootstrapper) Bootstrap() error

func (*GCPBootstrapper) EncryptVault

func (b *GCPBootstrapper) EncryptVault() error

func (*GCPBootstrapper) EnsureAPIsEnabled

func (b *GCPBootstrapper) EnsureAPIsEnabled() error

func (*GCPBootstrapper) EnsureAgeKey

func (b *GCPBootstrapper) EnsureAgeKey() error

func (*GCPBootstrapper) EnsureArtifactRegistry

func (b *GCPBootstrapper) EnsureArtifactRegistry() error

func (*GCPBootstrapper) EnsureBilling

func (b *GCPBootstrapper) EnsureBilling() error

func (*GCPBootstrapper) EnsureComputeInstances

func (b *GCPBootstrapper) EnsureComputeInstances() error

func (*GCPBootstrapper) EnsureDNSRecords

func (b *GCPBootstrapper) EnsureDNSRecords() error

func (*GCPBootstrapper) EnsureExternalIP

func (b *GCPBootstrapper) EnsureExternalIP(name string) (string, error)

EnsureExternalIP ensures that a static external IP address with the given name exists.

func (*GCPBootstrapper) EnsureFirewallRules

func (b *GCPBootstrapper) EnsureFirewallRules() error

func (*GCPBootstrapper) EnsureGatewayIPAddresses

func (b *GCPBootstrapper) EnsureGatewayIPAddresses() error

EnsureGatewayIPAddresses reserves 2 static external IP addresses for the ingress controllers of the cluster.

func (*GCPBootstrapper) EnsureHostsConfigured

func (b *GCPBootstrapper) EnsureHostsConfigured() error

func (*GCPBootstrapper) EnsureIAMRoles

func (b *GCPBootstrapper) EnsureIAMRoles() error

func (*GCPBootstrapper) EnsureInstallConfig

func (b *GCPBootstrapper) EnsureInstallConfig() error

func (*GCPBootstrapper) EnsureJumpboxConfigured

func (b *GCPBootstrapper) EnsureJumpboxConfigured() error

func (*GCPBootstrapper) EnsureLocalContainerRegistry

func (b *GCPBootstrapper) EnsureLocalContainerRegistry() error

EnsureLocalContainerRegistry installs a docker registry on the postgres node to speed up image loading time

func (*GCPBootstrapper) EnsureProject

func (b *GCPBootstrapper) EnsureProject() error

func (*GCPBootstrapper) EnsureRootLoginEnabled

func (b *GCPBootstrapper) EnsureRootLoginEnabled() error

func (*GCPBootstrapper) EnsureSecrets

func (b *GCPBootstrapper) EnsureSecrets() error

func (*GCPBootstrapper) EnsureServiceAccounts

func (b *GCPBootstrapper) EnsureServiceAccounts() error

func (*GCPBootstrapper) EnsureVPC

func (b *GCPBootstrapper) EnsureVPC() error

func (*GCPBootstrapper) GenerateK0sConfigScript

func (b *GCPBootstrapper) GenerateK0sConfigScript() error

func (*GCPBootstrapper) InstallCodesphere

func (b *GCPBootstrapper) InstallCodesphere() error

func (*GCPBootstrapper) UpdateInstallConfig

func (b *GCPBootstrapper) UpdateInstallConfig() error

type GCPClient

type GCPClient struct {
	CredentialsFile string
	// contains filtered or unexported fields
}

Concrete implementation

func NewGCPClient

func NewGCPClient(ctx context.Context, st *bootstrap.StepLogger, credentialsFile string) *GCPClient

func (*GCPClient) AssignIAMRole

func (c *GCPClient) AssignIAMRole(projectID, saName, role string) error

AssignIAMRole assigns the specified IAM role to the given service account in the project.

func (*GCPClient) CreateAddress

func (c *GCPClient) CreateAddress(projectID, region string, address *computepb.Address) (string, error)

CreateAddress creates a new static IP address in the specified project and region.

func (*GCPClient) CreateArtifactRegistry

func (c *GCPClient) CreateArtifactRegistry(projectID, region, repoName string) (*artifactpb.Repository, error)

CreateArtifactRegistry creates and returns an Artifact Registry repository by its name.

func (*GCPClient) CreateFirewallRule

func (c *GCPClient) CreateFirewallRule(projectID string, rule *computepb.Firewall) error

CreateFirewallRule creates a firewall rule in the specified project.

func (*GCPClient) CreateInstance

func (c *GCPClient) CreateInstance(projectID, zone string, instance *computepb.Instance) error

CreateInstance creates a new Compute Engine instance in the specified project and zone.

func (*GCPClient) CreateProject

func (c *GCPClient) CreateProject(parent, projectID, displayName string) (string, error)

CreateProject creates a new GCP project under the specified parent (folder or organization). It returns the project ID of the newly created project.

func (*GCPClient) CreateProjectID

func (c *GCPClient) CreateProjectID(projectName string) string

CreateProjectID generates a unique project ID based on the given project name.

func (*GCPClient) CreateServiceAccount

func (c *GCPClient) CreateServiceAccount(projectID, name, displayName string) (string, bool, error)

CreateServiceAccount creates a new service account with the given name and display name. It returns the email of the created service account, a boolean indicating whether the account was newly created, and an error if any occurred during the process.

func (*GCPClient) CreateServiceAccountKey

func (c *GCPClient) CreateServiceAccountKey(projectID, saEmail string) (string, error)

CreateServiceAccountKey creates a new key for the specified service account. It returns the private key data in PEM format and an error if any occurred during the process.

func (*GCPClient) CreateVPC

func (c *GCPClient) CreateVPC(projectID, region, networkName, subnetName, routerName, natName string) error

CreateVPC creates a VPC network with the specified subnet, router, and NAT gateway.

func (*GCPClient) EnableAPIs

func (c *GCPClient) EnableAPIs(projectID string, apis []string) error

EnableAPIs enables the specified APIs for the given project.

func (*GCPClient) EnableBilling

func (c *GCPClient) EnableBilling(projectID, billingAccount string) error

EnableBilling enables billing for the given project using the specified billing account.

func (*GCPClient) EnsureDNSManagedZone

func (c *GCPClient) EnsureDNSManagedZone(projectID, zoneName, dnsName, description string) error

EnsureDNSManagedZone ensures that a DNS managed zone exists in the specified project.

func (*GCPClient) EnsureDNSRecordSets

func (c *GCPClient) EnsureDNSRecordSets(projectID, zoneName string, records []*dns.ResourceRecordSet) error

EnsureDNSRecordSets ensures that the specified DNS record sets exist in the given managed zone.

func (*GCPClient) GetAddress

func (c *GCPClient) GetAddress(projectID, region, addressName string) (*computepb.Address, error)

GetAddress retrieves a static IP address by its name in the specified project and region.

func (*GCPClient) GetArtifactRegistry

func (c *GCPClient) GetArtifactRegistry(projectID, region, repoName string) (*artifactpb.Repository, error)

GetArtifactRegistry retrieves an existing Artifact Registry repository by its name.

func (*GCPClient) GetBillingInfo

func (c *GCPClient) GetBillingInfo(projectID string) (*cloudbilling.ProjectBillingInfo, error)

GetBillingInfo retrieves the billing information for the given project.

func (*GCPClient) GetInstance

func (c *GCPClient) GetInstance(projectID, zone, instanceName string) (*computepb.Instance, error)

GetInstance retrieves a Compute Engine instance by its name in the specified project and zone.

func (*GCPClient) GetProjectByName

func (c *GCPClient) GetProjectByName(folderID string, displayName string) (*resourcemanagerpb.Project, error)

GetProjectByName retrieves a GCP project by its display name within the specified folder.

type GCPClientManager

type GCPClientManager interface {
	GetProjectByName(folderID string, displayName string) (*resourcemanagerpb.Project, error)
	CreateProjectID(projectName string) string
	CreateProject(parent, projectName, displayName string) (string, error)
	GetBillingInfo(projectID string) (*cloudbilling.ProjectBillingInfo, error)
	EnableBilling(projectID, billingAccount string) error
	EnableAPIs(projectID string, apis []string) error
	GetArtifactRegistry(projectID, region, repoName string) (*artifactpb.Repository, error)
	CreateArtifactRegistry(projectID, region, repoName string) (*artifactpb.Repository, error)
	CreateServiceAccount(projectID, name, displayName string) (string, bool, error)
	CreateServiceAccountKey(projectID, saEmail string) (string, error)
	AssignIAMRole(projectID, saEmail, role string) error
	CreateVPC(projectID, region, networkName, subnetName, routerName, natName string) error
	CreateFirewallRule(projectID string, rule *computepb.Firewall) error
	CreateInstance(projectID, zone string, instance *computepb.Instance) error
	GetInstance(projectID, zone, instanceName string) (*computepb.Instance, error)
	CreateAddress(projectID, region string, address *computepb.Address) (string, error)
	GetAddress(projectID, region, addressName string) (*computepb.Address, error)
	EnsureDNSManagedZone(projectID, zoneName, dnsName, description string) error
	EnsureDNSRecordSets(projectID, zoneName string, records []*dns.ResourceRecordSet) error
}

Interface for high-level GCP operations

type MockGCPClientManager

type MockGCPClientManager struct {
	mock.Mock
}

MockGCPClientManager is an autogenerated mock type for the GCPClientManager type

func NewMockGCPClientManager

func NewMockGCPClientManager(t interface {
	mock.TestingT
	Cleanup(func())
}) *MockGCPClientManager

NewMockGCPClientManager creates a new instance of MockGCPClientManager. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. The first argument is typically a *testing.T value.

func (*MockGCPClientManager) AssignIAMRole

func (_mock *MockGCPClientManager) AssignIAMRole(projectID string, saEmail string, role string) error

AssignIAMRole provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) CreateAddress

func (_mock *MockGCPClientManager) CreateAddress(projectID string, region string, address *computepb.Address) (string, error)

CreateAddress provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) CreateArtifactRegistry

func (_mock *MockGCPClientManager) CreateArtifactRegistry(projectID string, region string, repoName string) (*artifactregistrypb.Repository, error)

CreateArtifactRegistry provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) CreateFirewallRule

func (_mock *MockGCPClientManager) CreateFirewallRule(projectID string, rule *computepb.Firewall) error

CreateFirewallRule provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) CreateInstance

func (_mock *MockGCPClientManager) CreateInstance(projectID string, zone string, instance *computepb.Instance) error

CreateInstance provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) CreateProject

func (_mock *MockGCPClientManager) CreateProject(parent string, projectName string, displayName string) (string, error)

CreateProject provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) CreateProjectID

func (_mock *MockGCPClientManager) CreateProjectID(projectName string) string

CreateProjectID provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) CreateServiceAccount

func (_mock *MockGCPClientManager) CreateServiceAccount(projectID string, name string, displayName string) (string, bool, error)

CreateServiceAccount provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) CreateServiceAccountKey

func (_mock *MockGCPClientManager) CreateServiceAccountKey(projectID string, saEmail string) (string, error)

CreateServiceAccountKey provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) CreateVPC

func (_mock *MockGCPClientManager) CreateVPC(projectID string, region string, networkName string, subnetName string, routerName string, natName string) error

CreateVPC provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) EXPECT

func (*MockGCPClientManager) EnableAPIs

func (_mock *MockGCPClientManager) EnableAPIs(projectID string, apis []string) error

EnableAPIs provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) EnableBilling

func (_mock *MockGCPClientManager) EnableBilling(projectID string, billingAccount string) error

EnableBilling provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) EnsureDNSManagedZone

func (_mock *MockGCPClientManager) EnsureDNSManagedZone(projectID string, zoneName string, dnsName string, description string) error

EnsureDNSManagedZone provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) EnsureDNSRecordSets

func (_mock *MockGCPClientManager) EnsureDNSRecordSets(projectID string, zoneName string, records []*dns.ResourceRecordSet) error

EnsureDNSRecordSets provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) GetAddress

func (_mock *MockGCPClientManager) GetAddress(projectID string, region string, addressName string) (*computepb.Address, error)

GetAddress provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) GetArtifactRegistry

func (_mock *MockGCPClientManager) GetArtifactRegistry(projectID string, region string, repoName string) (*artifactregistrypb.Repository, error)

GetArtifactRegistry provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) GetBillingInfo

func (_mock *MockGCPClientManager) GetBillingInfo(projectID string) (*cloudbilling.ProjectBillingInfo, error)

GetBillingInfo provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) GetInstance

func (_mock *MockGCPClientManager) GetInstance(projectID string, zone string, instanceName string) (*computepb.Instance, error)

GetInstance provides a mock function for the type MockGCPClientManager

func (*MockGCPClientManager) GetProjectByName

func (_mock *MockGCPClientManager) GetProjectByName(folderID string, displayName string) (*resourcemanagerpb.Project, error)

GetProjectByName provides a mock function for the type MockGCPClientManager

type MockGCPClientManager_AssignIAMRole_Call

type MockGCPClientManager_AssignIAMRole_Call struct {
	*mock.Call
}

MockGCPClientManager_AssignIAMRole_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'AssignIAMRole'

func (*MockGCPClientManager_AssignIAMRole_Call) Return

func (*MockGCPClientManager_AssignIAMRole_Call) Run

func (*MockGCPClientManager_AssignIAMRole_Call) RunAndReturn

func (_c *MockGCPClientManager_AssignIAMRole_Call) RunAndReturn(run func(projectID string, saEmail string, role string) error) *MockGCPClientManager_AssignIAMRole_Call

type MockGCPClientManager_CreateAddress_Call

type MockGCPClientManager_CreateAddress_Call struct {
	*mock.Call
}

MockGCPClientManager_CreateAddress_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'CreateAddress'

func (*MockGCPClientManager_CreateAddress_Call) Return

func (*MockGCPClientManager_CreateAddress_Call) Run

func (*MockGCPClientManager_CreateAddress_Call) RunAndReturn

type MockGCPClientManager_CreateArtifactRegistry_Call

type MockGCPClientManager_CreateArtifactRegistry_Call struct {
	*mock.Call
}

MockGCPClientManager_CreateArtifactRegistry_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'CreateArtifactRegistry'

func (*MockGCPClientManager_CreateArtifactRegistry_Call) Return

func (*MockGCPClientManager_CreateArtifactRegistry_Call) Run

func (*MockGCPClientManager_CreateArtifactRegistry_Call) RunAndReturn

type MockGCPClientManager_CreateFirewallRule_Call

type MockGCPClientManager_CreateFirewallRule_Call struct {
	*mock.Call
}

MockGCPClientManager_CreateFirewallRule_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'CreateFirewallRule'

func (*MockGCPClientManager_CreateFirewallRule_Call) Return

func (*MockGCPClientManager_CreateFirewallRule_Call) Run

func (*MockGCPClientManager_CreateFirewallRule_Call) RunAndReturn

type MockGCPClientManager_CreateInstance_Call

type MockGCPClientManager_CreateInstance_Call struct {
	*mock.Call
}

MockGCPClientManager_CreateInstance_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'CreateInstance'

func (*MockGCPClientManager_CreateInstance_Call) Return

func (*MockGCPClientManager_CreateInstance_Call) Run

func (*MockGCPClientManager_CreateInstance_Call) RunAndReturn

type MockGCPClientManager_CreateProjectID_Call

type MockGCPClientManager_CreateProjectID_Call struct {
	*mock.Call
}

MockGCPClientManager_CreateProjectID_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'CreateProjectID'

func (*MockGCPClientManager_CreateProjectID_Call) Return

func (*MockGCPClientManager_CreateProjectID_Call) Run

func (*MockGCPClientManager_CreateProjectID_Call) RunAndReturn

type MockGCPClientManager_CreateProject_Call

type MockGCPClientManager_CreateProject_Call struct {
	*mock.Call
}

MockGCPClientManager_CreateProject_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'CreateProject'

func (*MockGCPClientManager_CreateProject_Call) Return

func (*MockGCPClientManager_CreateProject_Call) Run

func (_c *MockGCPClientManager_CreateProject_Call) Run(run func(parent string, projectName string, displayName string)) *MockGCPClientManager_CreateProject_Call

func (*MockGCPClientManager_CreateProject_Call) RunAndReturn

func (_c *MockGCPClientManager_CreateProject_Call) RunAndReturn(run func(parent string, projectName string, displayName string) (string, error)) *MockGCPClientManager_CreateProject_Call

type MockGCPClientManager_CreateServiceAccountKey_Call

type MockGCPClientManager_CreateServiceAccountKey_Call struct {
	*mock.Call
}

MockGCPClientManager_CreateServiceAccountKey_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'CreateServiceAccountKey'

func (*MockGCPClientManager_CreateServiceAccountKey_Call) Return

func (*MockGCPClientManager_CreateServiceAccountKey_Call) Run

func (*MockGCPClientManager_CreateServiceAccountKey_Call) RunAndReturn

type MockGCPClientManager_CreateServiceAccount_Call

type MockGCPClientManager_CreateServiceAccount_Call struct {
	*mock.Call
}

MockGCPClientManager_CreateServiceAccount_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'CreateServiceAccount'

func (*MockGCPClientManager_CreateServiceAccount_Call) Return

func (*MockGCPClientManager_CreateServiceAccount_Call) Run

func (*MockGCPClientManager_CreateServiceAccount_Call) RunAndReturn

type MockGCPClientManager_CreateVPC_Call

type MockGCPClientManager_CreateVPC_Call struct {
	*mock.Call
}

MockGCPClientManager_CreateVPC_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'CreateVPC'

func (*MockGCPClientManager_CreateVPC_Call) Return

func (*MockGCPClientManager_CreateVPC_Call) Run

func (_c *MockGCPClientManager_CreateVPC_Call) Run(run func(projectID string, region string, networkName string, subnetName string, routerName string, natName string)) *MockGCPClientManager_CreateVPC_Call

func (*MockGCPClientManager_CreateVPC_Call) RunAndReturn

func (_c *MockGCPClientManager_CreateVPC_Call) RunAndReturn(run func(projectID string, region string, networkName string, subnetName string, routerName string, natName string) error) *MockGCPClientManager_CreateVPC_Call

type MockGCPClientManager_EnableAPIs_Call

type MockGCPClientManager_EnableAPIs_Call struct {
	*mock.Call
}

MockGCPClientManager_EnableAPIs_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'EnableAPIs'

func (*MockGCPClientManager_EnableAPIs_Call) Return

func (*MockGCPClientManager_EnableAPIs_Call) Run

func (*MockGCPClientManager_EnableAPIs_Call) RunAndReturn

func (_c *MockGCPClientManager_EnableAPIs_Call) RunAndReturn(run func(projectID string, apis []string) error) *MockGCPClientManager_EnableAPIs_Call

type MockGCPClientManager_EnableBilling_Call

type MockGCPClientManager_EnableBilling_Call struct {
	*mock.Call
}

MockGCPClientManager_EnableBilling_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'EnableBilling'

func (*MockGCPClientManager_EnableBilling_Call) Return

func (*MockGCPClientManager_EnableBilling_Call) Run

func (*MockGCPClientManager_EnableBilling_Call) RunAndReturn

func (_c *MockGCPClientManager_EnableBilling_Call) RunAndReturn(run func(projectID string, billingAccount string) error) *MockGCPClientManager_EnableBilling_Call

type MockGCPClientManager_EnsureDNSManagedZone_Call

type MockGCPClientManager_EnsureDNSManagedZone_Call struct {
	*mock.Call
}

MockGCPClientManager_EnsureDNSManagedZone_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'EnsureDNSManagedZone'

func (*MockGCPClientManager_EnsureDNSManagedZone_Call) Return

func (*MockGCPClientManager_EnsureDNSManagedZone_Call) Run

func (*MockGCPClientManager_EnsureDNSManagedZone_Call) RunAndReturn

func (_c *MockGCPClientManager_EnsureDNSManagedZone_Call) RunAndReturn(run func(projectID string, zoneName string, dnsName string, description string) error) *MockGCPClientManager_EnsureDNSManagedZone_Call

type MockGCPClientManager_EnsureDNSRecordSets_Call

type MockGCPClientManager_EnsureDNSRecordSets_Call struct {
	*mock.Call
}

MockGCPClientManager_EnsureDNSRecordSets_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'EnsureDNSRecordSets'

func (*MockGCPClientManager_EnsureDNSRecordSets_Call) Return

func (*MockGCPClientManager_EnsureDNSRecordSets_Call) Run

func (*MockGCPClientManager_EnsureDNSRecordSets_Call) RunAndReturn

type MockGCPClientManager_Expecter

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

func (*MockGCPClientManager_Expecter) AssignIAMRole

func (_e *MockGCPClientManager_Expecter) AssignIAMRole(projectID interface{}, saEmail interface{}, role interface{}) *MockGCPClientManager_AssignIAMRole_Call

AssignIAMRole is a helper method to define mock.On call

  • projectID string
  • saEmail string
  • role string

func (*MockGCPClientManager_Expecter) CreateAddress

func (_e *MockGCPClientManager_Expecter) CreateAddress(projectID interface{}, region interface{}, address interface{}) *MockGCPClientManager_CreateAddress_Call

CreateAddress is a helper method to define mock.On call

  • projectID string
  • region string
  • address *computepb.Address

func (*MockGCPClientManager_Expecter) CreateArtifactRegistry

func (_e *MockGCPClientManager_Expecter) CreateArtifactRegistry(projectID interface{}, region interface{}, repoName interface{}) *MockGCPClientManager_CreateArtifactRegistry_Call

CreateArtifactRegistry is a helper method to define mock.On call

  • projectID string
  • region string
  • repoName string

func (*MockGCPClientManager_Expecter) CreateFirewallRule

func (_e *MockGCPClientManager_Expecter) CreateFirewallRule(projectID interface{}, rule interface{}) *MockGCPClientManager_CreateFirewallRule_Call

CreateFirewallRule is a helper method to define mock.On call

  • projectID string
  • rule *computepb.Firewall

func (*MockGCPClientManager_Expecter) CreateInstance

func (_e *MockGCPClientManager_Expecter) CreateInstance(projectID interface{}, zone interface{}, instance interface{}) *MockGCPClientManager_CreateInstance_Call

CreateInstance is a helper method to define mock.On call

  • projectID string
  • zone string
  • instance *computepb.Instance

func (*MockGCPClientManager_Expecter) CreateProject

func (_e *MockGCPClientManager_Expecter) CreateProject(parent interface{}, projectName interface{}, displayName interface{}) *MockGCPClientManager_CreateProject_Call

CreateProject is a helper method to define mock.On call

  • parent string
  • projectName string
  • displayName string

func (*MockGCPClientManager_Expecter) CreateProjectID

func (_e *MockGCPClientManager_Expecter) CreateProjectID(projectName interface{}) *MockGCPClientManager_CreateProjectID_Call

CreateProjectID is a helper method to define mock.On call

  • projectName string

func (*MockGCPClientManager_Expecter) CreateServiceAccount

func (_e *MockGCPClientManager_Expecter) CreateServiceAccount(projectID interface{}, name interface{}, displayName interface{}) *MockGCPClientManager_CreateServiceAccount_Call

CreateServiceAccount is a helper method to define mock.On call

  • projectID string
  • name string
  • displayName string

func (*MockGCPClientManager_Expecter) CreateServiceAccountKey

func (_e *MockGCPClientManager_Expecter) CreateServiceAccountKey(projectID interface{}, saEmail interface{}) *MockGCPClientManager_CreateServiceAccountKey_Call

CreateServiceAccountKey is a helper method to define mock.On call

  • projectID string
  • saEmail string

func (*MockGCPClientManager_Expecter) CreateVPC

func (_e *MockGCPClientManager_Expecter) CreateVPC(projectID interface{}, region interface{}, networkName interface{}, subnetName interface{}, routerName interface{}, natName interface{}) *MockGCPClientManager_CreateVPC_Call

CreateVPC is a helper method to define mock.On call

  • projectID string
  • region string
  • networkName string
  • subnetName string
  • routerName string
  • natName string

func (*MockGCPClientManager_Expecter) EnableAPIs

func (_e *MockGCPClientManager_Expecter) EnableAPIs(projectID interface{}, apis interface{}) *MockGCPClientManager_EnableAPIs_Call

EnableAPIs is a helper method to define mock.On call

  • projectID string
  • apis []string

func (*MockGCPClientManager_Expecter) EnableBilling

func (_e *MockGCPClientManager_Expecter) EnableBilling(projectID interface{}, billingAccount interface{}) *MockGCPClientManager_EnableBilling_Call

EnableBilling is a helper method to define mock.On call

  • projectID string
  • billingAccount string

func (*MockGCPClientManager_Expecter) EnsureDNSManagedZone

func (_e *MockGCPClientManager_Expecter) EnsureDNSManagedZone(projectID interface{}, zoneName interface{}, dnsName interface{}, description interface{}) *MockGCPClientManager_EnsureDNSManagedZone_Call

EnsureDNSManagedZone is a helper method to define mock.On call

  • projectID string
  • zoneName string
  • dnsName string
  • description string

func (*MockGCPClientManager_Expecter) EnsureDNSRecordSets

func (_e *MockGCPClientManager_Expecter) EnsureDNSRecordSets(projectID interface{}, zoneName interface{}, records interface{}) *MockGCPClientManager_EnsureDNSRecordSets_Call

EnsureDNSRecordSets is a helper method to define mock.On call

  • projectID string
  • zoneName string
  • records []*dns.ResourceRecordSet

func (*MockGCPClientManager_Expecter) GetAddress

func (_e *MockGCPClientManager_Expecter) GetAddress(projectID interface{}, region interface{}, addressName interface{}) *MockGCPClientManager_GetAddress_Call

GetAddress is a helper method to define mock.On call

  • projectID string
  • region string
  • addressName string

func (*MockGCPClientManager_Expecter) GetArtifactRegistry

func (_e *MockGCPClientManager_Expecter) GetArtifactRegistry(projectID interface{}, region interface{}, repoName interface{}) *MockGCPClientManager_GetArtifactRegistry_Call

GetArtifactRegistry is a helper method to define mock.On call

  • projectID string
  • region string
  • repoName string

func (*MockGCPClientManager_Expecter) GetBillingInfo

func (_e *MockGCPClientManager_Expecter) GetBillingInfo(projectID interface{}) *MockGCPClientManager_GetBillingInfo_Call

GetBillingInfo is a helper method to define mock.On call

  • projectID string

func (*MockGCPClientManager_Expecter) GetInstance

func (_e *MockGCPClientManager_Expecter) GetInstance(projectID interface{}, zone interface{}, instanceName interface{}) *MockGCPClientManager_GetInstance_Call

GetInstance is a helper method to define mock.On call

  • projectID string
  • zone string
  • instanceName string

func (*MockGCPClientManager_Expecter) GetProjectByName

func (_e *MockGCPClientManager_Expecter) GetProjectByName(folderID interface{}, displayName interface{}) *MockGCPClientManager_GetProjectByName_Call

GetProjectByName is a helper method to define mock.On call

  • folderID string
  • displayName string

type MockGCPClientManager_GetAddress_Call

type MockGCPClientManager_GetAddress_Call struct {
	*mock.Call
}

MockGCPClientManager_GetAddress_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'GetAddress'

func (*MockGCPClientManager_GetAddress_Call) Return

func (*MockGCPClientManager_GetAddress_Call) Run

func (_c *MockGCPClientManager_GetAddress_Call) Run(run func(projectID string, region string, addressName string)) *MockGCPClientManager_GetAddress_Call

func (*MockGCPClientManager_GetAddress_Call) RunAndReturn

func (_c *MockGCPClientManager_GetAddress_Call) RunAndReturn(run func(projectID string, region string, addressName string) (*computepb.Address, error)) *MockGCPClientManager_GetAddress_Call

type MockGCPClientManager_GetArtifactRegistry_Call

type MockGCPClientManager_GetArtifactRegistry_Call struct {
	*mock.Call
}

MockGCPClientManager_GetArtifactRegistry_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'GetArtifactRegistry'

func (*MockGCPClientManager_GetArtifactRegistry_Call) Return

func (*MockGCPClientManager_GetArtifactRegistry_Call) Run

func (*MockGCPClientManager_GetArtifactRegistry_Call) RunAndReturn

type MockGCPClientManager_GetBillingInfo_Call

type MockGCPClientManager_GetBillingInfo_Call struct {
	*mock.Call
}

MockGCPClientManager_GetBillingInfo_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'GetBillingInfo'

func (*MockGCPClientManager_GetBillingInfo_Call) Return

func (*MockGCPClientManager_GetBillingInfo_Call) Run

func (*MockGCPClientManager_GetBillingInfo_Call) RunAndReturn

type MockGCPClientManager_GetInstance_Call

type MockGCPClientManager_GetInstance_Call struct {
	*mock.Call
}

MockGCPClientManager_GetInstance_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'GetInstance'

func (*MockGCPClientManager_GetInstance_Call) Return

func (*MockGCPClientManager_GetInstance_Call) Run

func (_c *MockGCPClientManager_GetInstance_Call) Run(run func(projectID string, zone string, instanceName string)) *MockGCPClientManager_GetInstance_Call

func (*MockGCPClientManager_GetInstance_Call) RunAndReturn

func (_c *MockGCPClientManager_GetInstance_Call) RunAndReturn(run func(projectID string, zone string, instanceName string) (*computepb.Instance, error)) *MockGCPClientManager_GetInstance_Call

type MockGCPClientManager_GetProjectByName_Call

type MockGCPClientManager_GetProjectByName_Call struct {
	*mock.Call
}

MockGCPClientManager_GetProjectByName_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'GetProjectByName'

func (*MockGCPClientManager_GetProjectByName_Call) Return

func (*MockGCPClientManager_GetProjectByName_Call) Run

func (*MockGCPClientManager_GetProjectByName_Call) RunAndReturn

type RegistryType

type RegistryType string
const (
	RegistryTypeLocalContainer   RegistryType = "local-container"
	RegistryTypeArtifactRegistry RegistryType = "artifact-registry"
)

type VMDef

type VMDef struct {
	Name            string
	MachineType     string
	Tags            []string
	AdditionalDisks []int64
	ExternalIP      bool
}

Jump to

Keyboard shortcuts

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