gcp

package
v0.1.75 Latest Latest
Warning

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

Go to latest
Published: Aug 8, 2024 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type GcpClient

type GcpClient interface {
	ListServiceAccounts(project string, filter func(s string) bool) ([]string, error) //nolint:lll

	CreateServiceAccount(ctx context.Context, request *adminpb.CreateServiceAccountRequest) (*adminpb.ServiceAccount, error) //nolint:lll

	CreateWorkloadIdentityPool(ctx context.Context, parent, poolID string, pool *iamv1.WorkloadIdentityPool) (*iamv1.Operation, error)               //nolint:lll
	GetWorkloadIdentityPool(ctx context.Context, resource string) (*iamv1.WorkloadIdentityPool, error)                                               //nolint:lll
	DeleteWorkloadIdentityPool(ctx context.Context, resource string) (*iamv1.Operation, error)                                                       //nolint:lll
	UndeleteWorkloadIdentityPool(ctx context.Context, resource string, request *iamv1.UndeleteWorkloadIdentityPoolRequest) (*iamv1.Operation, error) //nolint:lll

	CreateWorkloadIdentityProvider(ctx context.Context, parent, providerID string, provider *iamv1.WorkloadIdentityPoolProvider) (*iamv1.Operation, error) //nolint:lll
	GetWorkloadIdentityProvider(ctx context.Context, resource string) (*iamv1.WorkloadIdentityPoolProvider, error)                                         //nolint:lll

	DeleteServiceAccount(saName string, project string, allowMissing bool) error

	GetProjectIamPolicy(projectName string, request *cloudresourcemanager.GetIamPolicyRequest) (*cloudresourcemanager.Policy, error)     //nolint:lll
	SetProjectIamPolicy(svcAcctResource string, request *cloudresourcemanager.SetIamPolicyRequest) (*cloudresourcemanager.Policy, error) //nolint:lll

	AttachImpersonator(saId, projectId, impersonatorResourceId string) error
	AttachWorkloadIdentityPool(sa *cmv1.WifServiceAccount, poolId, projectId string) error

	SaveSecret(secretId, projectId string, secretData []byte) error
	RetreiveSecret(secretId string, projectId string) ([]byte, error)

	ProjectNumberFromId(projectId string) (int64, error)

	GetRole(context.Context, *adminpb.GetRoleRequest) (*adminpb.Role, error)
	CreateRole(context.Context, *adminpb.CreateRoleRequest) (*adminpb.Role, error)
	UpdateRole(context.Context, *adminpb.UpdateRoleRequest) (*adminpb.Role, error)
	DeleteRole(context.Context, *adminpb.DeleteRoleRequest) (*adminpb.Role, error)
	UndeleteRole(context.Context, *adminpb.UndeleteRoleRequest) (*adminpb.Role, error)
	ListRoles(context.Context, *adminpb.ListRolesRequest) (*adminpb.ListRolesResponse, error)
}

func NewGcpClient

func NewGcpClient(ctx context.Context) (GcpClient, error)

type WorkloadIdentityPoolSpec

type WorkloadIdentityPoolSpec struct {
	Audience               []string
	IssuerUrl              string
	PoolName               string
	ProjectId              string
	Jwks                   string
	PoolIdentityProviderId string
}

Jump to

Keyboard shortcuts

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