constellation/cli/internal/cloudcmd/clients.go

41 lines
1.3 KiB
Go
Raw Normal View History

/*
Copyright (c) Edgeless Systems GmbH
SPDX-License-Identifier: AGPL-3.0-only
*/
2022-04-13 07:01:38 -04:00
package cloudcmd
import (
"context"
2022-06-07 10:30:41 -04:00
azurecl "github.com/edgelesssys/constellation/cli/internal/azure/client"
2022-06-07 08:52:47 -04:00
gcpcl "github.com/edgelesssys/constellation/cli/internal/gcp/client"
2022-04-13 07:01:38 -04:00
"github.com/edgelesssys/constellation/internal/state"
)
type gcpclient interface {
2022-08-01 06:35:35 -04:00
GetState() state.ConstellationState
SetState(state.ConstellationState)
CreateVPCs(ctx context.Context) error
2022-04-13 07:01:38 -04:00
CreateFirewall(ctx context.Context, input gcpcl.FirewallInput) error
CreateInstances(ctx context.Context, input gcpcl.CreateInstancesInput) error
2022-08-01 10:51:34 -04:00
CreateLoadBalancers(ctx context.Context) error
2022-04-13 07:01:38 -04:00
TerminateFirewall(ctx context.Context) error
TerminateVPCs(context.Context) error
2022-08-01 10:51:34 -04:00
TerminateLoadBalancers(context.Context) error
2022-04-13 07:01:38 -04:00
TerminateInstances(context.Context) error
Close() error
}
type azureclient interface {
2022-08-01 06:35:35 -04:00
GetState() state.ConstellationState
SetState(state.ConstellationState)
CreateApplicationInsight(ctx context.Context) error
2022-05-24 04:04:42 -04:00
CreateExternalLoadBalancer(ctx context.Context) error
2022-04-13 07:01:38 -04:00
CreateVirtualNetwork(ctx context.Context) error
CreateSecurityGroup(ctx context.Context, input azurecl.NetworkSecurityGroupInput) error
CreateInstances(ctx context.Context, input azurecl.CreateInstancesInput) error
TerminateResourceGroupResources(ctx context.Context) error
2022-04-13 07:01:38 -04:00
}