Documentation ¶
Index ¶
- type AMQPConfig
- type AMQPProtocol
- type FirewallConfig
- type HAProxyConfig
- type ImageRegistryConfig
- type LetsEncryptConfig
- type PersistentVolumeBackupConfig
- type PubSubConfig
- type PubSubMode
- type RedisConfig
- type RemoteTaskQueueType
- type S3BackupConfig
- type SystemConfig
- type TaskQueueConfig
- type TaskQueueMode
- type UDPProxyConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AMQPConfig ¶
type AMQPConfig struct { Protocol AMQPProtocol `json:"protocol"` Host string `json:"host"` Port uint `json:"port"` User string `json:"user"` Password string `json:"password"` VHost string `json:"vhost"` }
AMQPConfig : configuration for AMQP
func (AMQPConfig) URI ¶
func (a AMQPConfig) URI() string
type AMQPProtocol ¶
type AMQPProtocol string
AMQPProtocol : protocol for AMQP
const ( AMQP AMQPProtocol = "amqp" AMQPS AMQPProtocol = "amqps" )
type FirewallConfig ¶
type FirewallConfig struct { Enabled bool `json:"enabled" gorm:"default:false"` AllowPortCommand string `json:"allow_port_command"` // can contain {{port}} as placeholder DenyPortCommand string `json:"deny_port_command"` // can contain {{port}} as placeholder }
FirewallConfig : hold information about firewall configuration
type HAProxyConfig ¶
type HAProxyConfig struct { Image string `json:"image"` Username string `json:"username"` Password string `json:"password"` }
HAProxyConfig : configuration for HAProxy
type ImageRegistryConfig ¶
type ImageRegistryConfig struct { Endpoint string `json:"endpoint"` Username string `json:"username"` Password string `json:"password"` Namespace string `json:"namespace"` }
ImageRegistryConfig : configuration for image registry
func (ImageRegistryConfig) IsConfigured ¶
func (r ImageRegistryConfig) IsConfigured() bool
func (ImageRegistryConfig) URI ¶
func (r ImageRegistryConfig) URI() string
type LetsEncryptConfig ¶
type LetsEncryptConfig struct { ID uint `json:"id" gorm:"primaryKey"` Staging bool `json:"staging" gorm:"default:false"` EmailID string `json:"email_id"` PrivateKey string `json:"private_key"` }
LetsEncryptConfig : hold information about lets encrypt configuration
type PersistentVolumeBackupConfig ¶
type PersistentVolumeBackupConfig struct {
S3BackupConfig S3BackupConfig `json:"s3_backup_config" gorm:"embedded;embeddedPrefix:s3_backup_"`
}
PersistentVolumeBackupConfig : configuration for persistent volume backup
type PubSubConfig ¶
type PubSubConfig struct { Mode PubSubMode `json:"mode" gorm:"default:'local'"` BufferLength uint `json:"buffer_length" gorm:"default:2000"` RedisConfig RedisConfig `json:"redis_config" gorm:"embedded;embeddedPrefix:redis_"` }
PubSubConfig : configuration for pub-sub system
type PubSubMode ¶
type PubSubMode string
PubSubMode : mode of the pub-sub system
const ( LocalPubSub PubSubMode = "local" RemotePubSub PubSubMode = "remote" )
type RedisConfig ¶
type RedisConfig struct { Host string `json:"host"` Port uint `json:"port"` Password string `json:"password"` DatabaseID uint `json:"database_id"` }
RedisConfig : configuration for Redis
type RemoteTaskQueueType ¶
type RemoteTaskQueueType string
const ( AmqpQueue RemoteTaskQueueType = "amqp" RedisQueue RemoteTaskQueueType = "redis" NoneRemoteQueue RemoteTaskQueueType = "none" )
type S3BackupConfig ¶
type S3BackupConfig struct { Enabled bool `json:"enabled"` Endpoint string `json:"endpoint"` Region string `json:"region"` Bucket string `json:"bucket"` AccessKeyID string `json:"access_key_id"` SecretAccessKey string `json:"secret_access_key"` ForcePathStyle bool `json:"force_path_style"` }
S3BackupConfig : configuration for S3 backup
type SystemConfig ¶
type SystemConfig struct { ID uint `json:"id" gorm:"primaryKey"` ConfigVersion uint `json:"config_version" gorm:"default:1"` NetworkName string `json:"network_name"` RestrictedPorts pq.Int64Array `json:"restricted_ports" gorm:"type:integer[]"` JWTSecretKey string `json:"jwt_secret_key"` SshPrivateKey string `json:"ssh_private_key"` LetsEncryptConfig LetsEncryptConfig `json:"lets_encrypt_config" gorm:"embedded;embeddedPrefix:lets_encrypt_config_"` HAProxyConfig HAProxyConfig `json:"haproxy_config" gorm:"embedded;embeddedPrefix:haproxy_config_"` UDPProxyConfig UDPProxyConfig `json:"udp_proxy_config" gorm:"embedded;embeddedPrefix:udp_proxy_config_"` PersistentVolumeBackupConfig PersistentVolumeBackupConfig `json:"persistent_volume_backup_config" gorm:"embedded;embeddedPrefix:persistent_volume_backup_config_"` PubSubConfig PubSubConfig `json:"pub_sub_config" gorm:"embedded;embeddedPrefix:pub_sub_config_"` TaskQueueConfig TaskQueueConfig `json:"task_queue_config" gorm:"embedded;embeddedPrefix:task_queue_config_"` ImageRegistryConfig ImageRegistryConfig `json:"image_registry_config" gorm:"embedded;embeddedPrefix:image_registry_config_"` }
SystemConfig : hold information about system configuration
func (*SystemConfig) PublicSSHKey ¶
func (config *SystemConfig) PublicSSHKey() (string, error)
type TaskQueueConfig ¶
type TaskQueueConfig struct { Mode TaskQueueMode `json:"mode" gorm:"default:'local'"` RemoteTaskQueueType RemoteTaskQueueType `json:"remote_task_queue_type" gorm:"default:'none'"` MaxOutstandingMessagesPerQueue uint `json:"max_outstanding_messages_per_queue" gorm:"default:2"` NoOfWorkersPerQueue uint `json:"no_of_workers_per_queue"` AMQPConfig AMQPConfig `json:"amqp_config" gorm:"embedded;embeddedPrefix:amqp_"` RedisConfig RedisConfig `json:"redis_config" gorm:"embedded;embeddedPrefix:redis_"` }
TaskQueueConfig : configuration for task queue system
type TaskQueueMode ¶
type TaskQueueMode string
TaskQueueMode : mode of the task queue system
const ( LocalTaskQueue TaskQueueMode = "local" RemoteTaskQueue TaskQueueMode = "remote" )
type UDPProxyConfig ¶
type UDPProxyConfig struct {
Image string `json:"image"`
}
UDPProxyConfig : configuration for UDP Proxy