builders

package
v0.2.2 Latest Latest
Warning

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

Go to latest
Published: Feb 23, 2026 License: MIT Imports: 1 Imported by: 0

Documentation

Overview

Package builders provides shared test utilities for clawker tests.

Index

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.

Jump to

Keyboard shortcuts

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