Documentation
¶
Index ¶
- func BuildEnv(base []string, projectEnv map[string]string, runInfo *run.Info) []string
- func GetEnv(env []string, key string) (string, bool)
- func Run(ctx context.Context, root string, name string, enabled EnabledSelector, ...) error
- func RunNoSync(root string, name string, enabled EnabledSelector, launch LaunchFunc, ...) error
- func RunWithStderr(ctx context.Context, root string, name string, enabled EnabledSelector, ...) error
- func SetEnv(env []string, key string, value string) []string
- func UnsetEnv(env []string, key string) []string
- type EnabledSelector
- type LaunchFunc
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildEnv ¶
BuildEnv merges base env with project env and run metadata. It strips AL_SHIM_ACTIVE from the environment because child processes are new execution contexts that should be free to dispatch independently. The dispatch guard is only meaningful for the exec replacement chain, not for spawned subprocesses.
func Run ¶
func Run(ctx context.Context, root string, name string, enabled EnabledSelector, launch LaunchFunc, args []string, currentVersion string) error
Run performs the standard client launch pipeline: load config, sync, create run dir, launch. Warnings from sync are printed to stderr before launching.
func RunNoSync ¶ added in v0.5.8
func RunNoSync(root string, name string, enabled EnabledSelector, launch LaunchFunc, args []string) error
RunNoSync performs the standard client launch pipeline without running sync.
func RunWithStderr ¶
func RunWithStderr(ctx context.Context, root string, name string, enabled EnabledSelector, launch LaunchFunc, args []string, currentVersion string, stderr io.Writer) error
RunWithStderr is like Run but allows specifying a custom stderr writer for testing.
Types ¶
type EnabledSelector ¶
EnabledSelector returns the enabled flag for a client.
type LaunchFunc ¶
type LaunchFunc func(project *config.ProjectConfig, runInfo *run.Info, env []string, args []string) error
LaunchFunc launches a client after sync and run setup.