Versions in this module Expand all Collapse all v0 v0.1.1 Apr 19, 2026 v0.1.0 Apr 19, 2026 Changes in this version + const DEVCONTAINER_FEATURE_FILE_NAME + const DevsyContextFeatureFolder + const DevsyDockerlessBuildInfoFolder + const DockerIDLabel + const DockerfileDefaultTarget + const UserLabel + var VariableRegExp = regexp.MustCompile(`\${(.*?)}`) + func AddConfigToImageMetadata(config *DevContainerConfig, imageMetadataConfig *ImageMetadataConfig) + func CalculatePrebuildHash(params PrebuildHashParams) (string, error) + func Convert(from any, to any) error + func GetContextPath(parsedConfig *DevContainerConfig) string + func GetDevContainerID(labels map[string]string) string + func GetDockerLabelForID(id string) []string + func GetRemoteUser(result *Result) string + func ListDevContainerIDs(folder string) ([]string, error) + func ListToObject(list []string) map[string]string + func ObjectToList(object map[string]string) []string + func ParseKeyValueFile(filename string) ([]string, error) + func PrepareCmdUser(cmd *exec.Cmd, userName string) error + func ProbeUserEnv(ctx context.Context, probe string, userName string, log log.Logger) (map[string]string, error) + func ResolveString(val string, replace ReplaceFunction) string + func ReverseSlice[T comparable](s []T) []T + func SaveDevContainerJSON(config *DevContainerConfig) error + func Substitute(substitutionCtx *SubstitutionContext, config any, out any) error + func SubstituteContainerEnv(containerEnv map[string]string, config any, out any) error + type BuildInfo struct + Dockerless *BuildInfoDockerless + ImageDetails *ImageDetails + ImageMetadata *ImageMetadataConfig + ImageName string + PrebuildHash string + RegistryCache string + Tags []string + type BuildInfoDockerless struct + BuildArgs map[string]string + Context string + Dockerfile string + Target string + User string + type ComposeContainer struct + DockerComposeFile types.StrArray + RunServices []string + Service string + type ConfigBuildOptions struct + Args map[string]string + CacheFrom types.StrArray + Context string + Dockerfile string + Options []string + Target string + type ContainerDetails struct + Config ContainerDetailsConfig + Created string + ID string + State ContainerDetailsState + type ContainerDetailsConfig struct + Labels map[string]string + LegacyImage string + User string + WorkingDir string + type ContainerDetailsState struct + StartedAt string + Status string + type DependsOnField map[string]any + func (d *DependsOnField) UnmarshalJSON(data []byte) error + type DevContainerActions struct + Customizations map[string]any + OnCreateCommand types.LifecycleHook + PostAttachCommand types.LifecycleHook + PostCreateCommand types.LifecycleHook + PostStartCommand types.LifecycleHook + UpdateContentCommand types.LifecycleHook + type DevContainerConfig struct + Origin string + func CloneDevContainerConfig(config *DevContainerConfig) *DevContainerConfig + func ParseDevContainerJSON(folder, relativePath string) (*DevContainerConfig, error) + func ParseDevContainerJSONFile(jsonFilePath string) (*DevContainerConfig, error) + func ParseDevContainerJSONWithSelector(folder, relativePath string, selector func([]string) (string, error)) (*DevContainerConfig, error) + type DevContainerConfigBase struct + DevPort int + Extensions []string + Features map[string]any + ForwardPorts types.StrIntArray + HostRequirements *HostRequirements + InitializeCommand types.LifecycleHook + Name string + OtherPortsAttributes *PortAttribute + OverrideCommand *bool + OverrideFeatureInstallOrder []string + PortsAttributes map[string]PortAttribute + RemoteEnv map[string]string + RemoteUser string + Settings map[string]any + ShutdownAction string + UpdateRemoteUserUID *bool + UserEnvProbe string + WaitFor string + WorkspaceFolder string + type DevContainerConfigWithPath struct + Config *DevContainerConfig + Path string + type DevsyCustomizations struct + FeatureDownloadHTTPHeaders map[string]string + PrebuildRepository types.StrArray + func GetDevsyCustomizations(parsedConfig *DevContainerConfig) *DevsyCustomizations + type DockerfileContainer struct + Build *ConfigBuildOptions + Context string + Dockerfile string + func (d DockerfileContainer) GetArgs() map[string]string + func (d DockerfileContainer) GetCacheFrom() types.StrArray + func (d DockerfileContainer) GetContext() string + func (d DockerfileContainer) GetDockerfile() string + func (d DockerfileContainer) GetOptions() []string + func (d DockerfileContainer) GetTarget() string + type FeatureConfig struct + CapAdd []string + ContainerEnv map[string]string + DependsOn DependsOnField + Deprecated bool + Description string + DocumentationURL string + Entrypoint string + ID string + Init *bool + InstallsAfter []string + LegacyIds []string + LicenseURL string + Mounts []*Mount + Name string + Options map[string]FeatureConfigOption + Origin string + Privileged *bool + SecurityOpt []string + Version string + func ParseDevContainerFeature(folder string) (*FeatureConfig, error) + type FeatureConfigOption struct + Default types.StrBool + Description string + Enum []string + Proposals []string + Type string + type FeatureSet struct + Config *FeatureConfig + ConfigID string + Folder string + Options any + type HostRequirements struct + CPUs int + GPU types.StrBool + Memory string + Storage string + func (h *HostRequirements) ShouldEnableGPU(gpuAvailable bool) (enable bool, warnIfMissing bool) + type ImageBuildInfo struct + Dockerfile *dockerfile.Dockerfile + ImageDetails *ImageDetails + Metadata *ImageMetadataConfig + User string + type ImageContainer struct + Image string + type ImageDetails struct + Config ImageDetailsConfig + ID string + type ImageDetailsConfig struct + Cmd []string + Entrypoint []string + Env []string + Labels map[string]string + User string + type ImageMetadata struct + Entrypoint string + ID string + type ImageMetadataConfig struct + Config []*ImageMetadata + Raw []*ImageMetadata + type JetBrainsCustomizations struct + Plugins []string + func GetJetBrainsConfiguration(mergedConfig *MergedDevContainerConfig) *JetBrainsCustomizations + type MergedDevContainerConfig struct + Origin string + func MergeConfiguration(config *DevContainerConfig, imageMetadataEntries []*ImageMetadata) (*MergedDevContainerConfig, error) + type Mount struct + External bool + Other []string + Source string + Target string + Type string + func GetMounts(result *Result) []*Mount + func ParseMount(str string) Mount + func (m *Mount) String() string + func (m *Mount) UnmarshalJSON(data []byte) error + type NonComposeBase struct + AppPort types.StrIntArray + CapAdd []string + ContainerEnv map[string]string + ContainerUser string + Init *bool + Mounts []*Mount + Privileged *bool + RunArgs []string + SecurityOpt []string + WorkspaceMount string + type PortAttribute struct + ElevateIfNeeded bool + Label string + OnAutoForward string + Protocol string + RequireLocalPort bool + type PrebuildHashParams struct + Architecture string + BuildInfo *ImageBuildInfo + Config *DevContainerConfig + ContextPath string + DockerfileContent string + DockerfilePath string + Log log.Logger + Platform string + type ReplaceFunction func(match, variable string, args []string) string + type Result struct + ContainerDetails *ContainerDetails + DevContainerConfigWithPath *DevContainerConfigWithPath + MergedConfig *MergedDevContainerConfig + SubstitutionContext *SubstitutionContext + type RunningContainer struct + ContainerID string + type SubstitutedConfig struct + Config *DevContainerConfig + Raw *DevContainerConfig + type SubstitutionContext struct + ContainerWorkspaceFolder string + DevContainerID string + Env map[string]string + GidMap []string + LocalWorkspaceFolder string + UidMap []string + Userns string + WorkspaceMount string + type UpdatedConfigProperties struct + Customizations map[string][]any + Entrypoints []string + OnCreateCommands []types.LifecycleHook + PostAttachCommands []types.LifecycleHook + PostCreateCommands []types.LifecycleHook + PostStartCommands []types.LifecycleHook + UpdateContentCommands []types.LifecycleHook + type UserEnvProbe string + const DefaultUserEnvProbe + const InteractiveShellProbe + const LoginInteractiveShellProbe + const LoginShellProbe + const NoneProbe + func NewUserEnvProbe(probe string) (UserEnvProbe, error) + type VSCodeCustomizations struct + DevPort int + Extensions []string + Settings map[string]any + func GetVSCodeConfiguration(mergedConfig *MergedDevContainerConfig) *VSCodeCustomizations