Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Container ¶
type Container struct {
// common
Name string `yaml:"name,omitempty"`
Image string `yaml:"image,omitempty"`
Pull bool `yaml:"pull,omitempty"`
Commands base.StringOrSlice `yaml:"commands,omitempty"`
Entrypoint base.StringOrSlice `yaml:"entrypoint,omitempty"`
Directory string `yaml:"directory,omitempty"`
Settings map[string]any `yaml:"settings"`
// flow control
DependsOn base.StringOrSlice `yaml:"depends_on,omitempty"`
When constraint.When `yaml:"when,omitempty"`
Failure string `yaml:"failure,omitempty"`
Detached bool `yaml:"detach,omitempty"`
// state
Volumes Volumes `yaml:"volumes,omitempty"`
// network
Ports []string `yaml:"ports,omitempty"`
DNS base.StringOrSlice `yaml:"dns,omitempty"`
DNSSearch base.StringOrSlice `yaml:"dns_search,omitempty"`
// backend specific
BackendOptions map[string]any `yaml:"backend_options,omitempty"`
// TODO: remove base.EnvironmentMap and use map[string]any after v3.0.0 release
Environment base.EnvironmentMap `yaml:"environment,omitempty"`
// Remove after v3.1.0
Secrets []any `yaml:"secrets,omitempty"`
// Docker and Kubernetes Specific
Privileged bool `yaml:"privileged,omitempty"`
// Undocumented
Devices []string `yaml:"devices,omitempty"`
ExtraHosts []string `yaml:"extra_hosts,omitempty"`
NetworkMode string `yaml:"network_mode,omitempty"`
Tmpfs []string `yaml:"tmpfs,omitempty"`
}
Container defines a container.
func (*Container) IsTrustedCloneImage ¶
type ContainerList ¶
type ContainerList struct {
ContainerList []*Container
}
ContainerList denotes an ordered collection of containers.
func (*ContainerList) UnmarshalYAML ¶
func (c *ContainerList) UnmarshalYAML(value *yaml.Node) error
UnmarshalYAML implements the Unmarshaler interface.
type Network ¶
type Network struct {
Name string `yaml:"-"`
Aliases []string `yaml:"aliases,omitempty"`
IPv4Address string `yaml:"ipv4_address,omitempty"`
IPv6Address string `yaml:"ipv6_address,omitempty"`
}
Network represents a service network in compose file.
type Networks ¶
type Networks struct {
Networks []*Network
}
Networks represents a list of service networks in compose file. It has several representation, hence this specific struct.
func (Networks) MarshalYAML ¶
MarshalYAML implements the Marshaller interface.
type Volume ¶
type Volume struct {
Source string `yaml:"-"`
Destination string `yaml:"-"`
AccessMode string `yaml:"-"`
}
Volume represent a service volume.
type Volumes ¶
type Volumes struct {
Volumes []*Volume
}
Volumes represents a list of service volumes in compose file. It has several representation, hence this specific struct.
func (Volumes) MarshalYAML ¶
MarshalYAML implements the Marshaller interface.
type Workflow ¶
type Workflow struct {
When constraint.When `yaml:"when,omitempty"`
Workspace Workspace `yaml:"workspace,omitempty"`
Clone ContainerList `yaml:"clone,omitempty"`
Steps ContainerList `yaml:"steps,omitempty"`
Services ContainerList `yaml:"services,omitempty"`
Labels map[string]string `yaml:"labels,omitempty"`
DependsOn []string `yaml:"depends_on,omitempty"`
RunsOn []string `yaml:"runs_on,omitempty"`
SkipClone bool `yaml:"skip_clone"`
}
Workflow defines a workflow configuration.
Click to show internal directories.
Click to hide internal directories.