api

package
v1.0.9 Latest Latest
Warning

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

Go to latest
Published: Jun 9, 2022 License: GPL-2.0, GPL-3.0 Imports: 32 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	GovCloudRegions = []string{"us-gov-east-1", "us-gov-west-1"}
)
View Source
var (
	MethodsWithJsonBody = []string{"POST", "PUT", "PATCH"}
)

Functions

func Applications

func Applications(selector string, showSecrets, showLogs, jsonFormat bool)

func BackupStackInstance

func BackupStackInstance(selector, name string, components []string, waitAndTailDeployLogs bool)

func Backups

func Backups(selector string, showLogs, jsonFormat bool)

func BaseStacks

func BaseStacks(selector string, jsonFormat bool)

func CloudAccountDownloadCfTemplate

func CloudAccountDownloadCfTemplate(filename string, govcloud bool)

func CloudAccounts

func CloudAccounts(selector string, showSecrets, showLogs,
	getCloudCredentials, shFormat, nativeConfigFormat, jsonFormat bool)

func Components

func Components(selector string, onlyCustomComponents, jsonFormat bool)

func CreateComponent

func CreateComponent(req ComponentRequest)

func CreateEnvironment

func CreateEnvironment(name, cloudAccountSelector string)

func CreateKubernetes

func CreateKubernetes(kind, name, environment, template string,
	autoCreateTemplate, createNewTemplate, waitAndTailDeployLogs, dryRun bool,
	nativeRegion, nativeZone, nativeClusterName,
	eksAdmin, azureResourceGroup string,
	options ClusterOptions)

func CreateSecret

func CreateSecret(entityKind, selector, name, component, kind string, values map[string]string)

func CreateStackInstance

func CreateStackInstance(req StackInstanceRequest)

func CreateTemplate

func CreateTemplate(req StackTemplateRequest)

func CreateWorkerpool

func CreateWorkerpool(selector, name, instanceType string, count, maxCount int,
	spotPrice float32, preemptibleVMs, autoscale bool, volumeSize int,
	waitAndTailDeployLogs, dryRun bool)

func DeleteApplication

func DeleteApplication(selector string, waitAndTailDeployLogs bool)

func DeleteBackup

func DeleteBackup(selector string)

func DeleteCloudAccount

func DeleteCloudAccount(selector string, waitAndTailDeployLogs bool)

func DeleteComponent

func DeleteComponent(selector string)

func DeleteEnvironment

func DeleteEnvironment(selector string)

func DeleteStackInstance

func DeleteStackInstance(selector string)

func DeleteTemplate

func DeleteTemplate(selector string)

func DeleteWorkerpool

func DeleteWorkerpool(selector string)

func DeployStackInstance

func DeployStackInstance(selector string, components []string, waitAndTailDeployLogs, dryRun bool)

func DeployWorkerpool

func DeployWorkerpool(selector string, waitAndTailDeployLogs, dryRun bool)

func Environments

func Environments(selector string, showSecrets, showMyTeams,
	showServiceAccount, showServiceAccountLoginToken, getCloudCredentials, showBackups, jsonFormat bool)

func GetParameterOrMaybeCreateSecret

func GetParameterOrMaybeCreateSecret(environment, stackInstance, application,
	name, component string, create bool) (bool, string, []error)

func GetSecret

func GetSecret(entityKind, selector, uuid string, jsonFormat bool)

func ImportKubernetes

func ImportKubernetes(kind, name, environment, template string,
	autoCreateTemplate, createNewTemplate, waitAndTailDeployLogs, dryRun bool,
	pems io.Reader, clusterBearerToken,
	nativeRegion, nativeZone, nativeEndpoint, nativeClusterName,
	ingressIpOrHost, azureResourceGroup string,
	options ClusterOptions)

func InitTemplate

func InitTemplate(selector string)

func InstallApplication

func InstallApplication(req ApplicationRequest, waitAndTailDeployLogs bool)

func Invoke

func Invoke(method, path string, body io.Reader)

func KubeconfigStackInstance

func KubeconfigStackInstance(selector, filename string)

func Login

func Login(apiBaseUrl, username, password string)

func Logs

func Logs(selectors []string, exitOnCompletedOperation bool) int

func LogsStackInstance

func LogsStackInstance(selector, operationId, filename string)

func OnboardCloudAccount

func OnboardCloudAccount(domain, kind, region string, args []string, zone, awsVpc, awsKeypair string, waitAndTailDeployLogs bool)

func PatchApplication

func PatchApplication(selector string, change ApplicationPatch, waitAndTailDeployLogs bool)

func PatchComponent

func PatchComponent(selector string, change ComponentPatch)

func PatchEnvironment

func PatchEnvironment(selector string, change EnvironmentPatch)

func PatchStackInstanceForCmd

func PatchStackInstanceForCmd(selector string, change StackInstancePatch, replace bool)

func PatchTemplate

func PatchTemplate(selector string, change StackTemplatePatch)

func RawCreateComponent

func RawCreateComponent(body io.Reader)

func RawCreateStackInstance

func RawCreateStackInstance(body io.Reader)

func RawCreateTemplate

func RawCreateTemplate(body io.Reader)

func RawInstallApplication

func RawInstallApplication(body io.Reader, waitAndTailDeployLogs bool)

func RawPatchApplication

func RawPatchApplication(selector string, body io.Reader, waitAndTailDeployLogs bool)

func RawPatchComponent

func RawPatchComponent(selector string, body io.Reader)

func RawPatchEnvironment

func RawPatchEnvironment(selector string, body io.Reader)

func RawPatchStackInstance

func RawPatchStackInstance(selector string, body io.Reader, replace bool)

func RawPatchTemplate

func RawPatchTemplate(selector string, body io.Reader)

func ScaleWorkerpool

func ScaleWorkerpool(selector, instanceType string, count, maxCount int, waitAndTailDeployLogs, dryRun bool)

func StackInstances

func StackInstances(selector, environmentSelector string, showSecrets, showLogs, showBackups, jsonFormat bool)

func SyncStackInstance

func SyncStackInstance(selector, status string, stateFilenames []string)

func Tasks

func Tasks(environmentSelector string, jsonFormat bool)

func Templates

func Templates(selector string, showSecrets, showGitRemote, wildcardSecret, showGitStatus, jsonFormat bool)

func TerminateTask

func TerminateTask(id string)

func UndeployStackInstance

func UndeployStackInstance(selector string, components []string, waitAndTailDeployLogs bool)

func UndeployWorkerpool

func UndeployWorkerpool(selector string, useWorkerpoolApi, waitAndTailDeployLogs bool)

func VerifyWorkerpool

func VerifyWorkerpool(selector string)

func Workerpools

func Workerpools(selector, environmentSelector string, showSecrets, showLogs, jsonFormat bool)

Types

type ApiError

type ApiError struct {
	Type   string
	Source string
	Detail string
	Meta   struct {
		Stack string
		Data  ApiErrors // nested API call
		// validation error
		SchemaPath string `json:"schemaPath"`
		Message    string
		Params     map[string]interface{}
	}
}

type ApiErrors

type ApiErrors struct {
	Errors []ApiError
}

type Application

type Application struct {
	Id                 string                 `json:"id"`
	Name               string                 `json:"name"`
	Description        string                 `json:"description,omitempty"`
	Tags               []string               `json:"tags,omitempty"`
	UI                 map[string]interface{} `json:"ui,omitempty"`
	Application        string                 `json:"application"`
	Status             string                 `json:"status"`
	Environment        EnvironmentRef         `json:"environment"`
	Environments       []EnvironmentRef       `json:"environments,omitempty"` // not implemented
	Platform           PlatformRef            `json:"platform"`
	Requires           []string               `json:"requires"`
	Parameters         []Parameter            `json:"parameters,omitempty"`
	Outputs            []Output               `json:"outputs,omitempty"`
	StateFiles         []string               `json:"stateFiles,omitempty"`
	InflightOperations []InflightOperation    `json:"inflightOperations,omitempty"`
}

type ApplicationPatch

type ApplicationPatch struct {
	UI         map[string]interface{} `json:"ui,omitempty"`
	Parameters []Parameter            `json:"parameters,omitempty"`
}

type ApplicationRequest

type ApplicationRequest struct {
	Name        string                 `json:"name"`
	Description string                 `json:"description,omitempty"`
	Tags        []string               `json:"tags,omitempty"`
	UI          map[string]interface{} `json:"ui,omitempty"`
	Application string                 `json:"application"`
	Requires    []string               `json:"requires"`
	Platform    string                 `json:"platform"`
	Parameters  []Parameter            `json:"parameters,omitempty"`
}

type AuthLoginToken

type AuthLoginToken struct {
	LoginToken string `json:"loginToken"`
}

type AuthPingResponse

type AuthPingResponse struct {
	Exp int64 `json:"exp"`
}

type AuthUserPass

type AuthUserPass struct {
	Username string `json:"username"`
	Password string `json:"password"`
}

type AwsSecurityCredentials

type AwsSecurityCredentials struct {
	Cloud        string
	AccessKey    string
	SecretKey    string
	SessionToken string
	Ttl          int
	Region       string
	Sts          string
}

type Backup

type Backup struct {
	Id            string                 `json:"id"`
	Name          string                 `json:"name"`
	Status        string                 `json:"status"`
	Timestamp     time.Time              `json:"timestamp"`
	Components    []string               `json:"components,omitempty"`
	Description   string                 `json:"description,omitempty"`
	Tags          []string               `json:"tags,omitempty"`
	UI            map[string]interface{} `json:"ui,omitempty"`
	Environment   EnvironmentRef         `json:"environment"`
	StackInstance StackInstanceRef       `json:"stackInstance"`
	Logs          string                 `json:"logs,omitempty"`
	Bundle        BackupBundle           `json:"bundle"`
}

type BackupBundle

type BackupBundle struct {
	Kind       string                     `json:"kind"`
	Status     string                     `json:"status"`
	Timestamp  time.Time                  `json:"timestamp"`
	Components map[string]ComponentBackup `json:"components,omitempty"`
}

type BackupRequest

type BackupRequest struct {
	Name       string   `json:"name"`
	Components []string `json:"components,omitempty"`
}

type BaseStack

type BaseStack struct {
	Id         string           `json:"id"`
	Name       string           `json:"name"`
	Brief      string           `json:"brief,omitempty"`
	Tags       []string         `json:"tags,omitempty"`
	Components []StackComponent `json:"components,omitempty"`
	Parameters []Parameter      `json:"parameters,omitempty"`
}

type CloudAccount

type CloudAccount struct {
	Id                 string              `json:"id"`
	Name               string              `json:"name"`
	Tags               []string            `json:"tags,omitempty"`
	Kind               string              `json:"kind"`
	Status             string              `json:"status"`
	BaseDomain         string              `json:"baseDomain"`
	Parameters         []Parameter         `json:"parameters,omitempty"`
	InflightOperations []InflightOperation `json:"inflightOperations,omitempty"`
	TeamsPermissions   []Team              `json:"teamsPermissions"`
}

type CloudAccountRequest

type CloudAccountRequest struct {
	Name        string            `json:"name"`
	Tags        []string          `json:"tags,omitempty"`
	Kind        string            `json:"kind"`
	Parameters  []Parameter       `json:"parameters,omitempty"`
	Credentials map[string]string `json:"credentials,omitempty"`
}

type ClusterOptions

type ClusterOptions struct {
	InstanceType   string
	Count          int
	MaxCount       int
	SpotPrice      float32
	PreemptibleVMs bool
	VolumeSize     int

	Acm               bool
	CertManager       bool
	Autoscaler        bool
	KubeDashboard     bool
	KubeDashboardMode string
}

type Component

type Component struct {
	Id               string                 `json:"id,omitempty"`
	QName            string                 `json:"qname"`
	Title            string                 `json:"title"`
	Brief            string                 `json:"brief,omitempty"`
	Description      string                 `json:"description,omitempty"`
	Tags             []string               `json:"tags,omitempty"`
	UI               map[string]interface{} `json:"ui,omitempty"`
	Category         string                 `json:"category,omitempty"`
	License          string                 `json:"license,omitempty"`
	Icon             string                 `json:"icon,omitempty"`
	Template         *StackTemplateRef      `json:"template,omitempty"`
	Git              *ComponentGitRef       `json:"git,omitempty"`
	Version          string                 `json:"version,omitempty"`
	Maturity         string                 `json:"maturity,omitempty"`
	Requires         []string               `json:"requires,omitempty"`
	Provides         []string               `json:"provides,omitempty"`
	TeamsPermissions []Team                 `json:"teamsPermissions,omitempty"`
}

type ComponentBackup

type ComponentBackup struct {
	Kind      string                  `json:"kind"`
	Status    string                  `json:"status"`
	Timestamp time.Time               `json:"timestamp"`
	Outputs   []ComponentBackupOutput `json:"outputs,omitempty"`
}

type ComponentBackupOutput

type ComponentBackupOutput struct {
	Name  string `json:"name"`
	Value string `json:"value"`
}

type ComponentGitRef

type ComponentGitRef struct {
	Remote string `json:"remote"`
	SubDir string `json:"subDir,omitempty"`
}

type ComponentGitRefRequest

type ComponentGitRefRequest struct {
	SubDir string `json:"subDir,omitempty"`
}

type ComponentMetadata

type ComponentMetadata struct {
	Origin      string `json:"origin,omitempty"`
	Kind        string `json:"kind,omitempty"`
	Title       string `json:"title,omitempty"`
	Brief       string `json:"brief,omitempty"`
	Description string `json:"description,omitempty"`
	Version     string `json:"version,omitempty"`
	Maturity    string `json:"maturity,omitempty"`
	Icon        string `json:"icon,omitempty"`
}

type ComponentOutput

type ComponentOutput struct {
	Name  string      `json:"name"`
	Value interface{} `json:"value"`
	Brief string      `json:"brief,omitempty"`
}

type ComponentPatch

type ComponentPatch struct {
	Title            string                 `json:"title,omitempty"`
	Brief            string                 `json:"brief,omitempty"`
	Description      string                 `json:"description,omitempty"`
	Tags             []string               `json:"tags,omitempty"`
	UI               map[string]interface{} `json:"ui,omitempty"`
	Category         string                 `json:"category,omitempty"`
	License          string                 `json:"license,omitempty"`
	Icon             string                 `json:"icon,omitempty"`
	Version          string                 `json:"version,omitempty"`
	Maturity         string                 `json:"maturity,omitempty"`
	Requires         []string               `json:"requires,omitempty"`
	Provides         []string               `json:"provides,omitempty"`
	TeamsPermissions []Team                 `json:"teamsPermissions,omitempty"`
}

type ComponentRef

type ComponentRef struct {
	Id   string `json:"id"`
	Name string `json:"name"`
}

type ComponentRequest

type ComponentRequest struct {
	Name             string                  `json:"name"`
	Title            string                  `json:"title"`
	Brief            string                  `json:"brief,omitempty"`
	Description      string                  `json:"description,omitempty"`
	Tags             []string                `json:"tags,omitempty"`
	UI               map[string]interface{}  `json:"ui,omitempty"`
	Category         string                  `json:"category,omitempty"`
	License          string                  `json:"license,omitempty"`
	Icon             string                  `json:"icon,omitempty"`
	Template         string                  `json:"template,omitempty"`
	Git              *ComponentGitRefRequest `json:"git,omitempty"`
	Version          string                  `json:"version,omitempty"`
	Maturity         string                  `json:"maturity,omitempty"`
	Requires         []string                `json:"requires,omitempty"`
	Provides         []string                `json:"provides,omitempty"`
	TeamsPermissions []Team                  `json:"teamsPermissions,omitempty"`
}

type ComponentStatus

type ComponentStatus struct {
	Name       string             `json:"name"`
	Status     string             `json:"status"`
	Version    string             `json:"version,omitempty"` // TODO deprecate in favor of Meta.Version
	Meta       *ComponentMetadata `json:"meta,omitempty"`
	Message    string             `json:"message,omitempty"`
	Outputs    []ComponentOutput  `json:"outputs,omitempty"`
	Timestamps *Timestamps        `json:"timestamps,omitempty"`
}

type CreateSecretResponse

type CreateSecretResponse struct {
	Id string
}

type DeploymentKey

type DeploymentKey struct {
	DeploymentKey string `json:"deploymentKey"`
}

type Environment

type Environment struct {
	Id               string                 `json:"id"`
	Name             string                 `json:"name"`
	Description      string                 `json:"description,omitempty"`
	Tags             []string               `json:"tags,omitempty"`
	UI               map[string]interface{} `json:"ui,omitempty"`
	CloudAccount     string                 `json:"cloudAccount"`
	Parameters       []Parameter            `json:"parameters,omitempty"`
	Providers        []Provider             `json:"providers,omitempty"`
	TeamsPermissions []Team                 `json:"teamsPermissions"`
}

type EnvironmentPatch

type EnvironmentPatch struct {
	Name             string                 `json:"name,omitempty"`
	Description      string                 `json:"description,omitempty"`
	Tags             []string               `json:"tags,omitempty"`
	UI               map[string]interface{} `json:"ui,omitempty"`
	Parameters       []Parameter            `json:"parameters,omitempty"`
	Providers        []Provider             `json:"providers,omitempty"`
	TeamsPermissions []Team                 `json:"teamsPermissions,omitempty"`
}

type EnvironmentRef

type EnvironmentRef struct {
	Id     string `json:"id"`
	Name   string `json:"name"`
	Domain string `json:"domain,omitempty"`
}

type EnvironmentRequest

type EnvironmentRequest struct {
	Name             string                 `json:"name"`
	Description      string                 `json:"description,omitempty"`
	Tags             []string               `json:"tags,omitempty"`
	UI               map[string]interface{} `json:"ui,omitempty"`
	CloudAccount     string                 `json:"cloudAccount"`
	Parameters       []Parameter            `json:"parameters,omitempty"`
	Providers        []Provider             `json:"providers,omitempty"`
	TeamsPermissions []Team                 `json:"teamsPermissions,omitempty"`
}

type Filter

type Filter struct {
	Id        string
	Entity    string
	Completed bool
	Success   bool
}

type GitRef

type GitRef struct {
	Public   string `json:"public"`
	Template *struct {
		Ref string `json:"ref"`
	} `json:"template,omitempty"`
	K8s *struct {
		Ref string `json:"ref"`
	} `json:"k8s,omitempty"`
}

type GitRefPatch

type GitRefPatch struct {
	Template *struct {
		Ref string `json:"ref"`
	} `json:"template,omitempty"`
	K8s *struct {
		Ref string `json:"ref"`
	} `json:"k8s,omitempty"`
}

type ImportConfig

type ImportConfig struct {
	TemplateNameFormat string
	SecretsOrder       []Secret
}

type InflightOperation

type InflightOperation struct {
	Id          string                 `json:"id"`
	Operation   string                 `json:"operation"`
	Timestamp   time.Time              `json:"timestamp"`
	Status      string                 `json:"status,omitempty"`
	Options     map[string]interface{} `json:"options,omitempty"`
	Description string                 `json:"description,omitempty"`
	Initiator   string                 `json:"initiator,omitempty"`
	Location    string                 `json:"location,omitempty"`
	Logs        string                 `json:"logs,omitempty"`
	Phases      []LifecyclePhase       `json:"phases,omitempty"`
	// applications
	JobName        string `json:"jobName,omitempty"`
	PlatformDomain string `json:"platformDomain,omitempty"`
}

type License

type License struct {
	Component  string `json:"component"`
	LicenseKey string `json:"licenseKey"`
}

type LifecyclePhase

type LifecyclePhase struct {
	Phase  string `json:"phase"`
	Status string `json:"status"`
}

type LoginTokenResponse

type LoginTokenResponse struct {
	LoginToken string `json:"loginToken"`
}

type Output

type Output struct {
	Name      string      `json:"name"`
	Component string      `json:"component,omitempty"`
	Kind      string      `json:"kind,omitempty"`
	Value     interface{} `json:"value"`
	Brief     string      `json:"brief,omitempty"`
	Messenger string      `json:"messenger,omitempty"`
}

type Parameter

type Parameter struct {
	Name      string      `json:"name"`
	Kind      string      `json:"kind,omitempty"`
	Value     interface{} `json:"value,omitempty"`
	From      string      `json:"from,omitempty"`
	Component string      `json:"component,omitempty"`
	Origin    string      `json:"origin,omitempty"`
	Messenger string      `json:"messenger,omitempty"`
}

type PlatformRef

type PlatformRef struct {
	Id     string `json:"id"`
	Name   string `json:"name"`
	Domain string `json:"domain"`
	// application and overlay
	Provides   map[string][]string `json:"provides,omitempty"`
	StateFiles []string            `json:"stateFiles,omitempty"`
}

type Provider

type Provider struct {
	Kind       string      `json:"kind"`
	Name       string      `json:"name"`
	Provides   []string    `json:"provides,omitempty"`
	Parameters []Parameter `json:"parameters,omitempty"`
}

type Secret

type Secret struct {
	Name   string
	Kind   string
	Values map[string]string
}

type ServiceAccount

type ServiceAccount struct {
	UserId     string `json:"userId"`
	Name       string `json:"name"`
	GroupId    string `json:"groupId"`
	LoginToken string `json:"loginToken"`
}

type SigninResponse

type SigninResponse struct {
	AccessToken  string `json:"accessToken"`
	RefreshToken string `json:"refreshToken"`
	Exp          int64  `json:"exp,omitempty"`
}

type StackComponent

type StackComponent struct {
	Name        string `json:"name"`
	Brief       string `json:"brief,omitempty"`
	Description string `json:"description,omitempty"`
}

type StackInstance

type StackInstance struct {
	Id                 string                 `json:"id"`
	Name               string                 `json:"name"`
	Domain             string                 `json:"domain"`
	Description        string                 `json:"description,omitempty"`
	Verbs              []string               `json:"verbs,omitempty"`
	Tags               []string               `json:"tags,omitempty"`
	UI                 map[string]interface{} `json:"ui,omitempty"`
	Environment        EnvironmentRef         `json:"environment,omitempty"`
	Stack              StackRef               `json:"stack,omitempty"`
	Template           StackTemplateRef       `json:"template,omitempty"`
	Platform           *PlatformRef           `json:"platform,omitempty"`
	ComponentsEnabled  []string               `json:"componentsEnabled,omitempty"`
	GitRemote          GitRef                 `json:"gitRemote,omitempty"`
	Parameters         []Parameter            `json:"parameters,omitempty"`
	Outputs            []Output               `json:"outputs,omitempty"`
	Provides           map[string][]string    `json:"provides,omitempty"`
	StateFiles         []string               `json:"stateFiles,omitempty"`
	Status             StackInstanceStatus    `json:"status"`
	InflightOperations []InflightOperation    `json:"inflightOperations,omitempty"`
}

func PatchStackInstance

func PatchStackInstance(selector string, change StackInstancePatch, replace bool) (*StackInstance, error)

type StackInstanceLifecycleRequest

type StackInstanceLifecycleRequest struct {
	Components []string `json:"components,omitempty"`
}

type StackInstanceLifecycleResponse

type StackInstanceLifecycleResponse struct {
	Id    string `json:"id"`
	JobId string `json:"jobId"`
}

type StackInstancePatch

type StackInstancePatch struct {
	Description        string                 `json:"description,omitempty"`
	Tags               []string               `json:"tags,omitempty"`
	UI                 map[string]interface{} `json:"ui,omitempty"`
	Verbs              []string               `json:"verbs,omitempty"`
	ComponentsEnabled  []string               `json:"componentsEnabled,omitempty"`
	StateFiles         []string               `json:"stateFiles,omitempty"`
	Parameters         []Parameter            `json:"parameters,omitempty"`
	GitRemote          *GitRefPatch           `json:"gitRemote,omitempty"`
	Status             *StackInstanceStatus   `json:"status,omitempty"`
	InflightOperations []InflightOperation    `json:"inflightOperations,omitempty"`
	Outputs            []Output               `json:"outputs,omitempty"`
	Provides           map[string][]string    `json:"provides,omitempty"`
}

func TransformStateToApi

func TransformStateToApi(state *state.StateManifest) StackInstancePatch

type StackInstanceRef

type StackInstanceRef struct {
	Id         string      `json:"id"`
	Name       string      `json:"name"`
	Domain     string      `json:"domain"`
	Stack      StackRef    `json:"stack,omitempty"`
	Platform   PlatformRef `json:"platform,omitempty"`
	Parameters []Parameter `json:"parameters,omitempty"`
}

type StackInstanceRequest

type StackInstanceRequest struct {
	Name              string                 `json:"name"`
	Description       string                 `json:"description,omitempty"`
	Tags              []string               `json:"tags,omitempty"`
	UI                map[string]interface{} `json:"ui,omitempty"`
	Environment       string                 `json:"environment"`
	Template          string                 `json:"template"`
	Platform          string                 `json:"platform,omitempty"`
	ComponentsEnabled []string               `json:"componentsEnabled,omitempty"`
	Parameters        []Parameter            `json:"parameters,omitempty"`
}

type StackInstanceStatus

type StackInstanceStatus struct {
	Status     string            `json:"status,omitempty"`
	Template   *TemplateStatus   `json:"template,omitempty"`
	K8s        *TemplateStatus   `json:"k8s,omitempty"`
	Components []ComponentStatus `json:"components,omitempty"`
}

type StackRef

type StackRef struct {
	Id   string `json:"id"`
	Name string `json:"name"`
}

type StackTemplate

type StackTemplate struct {
	Id                string                 `json:"id"`
	Name              string                 `json:"name"`
	Description       string                 `json:"description,omitempty"`
	Status            string                 `json:"status"`
	Tags              []string               `json:"tags,omitempty"`
	UI                map[string]interface{} `json:"ui,omitempty"`
	Stack             *StackRef              `json:"stack,omitempty"`
	ComponentsEnabled []string               `json:"componentsEnabled,omitempty"`
	Component         *ComponentRef          `json:"component,omitempty"`
	Verbs             []string               `json:"verbs,omitempty"`
	GitRemote         GitRef                 `json:"gitRemote"`
	Parameters        []Parameter            `json:"parameters,omitempty"`
	TeamsPermissions  []Team                 `json:"teamsPermissions"`
}

type StackTemplatePatch

type StackTemplatePatch struct {
	Description       string                 `json:"description,omitempty"`
	Tags              []string               `json:"tags,omitempty"`
	UI                map[string]interface{} `json:"ui,omitempty"`
	ComponentsEnabled []string               `json:"componentsEnabled,omitempty"`
	Verbs             []string               `json:"verbs,omitempty"`
	Parameters        []Parameter            `json:"parameters,omitempty"`
	TeamsPermissions  []Team                 `json:"teamsPermissions,omitempty"`
}

type StackTemplateRef

type StackTemplateRef struct {
	Id   string `json:"id"`
	Name string `json:"name"`
}

type StackTemplateRequest

type StackTemplateRequest struct {
	Name              string                 `json:"name"`
	Description       string                 `json:"description,omitempty"`
	Tags              []string               `json:"tags,omitempty"`
	UI                map[string]interface{} `json:"ui,omitempty"`
	Stack             string                 `json:"stack,omitempty"`
	ComponentsEnabled []string               `json:"componentsEnabled,omitempty"`
	Component         string                 `json:"component,omitempty"`
	Verbs             []string               `json:"verbs,omitempty"`
	Parameters        []Parameter            `json:"parameters,omitempty"`
	TeamsPermissions  []Team                 `json:"teamsPermissions,omitempty"`
}

type Task

type Task struct {
	Id             string     `json:"id"`
	JobId          string     `json:"jobId"`
	EntityType     string     `json:"entityType"`
	Kind           string     `json:"kind"`
	Operation      string     `json:"operation"`
	Status         string     `json:"status"`
	StartTime      *time.Time `json:"startTime"`
	CompletionTime *time.Time `json:"completionTime"`
	Entity         struct {
		Name       string `json:"name"`
		Domain     string `json:"domain"`
		Kind       string `json:"kind"`
		BaseDomain string `json:"baseDomain"`
	} `json:"entity"`
}

type TaskLifecycleRequest

type TaskLifecycleRequest struct {
	Terminate bool `json:"terminate"`
}

type Team

type Team struct {
	Id   string `json:"id,omitempty"`
	Name string `json:"name"`
	Role string `json:"role"`
}

type TemplateStatus

type TemplateStatus struct {
	Commit  string    `json:"commit,omitempty"`
	Ref     string    `json:"ref,omitempty"`
	Date    time.Time `json:"date,omitempty"`
	Author  string    `json:"author,omitempty"`
	Subject string    `json:"subject,omitempty"`
}

type Timestamps

type Timestamps struct {
	Start time.Time `json:"start,omitempty"`
	End   time.Time `json:"end,omitempty"`
}

type WorkerpoolLifecycleResponse

type WorkerpoolLifecycleResponse struct {
	Id       string        `json:"id"`
	JobId    string        `json:"jobId"`
	Instance StackInstance `json:"instance"`
}

type WorkerpoolPatch

type WorkerpoolPatch struct {
	Parameters []Parameter `json:"parameters,omitempty"`
}

type WorkerpoolRequest

type WorkerpoolRequest struct {
	Name        string                 `json:"name"`
	Description string                 `json:"description,omitempty"`
	Tags        []string               `json:"tags,omitempty"`
	UI          map[string]interface{} `json:"ui,omitempty"`
	Parameters  []Parameter            `json:"parameters,omitempty"`
}

type WsMessage

type WsMessage struct {
	Id      string `json:"id"`
	Entity  string `json:"entity"`
	Name    string `json:"name"`
	Action  string `json:"action"`
	Success bool   `json:"success"`
	Logs    string `json:"logs"`
}

Jump to

Keyboard shortcuts

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