outputs

package
v0.78.2 Latest Latest
Warning

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

Go to latest
Published: Apr 28, 2026 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

Package outputs contains lightweight output structs for scenarios. These structs only contain *Output types and have no test client dependencies. Use these in Run functions to avoid pulling in heavy test dependencies.

The testing layer (environments package) embeds these outputs and adds client functionality on top. This separation ensures that running scenarios via pulumi doesn't pull in test framework dependencies like testify, k8s client, etc.

package outputs contains the output types for the scenarios. This packageshould be very similar to the environments defined in the testing/environments package. The main difference is that these structs should not contain any dependency to clients that are actually used inside the tests. The goal is to allow the use of scenarios without pulling all the test client dependencies, scenarios for local and testing were first merged without that abstraction. But it lead to unnecesarily increasing the build time of the Pulumi binaries when running them locally, because pulling client used in test pull a lot of dependencies, especially zstd due to the usage of agent payload in the fakeintake client.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DockerHost

type DockerHost struct {
	RemoteHost *remote.HostOutput
	FakeIntake *fakeintake.FakeintakeOutput
	Agent      *agent.DockerAgentOutput
	Docker     *docker.ManagerOutput
}

DockerHost contains the outputs for a DockerHost environment.

func NewDockerHost

func NewDockerHost() *DockerHost

NewDockerHost creates a new DockerHost output struct with all fields initialized.

func (*DockerHost) DisableAgent

func (h *DockerHost) DisableAgent()

DisableAgent marks Agent as not provisioned (sets to nil)

func (*DockerHost) DisableFakeIntake

func (h *DockerHost) DisableFakeIntake()

DisableFakeIntake marks FakeIntake as not provisioned (sets to nil)

func (*DockerHost) DockerAgentOutput

func (h *DockerHost) DockerAgentOutput() *agent.DockerAgentOutput

DockerAgentOutput returns the Docker agent output for exporting (may be nil)

func (*DockerHost) DockerOutput

func (h *DockerHost) DockerOutput() *docker.ManagerOutput

DockerOutput returns the Docker manager output for exporting

func (*DockerHost) FakeIntakeOutput

func (h *DockerHost) FakeIntakeOutput() *fakeintake.FakeintakeOutput

FakeIntakeOutput returns the fakeintake output for exporting (may be nil)

func (*DockerHost) RemoteHostOutput

func (h *DockerHost) RemoteHostOutput() *remote.HostOutput

RemoteHostOutput returns the remote host output for exporting

type DockerHostOutputs

type DockerHostOutputs interface {
	RemoteHostOutput() *remote.HostOutput
	FakeIntakeOutput() *fakeintake.FakeintakeOutput
	DockerAgentOutput() *agent.DockerAgentOutput
	DockerOutput() *docker.ManagerOutput
	DisableFakeIntake()
	DisableAgent()
}

DockerHostOutputs is the interface for DockerHost environment outputs.

type ECS

type ECS struct {
	ECSCluster *ecs.ClusterOutput
	FakeIntake *fakeintake.FakeintakeOutput
}

ECS contains the outputs for an ECS environment.

func NewECS

func NewECS() *ECS

NewECS creates a new ECS output struct with all fields initialized.

func (*ECS) DisableFakeIntake

func (e *ECS) DisableFakeIntake()

DisableFakeIntake marks FakeIntake as not provisioned (sets to nil)

func (*ECS) ECSClusterOutput

func (e *ECS) ECSClusterOutput() *ecs.ClusterOutput

ECSClusterOutput returns the ECS cluster output for exporting

func (*ECS) FakeIntakeOutput

func (e *ECS) FakeIntakeOutput() *fakeintake.FakeintakeOutput

FakeIntakeOutput returns the fakeintake output for exporting (may be nil)

type ECSOutputs

type ECSOutputs interface {
	ECSClusterOutput() *ecs.ClusterOutput
	FakeIntakeOutput() *fakeintake.FakeintakeOutput
	DisableFakeIntake()
}

ECSOutputs is the interface for ECS environment outputs.

type Host

type Host struct {
	RemoteHost *remote.HostOutput
	FakeIntake *fakeintake.FakeintakeOutput
	Agent      *agent.HostAgentOutput
	Updater    *updater.HostUpdaterOutput
}

Host contains the outputs for a Host environment. This struct is lightweight and does not import test client dependencies.

func NewHost

func NewHost() *Host

NewHost creates a new Host output struct with all fields initialized.

func (*Host) AgentOutput

func (h *Host) AgentOutput() *agent.HostAgentOutput

AgentOutput returns the agent output for exporting (may be nil)

func (*Host) DisableAgent

func (h *Host) DisableAgent()

DisableAgent marks Agent as not provisioned (sets to nil)

func (*Host) DisableFakeIntake

func (h *Host) DisableFakeIntake()

DisableFakeIntake marks FakeIntake as not provisioned (sets to nil)

func (*Host) DisableUpdater

func (h *Host) DisableUpdater()

DisableUpdater marks Updater as not provisioned (sets to nil)

func (*Host) FakeIntakeOutput

func (h *Host) FakeIntakeOutput() *fakeintake.FakeintakeOutput

FakeIntakeOutput returns the fakeintake output for exporting (may be nil)

func (*Host) RemoteHostOutput

func (h *Host) RemoteHostOutput() *remote.HostOutput

RemoteHostOutput returns the remote host output for exporting

func (*Host) SetAgentClientOptions

func (h *Host) SetAgentClientOptions(options ...agentclientparams.Option)

SetAgentClientOptions sets the agent client options

func (*Host) UpdaterOutput

func (h *Host) UpdaterOutput() *updater.HostUpdaterOutput

UpdaterOutput returns the updater output for exporting (may be nil)

type HostOutputs

type HostOutputs interface {
	RemoteHostOutput() *remote.HostOutput
	FakeIntakeOutput() *fakeintake.FakeintakeOutput
	AgentOutput() *agent.HostAgentOutput
	UpdaterOutput() *updater.HostUpdaterOutput
	DisableFakeIntake()
	DisableAgent()
	DisableUpdater()
	SetAgentClientOptions(options ...agentclientparams.Option)
}

HostOutputs is the interface that both outputs.Host and environments.Host implement. This allows Run functions to accept either type, enabling: - Scenarios (main.go) to use lightweight outputs.Host without test dependencies - Provisioners (test code) to use environments.Host with full client support

type Kubernetes

type Kubernetes struct {
	KubernetesCluster *kubernetes.ClusterOutput
	FakeIntake        *fakeintake.FakeintakeOutput
	Agent             *agent.KubernetesAgentOutput
}

Kubernetes contains the outputs for a Kubernetes environment.

func NewKubernetes

func NewKubernetes() *Kubernetes

NewKubernetes creates a new Kubernetes output struct with all fields initialized.

func (*Kubernetes) DisableAgent

func (k *Kubernetes) DisableAgent()

DisableAgent marks Agent as not provisioned (sets to nil)

func (*Kubernetes) DisableFakeIntake

func (k *Kubernetes) DisableFakeIntake()

DisableFakeIntake marks FakeIntake as not provisioned (sets to nil)

func (*Kubernetes) FakeIntakeOutput

func (k *Kubernetes) FakeIntakeOutput() *fakeintake.FakeintakeOutput

FakeIntakeOutput returns the fakeintake output for exporting (may be nil)

func (*Kubernetes) KubernetesAgentOutput

func (k *Kubernetes) KubernetesAgentOutput() *agent.KubernetesAgentOutput

KubernetesAgentOutput returns the Kubernetes agent output for exporting (may be nil)

func (*Kubernetes) KubernetesClusterOutput

func (k *Kubernetes) KubernetesClusterOutput() *kubernetes.ClusterOutput

KubernetesClusterOutput returns the Kubernetes cluster output for exporting

type KubernetesOutputs

type KubernetesOutputs interface {
	KubernetesClusterOutput() *kubernetes.ClusterOutput
	FakeIntakeOutput() *fakeintake.FakeintakeOutput
	KubernetesAgentOutput() *agent.KubernetesAgentOutput
	DisableFakeIntake()
	DisableAgent()
}

KubernetesOutputs is the interface for Kubernetes environment outputs. It is shared across different Kubernetes-based scenarios (EKS, KIND, etc.).

type WindowsHost

type WindowsHost struct {
	RemoteHost      *remote.HostOutput
	FakeIntake      *fakeintake.FakeintakeOutput
	Agent           *agent.HostAgentOutput
	ActiveDirectory *activedirectory.Output
}

WindowsHost contains the outputs for a WindowsHost environment.

func NewWindowsHost

func NewWindowsHost() *WindowsHost

NewWindowsHost creates a new WindowsHost output struct with all fields initialized.

func (*WindowsHost) ActiveDirectoryOutput

func (h *WindowsHost) ActiveDirectoryOutput() *activedirectory.Output

ActiveDirectoryOutput returns the ActiveDirectory output for exporting (may be nil)

func (*WindowsHost) AgentOutput

func (h *WindowsHost) AgentOutput() *agent.HostAgentOutput

AgentOutput returns the agent output for exporting (may be nil)

func (*WindowsHost) DisableActiveDirectory

func (h *WindowsHost) DisableActiveDirectory()

DisableActiveDirectory marks ActiveDirectory as not provisioned (sets to nil)

func (*WindowsHost) DisableAgent

func (h *WindowsHost) DisableAgent()

DisableAgent marks Agent as not provisioned (sets to nil)

func (*WindowsHost) DisableFakeIntake

func (h *WindowsHost) DisableFakeIntake()

DisableFakeIntake marks FakeIntake as not provisioned (sets to nil)

func (*WindowsHost) FakeIntakeOutput

func (h *WindowsHost) FakeIntakeOutput() *fakeintake.FakeintakeOutput

FakeIntakeOutput returns the fakeintake output for exporting (may be nil)

func (*WindowsHost) RemoteHostOutput

func (h *WindowsHost) RemoteHostOutput() *remote.HostOutput

RemoteHostOutput returns the remote host output for exporting

func (*WindowsHost) SetAgentClientOptions

func (h *WindowsHost) SetAgentClientOptions(options ...agentclientparams.Option)

SetAgentClientOptions sets the agent client options

func (*WindowsHost) SetEnvironment

func (h *WindowsHost) SetEnvironment(env config.Env)

SetEnvironment is a no-op for outputs (only used in test environments)

type WindowsHostOutputs

type WindowsHostOutputs interface {
	RemoteHostOutput() *remote.HostOutput
	FakeIntakeOutput() *fakeintake.FakeintakeOutput
	AgentOutput() *agent.HostAgentOutput
	ActiveDirectoryOutput() *activedirectory.Output
	DisableFakeIntake()
	DisableAgent()
	DisableActiveDirectory()
	SetAgentClientOptions(options ...agentclientparams.Option)
	SetEnvironment(env config.Env)
}

WindowsHostOutputs is the interface for WindowsHost environment outputs.

Jump to

Keyboard shortcuts

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