Documentation
¶
Index ¶
- Constants
- Variables
- func ConfigFilePath() string
- func ContextExists(name string) (bool, error)
- func Current() (string, error)
- func DetectComposeNetworkName(projectDir, composeProjectName string) string
- func DetectComposeProjectName(projectDir string) string
- func DetectContextComposeNetwork(ctx *Context) string
- func ExpandProjectDir(value string) (string, error)
- func GetDefaultLocalDockerSocket(dockerSocket string) string
- func GetInput(question ...string) (string, error)
- func IsDockerSocketAlive(socket string) bool
- func LooksLikeComposeProject(projectDir string) bool
- func ResolveCurrentContextName(f *pflag.FlagSet) (string, error)
- func Save(cfg *Config) error
- func SaveContext(ctx *Context, setDefault bool) error
- func SetCommandFlags(flags *pflag.FlagSet)
- func ValidateExistingComposeProjectDir(projectDir string) error
- type Config
- type Context
- func CurrentContext(f *pflag.FlagSet) (*Context, error)
- func DiscoverCurrentContext() (*Context, error)
- func FindLocalContextByProjectDir(projectDir string) (*Context, error)
- func GetContext(name string) (Context, error)
- func LoadFromFlags(f *pflag.FlagSet, context Context) (*Context, error)
- func PromptAndSaveLocalContext(opts LocalContextCreateOptions) (*Context, error)
- func (c *Context) DialSSH() (*ssh.Client, error)
- func (c Context) EffectiveComposeNetwork() string
- func (c Context) EffectiveComposeProjectName() string
- func (c Context) EnsureTrackedComposeOverrideSymlink() error
- func (c *Context) FileExists(path string) (bool, error)
- func (c *Context) GetSshUri() string
- func (c *Context) HasComposeProject() (bool, error)
- func (c *Context) ListFiles(root string) ([]string, error)
- func (c Context) OverrideEnvironment() string
- func (c *Context) ProjectDirExists() (bool, error)
- func (c *Context) ReadFile(filename string) ([]byte, error)
- func (c *Context) ReadSmallFile(filename string) string
- func (c *Context) RemoveFile(filename string) error
- func (c *Context) ResolveProjectPath(path string) string
- func (c *Context) RunCommand(cmd *exec.Cmd) (string, error)
- func (c *Context) RunQuietCommand(cmd *exec.Cmd) (string, error)
- func (c Context) RuntimeComposeOverridePath() string
- func (context Context) String() (string, error)
- func (c Context) TrackedComposeOverrideName() string
- func (c Context) TrackedComposeOverridePath() string
- func (c *Context) UploadFile(source, destination string) error
- func (c *Context) ValidateComposeAccess() error
- func (c Context) ValidateTrackedComposeOverrideSymlink() error
- func (cc *Context) VerifyRemoteInput(existingSite bool) error
- func (c *Context) WriteFile(filename string, data []byte) error
- type ContextType
- type FileReader
- type InputFunc
- type LocalContextCreateOptions
Constants ¶
View Source
const RuntimeComposeOverrideName = "docker-compose.override.yml"
Variables ¶
View Source
var ErrContextNotFound = errors.New("context not found")
Functions ¶
func ConfigFilePath ¶
func ConfigFilePath() string
func ContextExists ¶
func DetectComposeNetworkName ¶ added in v0.10.0
func DetectComposeProjectName ¶ added in v0.10.0
func DetectContextComposeNetwork ¶ added in v0.10.0
func ExpandProjectDir ¶ added in v0.10.0
func GetDefaultLocalDockerSocket ¶
for local contexts, try a bunch of common paths grab the docker socket this is mostly needed for Mac OS
func IsDockerSocketAlive ¶ added in v0.9.0
func LooksLikeComposeProject ¶ added in v0.9.0
func ResolveCurrentContextName ¶ added in v0.9.0
func SaveContext ¶
func SetCommandFlags ¶
func ValidateExistingComposeProjectDir ¶ added in v0.9.0
Types ¶
type Config ¶
type Context ¶
type Context struct {
Name string `yaml:"name"`
Site string `yaml:"site"`
Plugin string `yaml:"plugin"`
DockerHostType ContextType `mapstructure:"type" yaml:"type"`
Environment string `yaml:"environment,omitempty"`
DockerSocket string `yaml:"docker-socket"`
ProjectName string `yaml:"project-name"`
ComposeProjectName string `yaml:"compose-project-name,omitempty"`
ComposeNetwork string `yaml:"compose-network,omitempty"`
ProjectDir string `yaml:"project-dir"`
SSHUser string `yaml:"ssh-user"`
SSHHostname string `yaml:"ssh-hostname,omitempty"`
SSHPort uint `yaml:"ssh-port,omitempty"`
SSHKeyPath string `yaml:"ssh-key,omitempty"`
EnvFile []string `yaml:"env-file"`
ComposeFile []string `yaml:"compose-file,omitempty"`
RunSudo bool `yaml:"sudo"`
// Database connection configuration
DatabaseService string `yaml:"database-service,omitempty"`
DatabaseUser string `yaml:"database-user,omitempty"`
DatabasePasswordSecret string `yaml:"database-password-secret,omitempty"`
DatabaseName string `yaml:"database-name,omitempty"`
ReadSmallFileFunc func(filename string) string `yaml:"-"`
// Extra holds plugin-specific configuration.
// Each plugin uses its own key (e.g., "drupal", "isle", "wordpress").
Extra map[string]yaml.Node `yaml:"extra,omitempty"`
}
func DiscoverCurrentContext ¶ added in v0.9.0
func FindLocalContextByProjectDir ¶ added in v0.9.0
func GetContext ¶
func PromptAndSaveLocalContext ¶ added in v0.5.0
func PromptAndSaveLocalContext(opts LocalContextCreateOptions) (*Context, error)
func (Context) EffectiveComposeNetwork ¶ added in v0.10.0
func (Context) EffectiveComposeProjectName ¶ added in v0.10.0
func (Context) EnsureTrackedComposeOverrideSymlink ¶ added in v0.9.0
func (*Context) FileExists ¶ added in v0.9.0
func (*Context) HasComposeProject ¶ added in v0.9.0
func (*Context) ListFiles ¶ added in v0.5.0
ListFiles lists files under a directory relative to the directory root.
func (Context) OverrideEnvironment ¶ added in v0.9.0
func (*Context) ProjectDirExists ¶
func (*Context) ReadFile ¶ added in v0.5.0
ReadFile reads a file from the context, supporting local and remote paths.
func (*Context) ReadSmallFile ¶
func (*Context) RemoveFile ¶ added in v0.5.0
RemoveFile removes a file from the context.
func (*Context) ResolveProjectPath ¶ added in v0.9.0
func (*Context) RunQuietCommand ¶ added in v0.9.0
func (Context) RuntimeComposeOverridePath ¶ added in v0.9.0
func (Context) TrackedComposeOverrideName ¶ added in v0.9.0
func (Context) TrackedComposeOverridePath ¶ added in v0.9.0
func (*Context) UploadFile ¶
func (*Context) ValidateComposeAccess ¶ added in v0.9.0
func (Context) ValidateTrackedComposeOverrideSymlink ¶ added in v0.9.0
func (*Context) VerifyRemoteInput ¶
type ContextType ¶
type ContextType string
const ( ContextLocal ContextType = "local" ContextRemote ContextType = "remote" )
type FileReader ¶
FileReader defines the behavior needed to read small files.
type LocalContextCreateOptions ¶ added in v0.5.0
type LocalContextCreateOptions struct {
Name string
DefaultName string
Site string
DefaultSite string
Plugin string
DefaultPlugin string
ProjectDir string
DefaultProjectDir string
ProjectName string
DefaultProjectName string
ComposeProjectName string
ComposeNetwork string
Environment string
DockerSocket string
SetDefault bool
ConfirmOverwrite bool
Input InputFunc
ProjectDirValidator func(string) error
ContextNamePrompt []string
ProjectDirPrompt []string
OverwritePrompt []string
}
Click to show internal directories.
Click to hide internal directories.