Documentation ¶
Overview ¶
deploy contains reusable infrastructure for Bicep deployments.
Package deploy is a generated GoMock package.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DeployWithProgress ¶
DeployWithProgress injects environment and application parameters into the template, displays progress updates while deploying, and logs the deployment results and public endpoints. If an error occurs, an error is returned.
Types ¶
type Impl ¶
type Impl struct { }
func (*Impl) DeployWithProgress ¶
func (*Impl) DeployWithProgress(ctx context.Context, options Options) (clients.DeploymentResult, error)
DeployWithProgress runs a deployment and displays progress to the user. This is intended to be used from the CLI and thus logs to the console.
type InteractiveListener ¶
type InteractiveListener struct { Spinner []string // contains filtered or unexported fields }
func (*InteractiveListener) Run ¶
func (listener *InteractiveListener) Run()
Run() concurrently updates the UI with a spinner and writes output for each resource update received from the progressChan channel.
type Interface ¶
type Interface interface { // DeployWithProgress runs a deployment and displays progress to the user. This is intended to be used // from the CLI and thus logs to the console. DeployWithProgress(ctx context.Context, options Options) (clients.DeploymentResult, error) }
Interface is the interface for executing Bicep deployments in the CLI.
type MockInterface ¶
type MockInterface struct {
// contains filtered or unexported fields
}
MockInterface is a mock of Interface interface.
func NewMockInterface ¶
func NewMockInterface(ctrl *gomock.Controller) *MockInterface
NewMockInterface creates a new mock instance.
func (*MockInterface) DeployWithProgress ¶
func (m *MockInterface) DeployWithProgress(arg0 context.Context, arg1 Options) (clients.DeploymentResult, error)
DeployWithProgress mocks base method.
func (*MockInterface) EXPECT ¶
func (m *MockInterface) EXPECT() *MockInterfaceMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
type MockInterfaceMockRecorder ¶
type MockInterfaceMockRecorder struct {
// contains filtered or unexported fields
}
MockInterfaceMockRecorder is the mock recorder for MockInterface.
func (*MockInterfaceMockRecorder) DeployWithProgress ¶
func (mr *MockInterfaceMockRecorder) DeployWithProgress(arg0, arg1 interface{}) *gomock.Call
DeployWithProgress indicates an expected call of DeployWithProgress.
type NoOpListener ¶
type NoOpListener struct {
// contains filtered or unexported fields
}
func (*NoOpListener) Run ¶
func (listener *NoOpListener) Run()
Run() continuously drains the updates from the progressChan channel without taking any action.
type Options ¶
type Options struct { // ConnectionFactory is used to create the deployment client. ConnectionFactory connections.Factory // Parameters should contain the parameters to set for the deployment. Parameters clients.DeploymentParameters // Template should contain a parsed ARM-JSON template. Template map[string]any // Workspace is the workspace to use for deployment. Workspace workspaces.Workspace // Providers are cloud and radius providers configured on the env for deployment Providers *clients.Providers // ProgressText is a message displayed on the console when deployment begins. ProgressText string // CompleteText is a message displayed on the console when deployment completes. CompletionText string }
Options contains options to be used with DeployWithProgress.
type ProgressListener ¶
type ProgressListener interface { // Run is called to print progress to the command line. This should be called from // a goroutine because it blocks until the progress channel is closed. Run() }
func NewProgressListener ¶
func NewProgressListener(progressChan <-chan clients.ResourceProgress) ProgressListener
NewProgressListener creates a new ProgressListener based on whether the output is a terminal or not, returning an InteractiveListener if it is a terminal and a NoOpListener if it is not.
type PublicEndpoint ¶
type PublicEndpoint struct { Resource ucpresources.ID Endpoint string }
func FindPublicEndpoints ¶
func FindPublicEndpoints(ctx context.Context, diag clients.DiagnosticsClient, result clients.DeploymentResult) ([]PublicEndpoint, error)
FindPublicEndpoints iterates through a list of resources and attempts to retrieve a public endpoint for each one, returning a list of public endpoints and an error if one occurs.