entity

package
v0.1.5 Latest Latest
Warning

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

Go to latest
Published: Nov 27, 2024 License: EPL-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

View Source
const EarlyRenewalThresholdHours int64 = 48

Variables

This section is empty.

Functions

This section is empty.

Types

type AccessToken

type AccessToken struct {
	Type      valueObject.AccessTokenType `json:"type"`
	ExpiresIn valueObject.UnixTime        `json:"expiresIn"`
	TokenStr  valueObject.AccessTokenStr  `json:"tokenStr"`
}

func NewAccessToken

func NewAccessToken(
	tokenType valueObject.AccessTokenType,
	expiresIn valueObject.UnixTime,
	tokenStr valueObject.AccessTokenStr,
) AccessToken

type Account

type Account struct {
	Id        valueObject.AccountId `json:"id"`
	GroupId   valueObject.GroupId   `json:"groupId"`
	Username  valueObject.Username  `json:"username"`
	CreatedAt valueObject.UnixTime  `json:"createdAt"`
	UpdatedAt valueObject.UnixTime  `json:"updatedAt"`
}

func NewAccount

func NewAccount(
	accountId valueObject.AccountId,
	groupId valueObject.GroupId,
	username valueObject.Username,
	createdAt, updatedAt valueObject.UnixTime,
) Account

type ActivityRecord

type ActivityRecord struct {
	RecordId          valueObject.ActivityRecordId           `json:"recordId"`
	RecordLevel       valueObject.ActivityRecordLevel        `json:"recordLevel"`
	RecordCode        valueObject.ActivityRecordCode         `json:"recordCode,omitempty"`
	AffectedResources []valueObject.SystemResourceIdentifier `json:"affectedResources,omitempty"`
	RecordDetails     interface{}                            `json:"recordDetails,omitempty"`
	OperatorAccountId *valueObject.AccountId                 `json:"operatorAccountId,omitempty"`
	OperatorIpAddress *valueObject.IpAddress                 `json:"operatorIpAddress,omitempty"`
	CreatedAt         valueObject.UnixTime                   `json:"createdAt"`
}

func NewActivityRecord

func NewActivityRecord(
	recordId valueObject.ActivityRecordId,
	recordLevel valueObject.ActivityRecordLevel,
	recordCode valueObject.ActivityRecordCode,
	affectedResources []valueObject.SystemResourceIdentifier,
	recordDetails interface{},
	operatorAccountId *valueObject.AccountId,
	operatorIpAddress *valueObject.IpAddress,
	createdAt valueObject.UnixTime,
) (activityRecord ActivityRecord, err error)

type Cron

type Cron struct {
	Id       valueObject.CronId       `json:"id"`
	Schedule valueObject.CronSchedule `json:"schedule"`
	Command  valueObject.UnixCommand  `json:"command"`
	Comment  *valueObject.CronComment `json:"comment"`
}

func NewCron

func NewCron(
	id valueObject.CronId,
	schedule valueObject.CronSchedule,
	command valueObject.UnixCommand,
	comment *valueObject.CronComment,
) Cron

func (Cron) String

func (cron Cron) String() string

type Database

type Database struct {
	Name  valueObject.DatabaseName `json:"name"`
	Type  valueObject.DatabaseType `json:"type"`
	Size  valueObject.Byte         `json:"size"`
	Users []DatabaseUser           `json:"users"`
}

func NewDatabase

func NewDatabase(
	name valueObject.DatabaseName,
	dbType valueObject.DatabaseType,
	size valueObject.Byte,
	users []DatabaseUser,
) Database

type DatabaseUser

type DatabaseUser struct {
	Username   valueObject.DatabaseUsername    `json:"username"`
	DbName     valueObject.DatabaseName        `json:"dbName"`
	DbType     valueObject.DatabaseType        `json:"dbType"`
	Privileges []valueObject.DatabasePrivilege `json:"privileges"`
}

type InstallableService

type InstallableService struct {
	ManifestVersion    valueObject.ServiceManifestVersion `json:"manifestVersion"`
	Name               valueObject.ServiceName            `json:"name"`
	Nature             valueObject.ServiceNature          `json:"nature"`
	Type               valueObject.ServiceType            `json:"type"`
	StartCmd           valueObject.UnixCommand            `json:"startCmd"`
	Description        valueObject.ServiceDescription     `json:"description"`
	Versions           []valueObject.ServiceVersion       `json:"versions"`
	Envs               []valueObject.ServiceEnv           `json:"envs"`
	PortBindings       []valueObject.PortBinding          `json:"portBindings"`
	StopCmdSteps       []valueObject.UnixCommand          `json:"-"`
	InstallCmdSteps    []valueObject.UnixCommand          `json:"-"`
	UninstallCmdSteps  []valueObject.UnixCommand          `json:"-"`
	UninstallFilePaths []valueObject.UnixFilePath         `json:"-"`
	PreStartCmdSteps   []valueObject.UnixCommand          `json:"-"`
	PostStartCmdSteps  []valueObject.UnixCommand          `json:"-"`
	PreStopCmdSteps    []valueObject.UnixCommand          `json:"-"`
	PostStopCmdSteps   []valueObject.UnixCommand          `json:"-"`
	ExecUser           *valueObject.UnixUsername          `json:"execUser"`
	WorkingDirectory   *valueObject.UnixFilePath          `json:"workingDirectory"`
	StartupFile        *valueObject.UnixFilePath          `json:"startupFile"`
	LogOutputPath      *valueObject.UnixFilePath          `json:"logOutputPath"`
	LogErrorPath       *valueObject.UnixFilePath          `json:"logErrorPath"`
	EstimatedSizeBytes *valueObject.Byte                  `json:"estimatedSizeBytes"`
	AvatarUrl          *valueObject.Url                   `json:"avatarUrl"`
}

func NewInstallableService

func NewInstallableService(
	manifestVersion valueObject.ServiceManifestVersion,
	name valueObject.ServiceName,
	nature valueObject.ServiceNature,
	serviceType valueObject.ServiceType,
	startCmd valueObject.UnixCommand,
	description valueObject.ServiceDescription,
	versions []valueObject.ServiceVersion,
	envs []valueObject.ServiceEnv,
	portBindings []valueObject.PortBinding,
	stopSteps, installSteps, uninstallSteps []valueObject.UnixCommand,
	uninstallFilePaths []valueObject.UnixFilePath,
	preStartSteps, postStartSteps, preStopSteps, postStopSteps []valueObject.UnixCommand,
	execUser *valueObject.UnixUsername,
	workingDirectory, startupFile, logOutputPath, logErrorPath *valueObject.UnixFilePath,
	estimatedSizeBytes *valueObject.Byte,
	avatarUrl *valueObject.Url,
) InstallableService

type InstalledService

type InstalledService struct {
	Name              valueObject.ServiceName    `json:"name"`
	Nature            valueObject.ServiceNature  `json:"nature"`
	Type              valueObject.ServiceType    `json:"type"`
	Version           valueObject.ServiceVersion `json:"version"`
	Status            valueObject.ServiceStatus  `json:"status"`
	StartCmd          valueObject.UnixCommand    `json:"startCmd"`
	Envs              []valueObject.ServiceEnv   `json:"envs"`
	PortBindings      []valueObject.PortBinding  `json:"portBindings"`
	StopCmdSteps      []valueObject.UnixCommand  `json:"stopCmdSteps"`
	PreStartCmdSteps  []valueObject.UnixCommand  `json:"preStartCmdSteps"`
	PostStartCmdSteps []valueObject.UnixCommand  `json:"postStartCmdSteps"`
	PreStopCmdSteps   []valueObject.UnixCommand  `json:"preStopCmdSteps"`
	PostStopCmdSteps  []valueObject.UnixCommand  `json:"postStopCmdSteps"`
	ExecUser          *valueObject.UnixUsername  `json:"execUser"`
	WorkingDirectory  *valueObject.UnixFilePath  `json:"workingDirectory"`
	StartupFile       *valueObject.UnixFilePath  `json:"startupFile"`
	AutoStart         *bool                      `json:"autoStart"`
	AutoRestart       *bool                      `json:"autoRestart"`
	TimeoutStartSecs  *uint                      `json:"timeoutStartSecs"`
	MaxStartRetries   *uint                      `json:"maxStartRetries"`
	LogOutputPath     *valueObject.UnixFilePath  `json:"logOutputPath"`
	LogErrorPath      *valueObject.UnixFilePath  `json:"logErrorPath"`
	CreatedAt         valueObject.UnixTime       `json:"createdAt"`
	UpdatedAt         valueObject.UnixTime       `json:"updatedAt"`
}

func NewInstalledService

func NewInstalledService(
	name valueObject.ServiceName,
	nature valueObject.ServiceNature,
	serviceType valueObject.ServiceType,
	version valueObject.ServiceVersion,
	startCmd valueObject.UnixCommand,
	status valueObject.ServiceStatus,
	envs []valueObject.ServiceEnv,
	portBindings []valueObject.PortBinding,
	stopSteps, preStartSteps, postStartSteps, preStopSteps, postStopSteps []valueObject.UnixCommand,
	execUser *valueObject.UnixUsername,
	workingDirectory, startupFile *valueObject.UnixFilePath,
	autoStart, autoRestart *bool,
	timeoutStartSecs, maxStartRetries *uint,
	logOutputPath, logErrorPath *valueObject.UnixFilePath,
	createdAt valueObject.UnixTime,
	updatedAt valueObject.UnixTime,
) InstalledService

type Mapping

type Mapping struct {
	Id                     valueObject.MappingId           `json:"id"`
	Hostname               valueObject.Fqdn                `json:"-"`
	Path                   valueObject.MappingPath         `json:"path"`
	MatchPattern           valueObject.MappingMatchPattern `json:"matchPattern"`
	TargetType             valueObject.MappingTargetType   `json:"targetType"`
	TargetValue            *valueObject.MappingTargetValue `json:"targetValue"`
	TargetHttpResponseCode *valueObject.HttpResponseCode   `json:"targetHttpResponseCode"`
}

func NewMapping

func NewMapping(
	id valueObject.MappingId,
	hostname valueObject.Fqdn,
	path valueObject.MappingPath,
	matchPattern valueObject.MappingMatchPattern,
	targetType valueObject.MappingTargetType,
	targetValue *valueObject.MappingTargetValue,
	targetHttpResponseCode *valueObject.HttpResponseCode,
) Mapping

type MarketplaceCatalogItem

type MarketplaceCatalogItem struct {
	ManifestVersion    valueObject.MarketplaceItemManifestVersion    `json:"manifestVersion"`
	Id                 valueObject.MarketplaceItemId                 `json:"id"`
	Slugs              []valueObject.MarketplaceItemSlug             `json:"slugs"`
	Name               valueObject.MarketplaceItemName               `json:"name"`
	Type               valueObject.MarketplaceItemType               `json:"type"`
	Description        valueObject.MarketplaceItemDescription        `json:"description"`
	Services           []valueObject.ServiceNameWithVersion          `json:"services"`
	Mappings           []valueObject.MarketplaceItemMapping          `json:"mappings"`
	DataFields         []valueObject.MarketplaceCatalogItemDataField `json:"dataFields"`
	InstallCmdSteps    []valueObject.UnixCommand                     `json:"-"`
	UninstallCmdSteps  []valueObject.UnixCommand                     `json:"-"`
	UninstallFileNames []valueObject.UnixFileName                    `json:"-"`
	EstimatedSizeBytes valueObject.Byte                              `json:"estimatedSizeBytes"`
	AvatarUrl          valueObject.Url                               `json:"avatarUrl"`
	ScreenshotUrls     []valueObject.Url                             `json:"screenshotUrls"`
}

type MarketplaceInstalledItem

type MarketplaceInstalledItem struct {
	Id               valueObject.MarketplaceItemId            `json:"id"`
	Name             valueObject.MarketplaceItemName          `json:"name"`
	Hostname         valueObject.Fqdn                         `json:"hostname"`
	Type             valueObject.MarketplaceItemType          `json:"type"`
	UrlPath          valueObject.UrlPath                      `json:"urlPath"`
	InstallDirectory valueObject.UnixFilePath                 `json:"installDirectory"`
	InstallUuid      valueObject.MarketplaceInstalledItemUuid `json:"installUuid"`
	Services         []valueObject.ServiceNameWithVersion     `json:"services"`
	Mappings         []Mapping                                `json:"mappings"`
	AvatarUrl        valueObject.Url                          `json:"avatarUrl"`
	Slug             valueObject.MarketplaceItemSlug          `json:"-"`
	CreatedAt        valueObject.UnixTime                     `json:"createdAt"`
	UpdatedAt        valueObject.UnixTime                     `json:"updatedAt"`
}

type O11yOverview

type O11yOverview struct {
	Hostname             valueObject.Fqdn                 `json:"hostname"`
	UptimeSecs           uint64                           `json:"uptimeSecs"`
	UptimeRelative       valueObject.RelativeTime         `json:"uptimeRelative"`
	PublicIpAddress      valueObject.IpAddress            `json:"publicIp"`
	HardwareSpecs        valueObject.HardwareSpecs        `json:"specs"`
	CurrentResourceUsage valueObject.CurrentResourceUsage `json:"currentUsage"`
}

func NewO11yOverview

func NewO11yOverview(
	hostname valueObject.Fqdn,
	uptimeSecs uint64,
	uptimeRelative valueObject.RelativeTime,
	publicIpAddress valueObject.IpAddress,
	hardwareSpecs valueObject.HardwareSpecs,
	currentResourceUsage valueObject.CurrentResourceUsage,
) O11yOverview

type PhpConfigs

type PhpConfigs struct {
	Hostname valueObject.Fqdn `json:"hostname"`
	Version  PhpVersion       `json:"version"`
	Settings []PhpSetting     `json:"settings"`
	Modules  []PhpModule      `json:"modules"`
}

func NewPhpConfigs

func NewPhpConfigs(
	hostname valueObject.Fqdn,
	version PhpVersion,
	settings []PhpSetting,
	modules []PhpModule,
) PhpConfigs

type PhpModule

type PhpModule struct {
	Name   valueObject.PhpModuleName `json:"name"`
	Status bool                      `json:"status"`
}

func NewPhpModule

func NewPhpModule(
	name valueObject.PhpModuleName,
	status bool,
) PhpModule

func NewPhpModuleFromString

func NewPhpModuleFromString(stringValue string) (module PhpModule, err error)

format: name:status

type PhpSetting

type PhpSetting struct {
	Name    valueObject.PhpSettingName     `json:"name"`
	Type    valueObject.PhpSettingType     `json:"type"`
	Value   valueObject.PhpSettingValue    `json:"value"`
	Options []valueObject.PhpSettingOption `json:"options"`
}

func NewPhpSettingFromString

func NewPhpSettingFromString(stringValue string) (setting PhpSetting, err error)

format: name:value:type:suggestedValue1,suggestedValue2,suggestedValue3

type PhpVersion

type PhpVersion struct {
	Value   valueObject.PhpVersion   `json:"value"`
	Options []valueObject.PhpVersion `json:"options"`
}

func NewPhpVersion

func NewPhpVersion(
	value valueObject.PhpVersion,
	options []valueObject.PhpVersion,
) PhpVersion

type ScheduledTask

type ScheduledTask struct {
	Id          valueObject.ScheduledTaskId      `json:"id"`
	Name        valueObject.ScheduledTaskName    `json:"name"`
	Status      valueObject.ScheduledTaskStatus  `json:"status"`
	Command     valueObject.UnixCommand          `json:"command"`
	Tags        []valueObject.ScheduledTaskTag   `json:"tags"`
	TimeoutSecs *uint16                          `json:"timeoutSecs"`
	RunAt       *valueObject.UnixTime            `json:"runAt"`
	Output      *valueObject.ScheduledTaskOutput `json:"output"`
	Error       *valueObject.ScheduledTaskOutput `json:"err"`
	StartedAt   *valueObject.UnixTime            `json:"startedAt"`
	FinishedAt  *valueObject.UnixTime            `json:"finishedAt"`
	ElapsedSecs *uint32                          `json:"elapsedSecs"`
	CreatedAt   valueObject.UnixTime             `json:"createdAt"`
	UpdatedAt   valueObject.UnixTime             `json:"updatedAt"`
}

func NewScheduledTask

func NewScheduledTask(
	id valueObject.ScheduledTaskId,
	name valueObject.ScheduledTaskName,
	status valueObject.ScheduledTaskStatus,
	command valueObject.UnixCommand,
	tags []valueObject.ScheduledTaskTag,
	timeoutSecs *uint16,
	runAt *valueObject.UnixTime,
	output, err *valueObject.ScheduledTaskOutput,
	startedAt, finishedAt *valueObject.UnixTime,
	elapsedSecs *uint32,
	createdAt, updatedAt valueObject.UnixTime,
) ScheduledTask

type SslCertificate

type SslCertificate struct {
	Id                   valueObject.SslCertificateId        `json:"id"`
	CommonName           *valueObject.SslHostname            `json:"commonName"`
	CertificateContent   valueObject.SslCertificateContent   `json:"certificateContent"`
	IsIntermediary       bool                                `json:"-"`
	CertificateAuthority valueObject.SslCertificateAuthority `json:"certificateAuthority"`
	AltNames             []valueObject.SslHostname           `json:"altNames"`
	IssuedAt             valueObject.UnixTime                `json:"issuedAt"`
	ExpiresAt            valueObject.UnixTime                `json:"expiresAt"`
}

func NewSslCertificate

func NewSslCertificate(
	certContent valueObject.SslCertificateContent,
) (certificate SslCertificate, err error)

type SslPair

type SslPair struct {
	Id                    valueObject.SslPairId     `json:"sslPairId"`
	VirtualHostsHostnames []valueObject.Fqdn        `json:"virtualHostsHostnames"`
	Certificate           SslCertificate            `json:"certificate"`
	Key                   valueObject.SslPrivateKey `json:"key"`
	ChainCertificates     []SslCertificate          `json:"chainCertificates"`
}

func NewSslPair

func NewSslPair(
	sslPairId valueObject.SslPairId,
	virtualHostsHostnames []valueObject.Fqdn,
	certificate SslCertificate,
	key valueObject.SslPrivateKey,
	chainCertificates []SslCertificate,
) SslPair

func (SslPair) IsPubliclyTrusted

func (sslPair SslPair) IsPubliclyTrusted() bool

type UnixFile

type UnixFile struct {
	Name        valueObject.UnixFileName        `json:"name"`
	Path        valueObject.UnixFilePath        `json:"path"`
	MimeType    valueObject.MimeType            `json:"mimeType"`
	Permissions valueObject.UnixFilePermissions `json:"permissions"`
	Size        valueObject.Byte                `json:"size"`
	Extension   *valueObject.UnixFileExtension  `json:"extension"`
	Content     *valueObject.UnixFileContent    `json:"content"`
	Uid         valueObject.UnixUid             `json:"uid"`
	Owner       valueObject.Username            `json:"owner"`
	Gid         valueObject.GroupId             `json:"gid"`
	Group       valueObject.GroupName           `json:"group"`
	UpdatedAt   valueObject.UnixTime            `json:"updatedAt"`
}

type VirtualHost

type VirtualHost struct {
	Hostname       valueObject.Fqdn            `json:"hostname"`
	Type           valueObject.VirtualHostType `json:"type"`
	RootDirectory  valueObject.UnixFilePath    `json:"rootDirectory"`
	ParentHostname *valueObject.Fqdn           `json:"parentHostname"`
}

func NewVirtualHost

func NewVirtualHost(
	hostname valueObject.Fqdn,
	vhostType valueObject.VirtualHostType,
	rootDirectory valueObject.UnixFilePath,
	parentHostname *valueObject.Fqdn,
) VirtualHost

Jump to

Keyboard shortcuts

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