package convert

import "github.com/docker/cli/cli/compose/convert"

Index

Constants

const (

	// LabelImage is the label used to store image name provided in the compose file
	LabelImage = "com.docker.stack.image"
)
const (
	// LabelNamespace is the label used to track stack resources
	LabelNamespace = "com.docker.stack.namespace"
)

Functions

func AddStackLabel

func AddStackLabel(namespace Namespace, labels map[string]string) map[string]string

AddStackLabel returns labels with the namespace label added

func Configs

func Configs(namespace Namespace, configs map[string]composetypes.ConfigObjConfig) ([]swarm.ConfigSpec, error)

Configs converts config objects from the Compose type to the engine API type

func Networks

func Networks(namespace Namespace, networks networkMap, servicesNetworks map[string]struct{}) (map[string]network.CreateOptions, []string)

Networks from the compose-file type to the engine API type

func Secrets

func Secrets(namespace Namespace, secrets map[string]composetypes.SecretConfig) ([]swarm.SecretSpec, error)

Secrets converts secrets from the Compose type to the engine API type

func Service

func Service(
	apiVersion string,
	namespace Namespace,
	service composetypes.ServiceConfig,
	networkConfigs map[string]composetypes.NetworkConfig,
	volumes map[string]composetypes.VolumeConfig,
	secrets []*swarm.SecretReference,
	configs []*swarm.ConfigReference,
) (swarm.ServiceSpec, error)

Service converts a ServiceConfig into a swarm ServiceSpec

func Services

func Services(
	ctx context.Context,
	namespace Namespace,
	config *composetypes.Config,
	apiClient client.APIClient,
) (map[string]swarm.ServiceSpec, error)

Services from compose-file types to engine API types

func Volumes

func Volumes(serviceVolumes []composetypes.ServiceVolumeConfig, stackVolumes volumes, namespace Namespace) ([]mount.Mount, error)

Volumes from compose-file types to engine api types

Types

type Namespace

type Namespace struct {
	// contains filtered or unexported fields
}

Namespace mangles names by prepending the name

func NewNamespace

func NewNamespace(name string) Namespace

NewNamespace returns a new Namespace for scoping of names

func (Namespace) Descope

func (n Namespace) Descope(name string) string

Descope returns the name without the namespace prefix

func (Namespace) Name

func (n Namespace) Name() string

Name returns the name of the namespace

func (Namespace) Scope

func (n Namespace) Scope(name string) string

Scope prepends the namespace to a name

Source Files

compose.go service.go volume.go

Version
v28.0.1+incompatible
Published
Feb 25, 2025
Platform
windows/amd64
Imports
15 packages
Last checked
12 hours ago

Tools for package owners.