Documentation
¶
Index ¶
- Constants
- func AdcmFamilyService(appType string) bool
- func ChownContainer(prj *composeTypes.Project, svc composeTypes.ServiceConfig, recursive bool) string
- func InitContainer(prj *composeTypes.Project, svc composeTypes.ServiceConfig) string
- func LatestReleasedTag(image string) (string, error)
- func PauseContainer(prj *composeTypes.Project)
- func RegistryVersions(image string) ([]semver.Version, error)
- type AdcmConfig
- type AdpgConfig
- type ConsulConfig
- type InitConfig
- type Project
- type ProjectOption
- func WithAdcmCount(n uint8) ProjectOption
- func WithAdcmWorkerCount(n uint8) ProjectOption
- func WithAdpg(b bool) ProjectOption
- func WithConfigFile(file string) ProjectOption
- func WithConsul(b bool) ProjectOption
- func WithCrypt(crypt secrets.Secrets) ProjectOption
- func WithInteractive(b bool) ProjectOption
- func WithVault(b bool) ProjectOption
- type VaultBackend
- type VaultBackendPostgresql
- type VaultConfig
- type VaultConfigFile
- type VaultStorage
- type XSecrets
Constants ¶
View Source
const ( ADCMImage = "hub.arenadata.io/adcm/adcm" ADCMTag = "3.0.0" ADCMPublishPort uint16 = 8000 ADCMPublishSSLPort uint16 = 8443 ADCMMountPath = "/adcm/data" ADCMVaultMinTag = "2.12.0" ADCMUnprivilegedMinTag = "3.0.0" ADCMWorkerMinTag = "3.0.0" ADCMHealthCheckMinTag = "3.0.0" ADCMLivenessProbePath = "/api/health/live" ADPGImage = "hub.arenadata.io/adcm/postgres" ADPGTag = "v16.3.1" ADPGPublishPort uint16 = 5432 ADPGDataMountPath = "/data" ConsulImage = "hub.arenadata.io/adcm/consul" ConsulTag = "v1.0.0" ConsulPublishPort uint16 = 8500 VaultImage = "openbao/openbao" VaultTag = "2.2.0" VaultPublishPort uint16 = 8200 )
View Source
const ( PgDbName = "db-name" PgDbUser = "db-user" PgDbPass = "db-pass" PgSslCaKey = "pg-ssl-ca" PgSslCertKey = "pg-ssl-cert" PgSslKeyKey = "pg-ssl-key" VaultDeployModeNonHa = "non-ha" VaultDeployModeHa = "ha" VaultDeployModeDev = "dev" VaultUnsealData = "unseal-data" SecretStorageFileSystem = "FileSystem" SecretStorageVault = "Vault" JobExecEnvLocal = "local" JobExecEnvCelery = "celery" VaultTypeEmbedded = "embedded" VaultTypeExternal = "external" VaultTokenKey = "vault-token" VaultCaKey = "vault-ca" VaultClientCertKey = "vault-client-cert" VaultClientKeyKey = "vault-client-key" AdcmUrlEnv = "DEFAULT_ADCM_URL" JobExecEnvEnv = "SCHEDULER_JOB_EXECUTION_ENVIRONMENT" SecretBackendEnv = "SECRET_BACKEND" SecretBackendEnvFileSystem = "FileSystemBackend" SecretBackendEnvVault = "VaultBackend" ConsulUrlEnv = "CONSUL_URL" VaultUrlEnv = "VAULT_URL" VaultMountPointEnv = "VAULT_MOUNT_POINT" VaultTokenFileEnv = "VAULT_TOKEN_FILE" VaultCaFileEnv = "VAULT_CA_FILE" VaultClientCertFileEnv = "VAULT_CLIENT_CERT_FILE" VaultClientKeyFileEnv = "VAULT_CLIENT_KEY_FILE" AdcmName = "adcm" AdpgName = "adpg" ConsulName = "consul" VaultName = "vault" PauseName = "pause" WorkerName = "worker" ConfigJson = "config.json" PemKey = "key.pem" PemCert = "cert.pem" PemCa = "ca.pem" XSecretsKey = "x-secrets" InitContainerProfile = "init" PrimaryContainerProfile = "primary" )
View Source
const BaoDevRootTokenEnv = "BAO_DEV_ROOT_TOKEN_ID"
Variables ¶
This section is empty.
Functions ¶
func AdcmFamilyService ¶ added in v1.2.0
func ChownContainer ¶
func ChownContainer(prj *composeTypes.Project, svc composeTypes.ServiceConfig, recursive bool) string
func InitContainer ¶
func InitContainer(prj *composeTypes.Project, svc composeTypes.ServiceConfig) string
func LatestReleasedTag ¶ added in v1.2.0
LatestReleasedTag returns the highest released (non-prerelease) semver tag available for the image in its registry.
func PauseContainer ¶
func PauseContainer(prj *composeTypes.Project)
Types ¶
type AdcmConfig ¶
type AdcmConfig struct {
Count uint8 `yaml:"adcm-count"`
WorkerCount *uint8 `yaml:"adcm-worker-count"`
DBHost string `yaml:"adcm-db-host"`
DBPort uint16 `yaml:"adcm-db-port"`
DBName string `yaml:"adcm-db-name"`
DBUser string `yaml:"adcm-db-user"`
DBPassword string `yaml:"adcm-db-pass"`
DBSSLMode string `yaml:"adcm-db-ssl-mode"`
DBSSLCaFile string `yaml:"adcm-db-ssl-ca-file"`
DBSSLCertFile string `yaml:"adcm-db-ssl-cert-file"`
DBSSLKeyFile string `yaml:"adcm-db-ssl-key-file"`
SSLKeyFile string `yaml:"adcm-ssl-key-file"`
SSLCertFile string `yaml:"adcm-ssl-cert-file"`
Image string `yaml:"adcm-image"`
Tag string `yaml:"adcm-tag"`
PublishPort uint16 `yaml:"adcm-publish-port"`
PublishSSLPort uint16 `yaml:"adcm-publish-ssl-port"`
Url string `yaml:"adcm-url"`
Volume string `yaml:"adcm-volume"`
VaultUrl string `yaml:"adcm-vault-url"`
VaultTokenFile string `yaml:"adcm-vault-token-file"`
VaultMountPoint string `yaml:"adcm-vault-mount-point"`
VaultCaFile string `yaml:"adcm-vault-ca-file"`
VaultClientCertFile string `yaml:"adcm-vault-client-cert-file"`
VaultClientKeyFile string `yaml:"adcm-vault-client-key-file"`
// contains filtered or unexported fields
}
type AdpgConfig ¶
type ConsulConfig ¶
type InitConfig ¶
type InitConfig struct {
SecretStorage string `yaml:"secret-storage"`
VaultType string `yaml:"vault-type"`
JobExecEnv string `yaml:"job-execution-environment"`
Adcm AdcmConfig `yaml:",inline"`
Adpg AdpgConfig `yaml:",inline"`
Consul ConsulConfig `yaml:",inline"`
Vault VaultConfig `yaml:",inline"`
}
type Project ¶
type Project struct {
// contains filtered or unexported fields
}
func (*Project) AppendHelpers ¶
func (*Project) ApplyHelpers ¶
type ProjectOption ¶
func WithAdcmCount ¶
func WithAdcmCount(n uint8) ProjectOption
func WithAdcmWorkerCount ¶ added in v1.2.0
func WithAdcmWorkerCount(n uint8) ProjectOption
func WithAdpg ¶
func WithAdpg(b bool) ProjectOption
func WithConfigFile ¶
func WithConfigFile(file string) ProjectOption
func WithConsul ¶
func WithConsul(b bool) ProjectOption
func WithCrypt ¶
func WithCrypt(crypt secrets.Secrets) ProjectOption
func WithInteractive ¶
func WithInteractive(b bool) ProjectOption
func WithVault ¶
func WithVault(b bool) ProjectOption
type VaultBackend ¶
type VaultBackend struct {
Postgresql VaultBackendPostgresql `json:"postgresql"`
}
type VaultBackendPostgresql ¶
type VaultConfig ¶
type VaultConfig struct {
DBHost string `yaml:"vault-db-host"`
DBPort uint16 `yaml:"vault-db-port"`
DBName string `yaml:"vault-db-name"`
DBUser string `yaml:"vault-db-user"`
DBPassword string `yaml:"vault-db-pass"`
DBSSLMode string `yaml:"vault-db-ssl-mode"`
DBSSLCaFile string `yaml:"vault-db-ssl-ca-file"`
DBSSLCertFile string `yaml:"vault-db-ssl-cert-file"`
DBSSLKeyFile string `yaml:"vault-db-ssl-key-file"`
SSLKeyFile string `yaml:"vault-ssl-key-file"`
SSLCertFile string `yaml:"vault-ssl-cert-file"`
Image string `yaml:"vault-image"`
Tag string `yaml:"vault-tag"`
PublishPort uint16 `yaml:"vault-publish-port"`
Mode string `yaml:"vault-mode"`
UI *bool `yaml:"vault-ui"`
// contains filtered or unexported fields
}
type VaultConfigFile ¶
type VaultConfigFile struct {
Listener []map[string]any `json:"listener"`
VaultStorage `json:",inline"`
}
type VaultStorage ¶
type VaultStorage struct {
Storage VaultBackend `json:"storage"`
}
type XSecrets ¶
type XSecrets struct {
AgeRecipient string `yaml:"age_recipient,omitempty" mapstructure:"age_recipient,omitempty"`
Key string `yaml:"key,omitempty" mapstructure:"key,omitempty"`
Data map[string]string `yaml:"data,omitempty" mapstructure:"data,omitempty"`
UnMapped map[string]string `yaml:"un-mapped,omitempty" mapstructure:"un-mapped,omitempty"`
}
Source Files
¶
Click to show internal directories.
Click to hide internal directories.