mirror of
https://github.com/edgelesssys/constellation.git
synced 2024-12-28 00:49:26 -05:00
bd63aa3c6b
sed -i '1i/*\nCopyright (c) Edgeless Systems GmbH\n\nSPDX-License-Identifier: AGPL-3.0-only\n*/\n' `grep -rL --include='*.go' 'DO NOT EDIT'` gofumpt -w .
151 lines
5.0 KiB
Go
151 lines
5.0 KiB
Go
/*
|
|
Copyright (c) Edgeless Systems GmbH
|
|
|
|
SPDX-License-Identifier: AGPL-3.0-only
|
|
*/
|
|
|
|
package client
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/googleapis/gax-go/v2"
|
|
computepb "google.golang.org/genproto/googleapis/cloud/compute/v1"
|
|
adminpb "google.golang.org/genproto/googleapis/iam/admin/v1"
|
|
iampb "google.golang.org/genproto/googleapis/iam/v1"
|
|
)
|
|
|
|
type instanceAPI interface {
|
|
Close() error
|
|
List(ctx context.Context, req *computepb.ListInstancesRequest,
|
|
opts ...gax.CallOption) InstanceIterator
|
|
}
|
|
|
|
type operationRegionAPI interface {
|
|
Close() error
|
|
Wait(ctx context.Context, req *computepb.WaitRegionOperationRequest,
|
|
opts ...gax.CallOption) (*computepb.Operation, error)
|
|
}
|
|
|
|
type operationZoneAPI interface {
|
|
Close() error
|
|
Wait(ctx context.Context, req *computepb.WaitZoneOperationRequest,
|
|
opts ...gax.CallOption) (*computepb.Operation, error)
|
|
}
|
|
|
|
type operationGlobalAPI interface {
|
|
Close() error
|
|
Wait(ctx context.Context, req *computepb.WaitGlobalOperationRequest,
|
|
opts ...gax.CallOption) (*computepb.Operation, error)
|
|
}
|
|
|
|
type firewallsAPI interface {
|
|
Close() error
|
|
Delete(ctx context.Context, req *computepb.DeleteFirewallRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
Insert(ctx context.Context, req *computepb.InsertFirewallRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
}
|
|
|
|
type forwardingRulesAPI interface {
|
|
Close() error
|
|
Delete(ctx context.Context, req *computepb.DeleteForwardingRuleRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
Insert(ctx context.Context, req *computepb.InsertForwardingRuleRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
Get(ctx context.Context, req *computepb.GetForwardingRuleRequest,
|
|
opts ...gax.CallOption) (*computepb.ForwardingRule, error)
|
|
SetLabels(ctx context.Context, req *computepb.SetLabelsForwardingRuleRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
}
|
|
|
|
type backendServicesAPI interface {
|
|
Close() error
|
|
Delete(ctx context.Context, req *computepb.DeleteRegionBackendServiceRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
Insert(ctx context.Context, req *computepb.InsertRegionBackendServiceRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
}
|
|
|
|
type healthChecksAPI interface {
|
|
Close() error
|
|
Delete(ctx context.Context, req *computepb.DeleteRegionHealthCheckRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
Insert(ctx context.Context, req *computepb.InsertRegionHealthCheckRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
}
|
|
|
|
type networksAPI interface {
|
|
Close() error
|
|
Delete(ctx context.Context, req *computepb.DeleteNetworkRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
Insert(ctx context.Context, req *computepb.InsertNetworkRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
}
|
|
|
|
type subnetworksAPI interface {
|
|
Close() error
|
|
Delete(ctx context.Context, req *computepb.DeleteSubnetworkRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
Insert(ctx context.Context, req *computepb.InsertSubnetworkRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
}
|
|
|
|
type instanceTemplateAPI interface {
|
|
Close() error
|
|
Delete(ctx context.Context, req *computepb.DeleteInstanceTemplateRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
Insert(ctx context.Context, req *computepb.InsertInstanceTemplateRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
}
|
|
|
|
type instanceGroupManagersAPI interface {
|
|
Close() error
|
|
Delete(ctx context.Context, req *computepb.DeleteInstanceGroupManagerRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
Insert(ctx context.Context, req *computepb.InsertInstanceGroupManagerRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
ListManagedInstances(ctx context.Context, req *computepb.ListManagedInstancesInstanceGroupManagersRequest,
|
|
opts ...gax.CallOption) ManagedInstanceIterator
|
|
}
|
|
|
|
type iamAPI interface {
|
|
Close() error
|
|
CreateServiceAccount(ctx context.Context, req *adminpb.CreateServiceAccountRequest,
|
|
opts ...gax.CallOption) (*adminpb.ServiceAccount, error)
|
|
CreateServiceAccountKey(ctx context.Context, req *adminpb.CreateServiceAccountKeyRequest,
|
|
opts ...gax.CallOption) (*adminpb.ServiceAccountKey, error)
|
|
DeleteServiceAccount(ctx context.Context, req *adminpb.DeleteServiceAccountRequest,
|
|
opts ...gax.CallOption) error
|
|
}
|
|
|
|
type projectsAPI interface {
|
|
Close() error
|
|
GetIamPolicy(ctx context.Context, req *iampb.GetIamPolicyRequest,
|
|
opts ...gax.CallOption) (*iampb.Policy, error)
|
|
SetIamPolicy(ctx context.Context, req *iampb.SetIamPolicyRequest,
|
|
opts ...gax.CallOption) (*iampb.Policy, error)
|
|
}
|
|
|
|
type addressesAPI interface {
|
|
Close() error
|
|
Insert(ctx context.Context, req *computepb.InsertAddressRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
Get(ctx context.Context, req *computepb.GetAddressRequest,
|
|
opts ...gax.CallOption) (*computepb.Address, error)
|
|
Delete(ctx context.Context, req *computepb.DeleteAddressRequest,
|
|
opts ...gax.CallOption) (Operation, error)
|
|
}
|
|
|
|
type Operation interface {
|
|
Proto() *computepb.Operation
|
|
}
|
|
|
|
type ManagedInstanceIterator interface {
|
|
Next() (*computepb.ManagedInstance, error)
|
|
}
|
|
|
|
type InstanceIterator interface {
|
|
Next() (*computepb.Instance, error)
|
|
}
|