common

package
v0.1.14 Latest Latest
Warning

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

Go to latest
Published: Nov 5, 2024 License: GPL-3.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckForNewVersion

func CheckForNewVersion(localVersion, remoteVersion string) string

func CheckVersionPeriodically

func CheckVersionPeriodically(c *Config) (string, error)

func DockerInit

func DockerInit(cc *ContainerEngineConfig)

func NewDockerConfig

func NewDockerConfig(cc *ContainerEngineConfig) *docker.Config

NewDockerConfig creates and returns a new Docker client configuration

func ReadUserInput

func ReadUserInput(prompt string) string

ReadUserInput reads a string input from the user with a prompt.

Types

type AdminConfig

type AdminConfig struct {
	Path string `yaml:"path"`
}

type ArchVersion

type ArchVersion struct {
	Name string `json:"name"`
}

type BuildConfig

type BuildConfig struct {
	RunEnv       string `yaml:"-"` // come from env
	BuildVersion string `yaml:"-"` // come from build ldflags
	BuildCommit  string `yaml:"-"` // come from build ldflags
	BuildDate    string `yaml:"-"` // come from build ldflags
	ProxyURL     string `yaml:"-"`
}

func (*BuildConfig) GetRunEnv

func (config *BuildConfig) GetRunEnv() string

GetRunEnv returns the run environment

type Config

type Config struct {
	General         GeneralConfig         `yaml:"General"`
	Http            HttpConfig            `yaml:"Http"`
	Admin           AdminConfig           `yaml:"Admin"`
	ContainerEngine ContainerEngineConfig `yaml:"ContainerEngine"`
	Traefik         TraefikConfig         `yaml:"Traefik"`
	Build           BuildConfig           `yaml:"-"`
}

func (*Config) GetBackendURL

func (c *Config) GetBackendURL() string

func (*Config) GetStorageDir

func (config *Config) GetStorageDir() string

get storage dir

func (*Config) GetToken

func (config *Config) GetToken() (string, error)

func (*Config) GetVersion

func (c *Config) GetVersion() string

GetVersion returns the version

func (*Config) LoadConfig

func (config *Config) LoadConfig() (*Config, error)

func (*Config) SaveConfig

func (config *Config) SaveConfig() error

func (*Config) SetToken

func (c *Config) SetToken(token string)

type ContainerEngineConfig

type ContainerEngineConfig struct {
	Sock       string `yaml:"dockersock"`
	PodmanSock string `yaml:"podmansock"`
	Podman     bool   `yaml:"podman"`
	Network    string `yaml:"network"`
}

type CurrentVersion

type CurrentVersion struct {
	Version string `json:"version"`
	// contains filtered or unexported fields
}

func GetCurrentBuildVersionInfo

func GetCurrentBuildVersionInfo(c *Config) CurrentVersion

type DeployPayload

type DeployPayload struct {
	Port         string `json:"port"`
	TargetDomain string `json:"targetdomain"`
	ImageName    string `json:"imagename"`
	ImageID      string `json:"imageid"`
	Data         io.ReadCloser
}

DeployPayload represents the payload for deployment requests

func (DeployPayload) GetType

func (p DeployPayload) GetType() string

GetType returns the type of the DeployPayload

type DeployResponse

type DeployResponse struct {
	Success       bool   `json:"success"`
	Message       string `json:"message"`
	Domain        string `json:"domain"`
	ContainerID   string `json:"container_id"`
	ContainerName string `json:"container_name"`
}

DeployResponse represents the response structure for deployment requests

type DeploymentError

type DeploymentError struct {
	StatusCode  int    `json:"status"`
	Message     string `json:"message"`
	RawResponse string `json:"raw_response"`
}

DeploymentError represents an error that occurred during deployment

func (*DeploymentError) Error

func (e *DeploymentError) Error() string

Error implements the error interface for DeploymentError

type GeneralConfig

type GeneralConfig struct {
	StorageDir string `yaml:"storageDir"`
	Token      string `yaml:"token"`
}

type HttpConfig

type HttpConfig struct {
	Port       string `yaml:"port"`
	Domain     string `yaml:"domain"`
	SubDomain  string `yaml:"subDomain"`
	BackendURL string `yaml:"backendURL"`
	Https      bool   `yaml:"https"`
}

func (*HttpConfig) FullDomain

func (c *HttpConfig) FullDomain() string

func (*HttpConfig) Protocol

func (c *HttpConfig) Protocol() string

type Payload

type Payload interface {
	GetType() string
}

Payload is an interface for different types of payloads

type PingPayload

type PingPayload struct {
	Message string `json:"message"`
}

PingPayload represents the payload for ping requests

func NewPingPayload

func NewPingPayload(data map[string]interface{}) (PingPayload, error)

NewPingPayload creates a new PingPayload from a map of data

func (PingPayload) GetType

func (p PingPayload) GetType() string

GetType returns the type of the PingPayload

type PushPayload

type PushPayload struct {
	ImageName string `json:"imagename"`
	ImageID   string `json:"imageid"`
	Data      io.ReadCloser
}

PushPayload represents the payload for push requests

func (PushPayload) GetType

func (p PushPayload) GetType() string

GetType returns the type of the PushPayload

type PushResponse

type PushResponse struct {
	Success            bool   `json:"success"`
	Message            string `json:"message"`
	CreateContainerURL string `json:"create_container_url,omitempty"`
}

PushResponse represents the response structure for push requests

type RemovePayload added in v0.1.13

type RemovePayload struct {
	ContainerID string `json:"container_id"`
}

RemovePayload represents the payload for remove requests

func (RemovePayload) GetType added in v0.1.13

func (p RemovePayload) GetType() string

GetType returns the type of the RemovePayload

type RemoveResponse added in v0.1.14

type RemoveResponse struct {
	Success bool   `json:"success"`
	Message string `json:"message"`
}

type RequestPayload

type RequestPayload struct {
	Type    string  `json:"type"`
	Payload Payload `json:"payload"`
}

RequestPayload represents the structure of incoming requests

func (*RequestPayload) UnmarshalJSON

func (p *RequestPayload) UnmarshalJSON(data []byte) error

UnmarshalJSON custom unmarshaler for RequestPayload

type StartPayload added in v0.1.13

type StartPayload struct {
	ContainerID   string `json:"container_id"`
	ContainerName string `json:"container_name"`
}

StartPayload represents the payload for start requests

func (StartPayload) GetType added in v0.1.13

func (p StartPayload) GetType() string

GetType returns the type of the StartPayload

type StartResponse added in v0.1.14

type StartResponse struct {
	Success bool   `json:"success"`
	Message string `json:"message"`
}

type StopPayload added in v0.1.13

type StopPayload struct {
	ContainerID   string `json:"container_id"`
	ContainerName string `json:"container_name"`
}

StopPayload represents the payload for stop requests

func (StopPayload) GetType added in v0.1.13

func (p StopPayload) GetType() string

GetType returns the type of the StopPayload

type StopResponse added in v0.1.14

type StopResponse struct {
	Success bool   `json:"success"`
	Message string `json:"message"`
}

type TraefikConfig

type TraefikConfig struct {
	EntryPoint       string `yaml:"entryPoint"`
	SecureEntryPoint string `yaml:"secureEntryPoint"`
	Resolver         string `yaml:"resolver"`
}

type VersionInfo

type VersionInfo struct {
	Name string `json:"name"`
}

type VersionsResponse

type VersionsResponse struct {
	AMD64 string `json:"amd64"`
	ARM64 string `json:"arm64"`
}

Jump to

Keyboard shortcuts

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