Documentation
¶
Overview ¶
Package builders provides shared test utilities for clawker tests.
Index ¶
- func AgentWithEnv(env map[string]string) config.AgentConfig
- func AgentWithIncludes(includes ...string) config.AgentConfig
- func AlpineBuild() config.BuildConfig
- func BuildWithInstructions(image string, instructions *config.DockerInstructions) config.BuildConfig
- func BuildWithPackages(image string, packages ...string) config.BuildConfig
- func DefaultAgent() config.AgentConfig
- func DefaultBuild() config.BuildConfig
- func DefaultWorkspace() config.WorkspaceConfig
- func InstructionsWithCopy(copies ...config.CopyInstruction) *config.DockerInstructions
- func InstructionsWithEnv(env map[string]string) *config.DockerInstructions
- func InstructionsWithRootRun(commands ...string) *config.DockerInstructions
- func InstructionsWithUserRun(commands ...string) *config.DockerInstructions
- func SecurityFirewallDisabled() config.SecurityConfig
- func SecurityFirewallEnabled() config.SecurityConfig
- func SecurityWithDockerSocket() config.SecurityConfig
- func SecurityWithFirewallDomains(addDomains []string) config.SecurityConfig
- func SecurityWithGitCredentials(forwardHTTPS, forwardSSH, copyConfig bool) config.SecurityConfig
- func WorkspaceSnapshot() config.WorkspaceConfig
- func WorkspaceWithPath(remotePath string) config.WorkspaceConfig
- type ConfigBuilder
- func (b *ConfigBuilder) Build() *config.Project
- func (b *ConfigBuilder) ForTestBaseImage() *ConfigBuilder
- func (b *ConfigBuilder) WithAgent(agent config.AgentConfig) *ConfigBuilder
- func (b *ConfigBuilder) WithBuild(build config.BuildConfig) *ConfigBuilder
- func (b *ConfigBuilder) WithDefaultImage(image string) *ConfigBuilder
- func (b *ConfigBuilder) WithProject(_ string) *ConfigBuilder
- func (b *ConfigBuilder) WithSecurity(security config.SecurityConfig) *ConfigBuilder
- func (b *ConfigBuilder) WithWorkspace(workspace config.WorkspaceConfig) *ConfigBuilder
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AgentWithEnv ¶
func AgentWithEnv(env map[string]string) config.AgentConfig
AgentWithEnv returns an agent config with environment variables.
func AgentWithIncludes ¶
func AgentWithIncludes(includes ...string) config.AgentConfig
AgentWithIncludes returns an agent config with include files.
func AlpineBuild ¶
func AlpineBuild() config.BuildConfig
AlpineBuild returns a minimal alpine-based build configuration.
func BuildWithInstructions ¶
func BuildWithInstructions(image string, instructions *config.DockerInstructions) config.BuildConfig
BuildWithInstructions returns a build config with custom instructions.
func BuildWithPackages ¶
func BuildWithPackages(image string, packages ...string) config.BuildConfig
BuildWithPackages returns a build config with the specified packages.
func DefaultAgent ¶
func DefaultAgent() config.AgentConfig
DefaultAgent returns a minimal agent configuration.
func DefaultBuild ¶
func DefaultBuild() config.BuildConfig
DefaultBuild returns a standard build configuration.
func DefaultWorkspace ¶
func DefaultWorkspace() config.WorkspaceConfig
DefaultWorkspace returns a workspace config with bind mode.
func InstructionsWithCopy ¶
func InstructionsWithCopy(copies ...config.CopyInstruction) *config.DockerInstructions
InstructionsWithCopy returns Docker instructions with copy commands.
func InstructionsWithEnv ¶
func InstructionsWithEnv(env map[string]string) *config.DockerInstructions
InstructionsWithEnv returns Docker instructions with environment variables.
func InstructionsWithRootRun ¶
func InstructionsWithRootRun(commands ...string) *config.DockerInstructions
InstructionsWithRootRun returns Docker instructions with root commands.
func InstructionsWithUserRun ¶
func InstructionsWithUserRun(commands ...string) *config.DockerInstructions
InstructionsWithUserRun returns Docker instructions with user commands.
func SecurityFirewallDisabled ¶
func SecurityFirewallDisabled() config.SecurityConfig
SecurityFirewallDisabled returns a security config with firewall disabled.
func SecurityFirewallEnabled ¶
func SecurityFirewallEnabled() config.SecurityConfig
SecurityFirewallEnabled returns a security config with firewall enabled.
func SecurityWithDockerSocket ¶
func SecurityWithDockerSocket() config.SecurityConfig
SecurityWithDockerSocket returns a security config with Docker socket access enabled.
func SecurityWithFirewallDomains ¶
func SecurityWithFirewallDomains(addDomains []string) config.SecurityConfig
SecurityWithFirewallDomains returns a security config with custom firewall domains.
func SecurityWithGitCredentials ¶
func SecurityWithGitCredentials(forwardHTTPS, forwardSSH, copyConfig bool) config.SecurityConfig
SecurityWithGitCredentials returns a security config with git credential settings.
func WorkspaceSnapshot ¶
func WorkspaceSnapshot() config.WorkspaceConfig
WorkspaceSnapshot returns a workspace config with snapshot mode.
func WorkspaceWithPath ¶
func WorkspaceWithPath(remotePath string) config.WorkspaceConfig
WorkspaceWithPath returns a workspace config with a custom remote path.
Types ¶
type ConfigBuilder ¶
type ConfigBuilder struct {
// contains filtered or unexported fields
}
ConfigBuilder provides a fluent API for constructing config.Project objects in tests. It constructs config.Project directly — no external test helpers needed.
func FullFeaturedConfig ¶
func FullFeaturedConfig() *ConfigBuilder
FullFeaturedConfig returns a ConfigBuilder with all features enabled.
func MinimalValidConfig ¶
func MinimalValidConfig() *ConfigBuilder
MinimalValidConfig returns a ConfigBuilder with the bare minimum for a valid config.
func NewConfigBuilder ¶
func NewConfigBuilder() *ConfigBuilder
NewConfigBuilder creates a new ConfigBuilder with sensible defaults.
func (*ConfigBuilder) Build ¶
func (b *ConfigBuilder) Build() *config.Project
Build returns the constructed Config as a shallow copy for immutability.
func (*ConfigBuilder) ForTestBaseImage ¶
func (b *ConfigBuilder) ForTestBaseImage() *ConfigBuilder
ForTestBaseImage modifies the build config to use a fast test base image. This swaps the image to alpine:latest and clears packages for fast builds.
func (*ConfigBuilder) WithAgent ¶
func (b *ConfigBuilder) WithAgent(agent config.AgentConfig) *ConfigBuilder
WithAgent sets the agent configuration.
func (*ConfigBuilder) WithBuild ¶
func (b *ConfigBuilder) WithBuild(build config.BuildConfig) *ConfigBuilder
WithBuild sets the build configuration.
func (*ConfigBuilder) WithDefaultImage ¶
func (b *ConfigBuilder) WithDefaultImage(image string) *ConfigBuilder
WithDefaultImage sets the build image (build.image) as the default.
func (*ConfigBuilder) WithProject ¶
func (b *ConfigBuilder) WithProject(_ string) *ConfigBuilder
WithProject is a no-op retained for backward compatibility. Project identity now comes from project.ProjectManager, not config.Project.
func (*ConfigBuilder) WithSecurity ¶
func (b *ConfigBuilder) WithSecurity(security config.SecurityConfig) *ConfigBuilder
WithSecurity sets the security configuration.
func (*ConfigBuilder) WithWorkspace ¶
func (b *ConfigBuilder) WithWorkspace(workspace config.WorkspaceConfig) *ConfigBuilder
WithWorkspace sets the workspace configuration.