devcontainer

package
v0.49.0 Latest Latest
Warning

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

Go to latest
Published: Dec 13, 2024 License: Apache-2.0 Imports: 0 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Command added in v0.33.0

type Command interface{}

type ConfigFilePath

type ConfigFilePath struct {
	Mid    int    `json:"$mid"`
	FsPath string `json:"fsPath"`
	Path   string `json:"path"`
	Scheme string `json:"scheme"`
}

type Configuration

type Configuration struct {
	Name                 string                 `json:"name"`
	DockerFile           string                 `json:"dockerFile"`
	RunArgs              []string               `json:"runArgs"`
	InitializeCommand    Command                `json:"initializeCommand"`
	OnCreateCommand      Command                `json:"onCreateCommand"`
	UpdateContentCommand Command                `json:"updateContentCommand"`
	PostCreateCommand    Command                `json:"postCreateCommand"`
	PostStartCommand     Command                `json:"postStartCommand"`
	PostAttachCommand    Command                `json:"postAttachCommand"`
	WaitFor              WaitFor                `json:"waitFor"`
	RemoteUser           string                 `json:"remoteUser"`
	Features             map[string]interface{} `json:"features"`
	ForwardPorts         []int                  `json:"forwardPorts"`
	Customizations       map[string]interface{} `json:"customizations"`
	ConfigFilePath       ConfigFilePath         `json:"configFilePath"`
}

func (*Configuration) GetCustomizations

func (c *Configuration) GetCustomizations(tool Tool) *Customizations

type Customizations

type Customizations struct {
	Extensions []string               `json:"extensions"`
	Settings   map[string]interface{} `json:"settings"`
}

func MergeCustomizations

func MergeCustomizations(customizations []Customizations) *Customizations

type DevcontainerUpResult added in v0.23.0

type DevcontainerUpResult struct {
	Outcome               string `json:"outcome"`
	ContainerId           string `json:"containerId"`
	RemoteUser            string `json:"remoteUser"`
	RemoteWorkspaceFolder string `json:"remoteWorkspaceFolder"`
}

type Feature

type Feature struct {
	Id               string                 `json:"id"`
	Version          string                 `json:"version"`
	Name             string                 `json:"name"`
	DocumentationURL string                 `json:"documentationURL"`
	Description      string                 `json:"description"`
	Options          map[string]interface{} `json:"options"`
	LicenceURL       string                 `json:"licenceURL"`
	Keywords         string                 `json:"keywords"`
	Entrypoint       string                 `json:"entrypoint"`
	Privileged       bool                   `json:"privileged"`
	ContainerEnv     map[string]string      `json:"containerEnv"`
	Customizations   map[string]interface{} `json:"customizations"`
	Mounts           []Mount                `json:"mounts"`
	InstallsAfter    []string               `json:"installsAfter"`
	Included         bool                   `json:"included"`
	Value            string                 `json:"value"`
	CachePath        string                 `json:"cachePath"`
	ConsecutiveId    string                 `json:"consecutiveId"`
	Init             bool                   `json:"init"`
	CapAdd           []string               `json:"capAdd"`
	SecurityOpt      []string               `json:"securityOpt"`
	LegacyIds        []string               `json:"legacyIds"`
	Deprecated       bool                   `json:"deprecated"`
}

type FeatureRef

type FeatureRef struct {
	Id        string `json:"id"`
	Owner     string `json:"owner"`
	Namespace string `json:"namespace"`
	Registry  string `json:"registry"`
	Resource  string `json:"resource"`
	Path      string `json:"path"`
	Version   string `json:"version"`
	Tag       string `json:"tag"`
}

type MergedConfiguration

type MergedConfiguration struct {
	Name            string                    `json:"name"`
	DockerFile      string                    `json:"dockerFile"`
	RunArgs         []string                  `json:"runArgs"`
	RemoteUser      string                    `json:"remoteUser"`
	Features        map[string]interface{}    `json:"features"`
	ForwardPorts    []int                     `json:"forwardPorts"`
	ConfigFilePath  ConfigFilePath            `json:"configFilePath"`
	Init            bool                      `json:"init"`
	Privileged      bool                      `json:"privileged"`
	Entrypoints     []string                  `json:"entrypoints"`
	Mounts          []Mount                   `json:"mounts"`
	RemoteEnv       map[string]string         `json:"remoteEnv"`
	ContainerEnv    map[string]string         `json:"containerEnv"`
	PortsAttributes map[string]PortAttributes `json:"portsAttributes"`

	// Commands
	InitializeCommand    Command `json:"initializeCommand"`
	OnCreateCommand      Command `json:"onCreateCommand"`
	UpdateContentCommand Command `json:"updateContentCommand"`
	PostCreateCommand    Command `json:"postCreateCommand"`
	PostStartCommand     Command `json:"postStartCommand"`
	PostAttachCommand    Command `json:"postAttachCommand"`
}

type Mount

type Mount struct {
	Source string `json:"source"`
	Target string `json:"target"`
	Type   string `json:"type"`
}

type PortAttributes

type PortAttributes struct {
	Label            *string
	OnAutoForward    *string
	Protocol         *string
	RequireLocalPort *bool
	ElevateIfNeeded  *bool
}

type Root

type Root struct {
	// FeaturesConfiguration FeaturesConfiguration `json:"featuresConfiguration"`
	Configuration       Configuration       `json:"configuration"`
	Workspace           Workspace           `json:"workspace"`
	MergedConfiguration MergedConfiguration `json:"mergedConfiguration"`
}

type Tool

type Tool string
var (
	Vscode     Tool = "vscode"
	Browser    Tool = "browser"
	Codespaces Tool = "codespaces"
)

type WaitFor added in v0.33.0

type WaitFor string
const (
	WaitForOnCreateCommand      WaitFor = "onCreateCommand"
	WaitForPostCreateCommand    WaitFor = "postCreateCommand"
	WaitForPostStartCommand     WaitFor = "postStartCommand"
	WaitForInitializeCommand    WaitFor = "initializeCommand"
	WaitForUpdateContentCommand WaitFor = "updateContentCommand"
)

type Workspace

type Workspace struct {
	WorkspaceFolder string `json:"workspaceFolder"`
	WorkspaceMount  string `json:"workspaceMount"`
}

Jump to

Keyboard shortcuts

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