payloads

package
v0.0.0-...-1c213c1 Latest Latest
Warning

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

Go to latest
Published: Mar 25, 2022 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DefaultLifecycleConfig = config.DefaultLifecycleConfig{
	Type:            "buildpack",
	Stack:           "cflinuxfs3",
	StagingMemoryMB: 1024,
	StagingDiskMB:   1024,
}

DefaultLifecycleConfig is overwritten by main.go

Functions

func ParseArrayParam

func ParseArrayParam(arrayParam *string) []string

Types

type AppCreate

type AppCreate struct {
	Name                 string            `json:"name" validate:"required"`
	EnvironmentVariables map[string]string `json:"environment_variables"`
	Relationships        AppRelationships  `json:"relationships" validate:"required"`
	Lifecycle            *Lifecycle        `json:"lifecycle"`
	Metadata             Metadata          `json:"metadata"`
}

func (AppCreate) ToAppCreateMessage

func (p AppCreate) ToAppCreateMessage() repositories.CreateAppMessage

type AppList

type AppList struct {
	Names      *string `schema:"names"`
	GUIDs      *string `schema:"guids"`
	SpaceGuids *string `schema:"space_guids"`
	OrderBy    string  `schema:"order_by"`
}

func (*AppList) SupportedFilterKeys

func (a *AppList) SupportedFilterKeys() []string

func (*AppList) ToMessage

func (a *AppList) ToMessage() repositories.ListAppsMessage

type AppPatchEnvVars

type AppPatchEnvVars struct {
	Var map[string]interface{} `json:"var" validate:"required,dive,keys,startsnotwith=VCAP_,startsnotwith=VMC_,ne=PORT,endkeys"`
}

func (*AppPatchEnvVars) ToMessage

func (a *AppPatchEnvVars) ToMessage(appGUID, spaceGUID string) repositories.PatchAppEnvVarsMessage

type AppRelationships

type AppRelationships struct {
	Space Relationship `json:"space" validate:"required"`
}

type AppResource

type AppResource struct {
	GUID    string                 `json:"guid" validate:"required"`
	Process *DestinationAppProcess `json:"process"`
}

type AppSetCurrentDroplet

type AppSetCurrentDroplet struct {
	Relationship `json:",inline" validate:"required"`
}

type BuildCreate

type BuildCreate struct {
	Package         *RelationshipData `json:"package" validate:"required"`
	StagingMemoryMB *int              `json:"staging_memory_in_mb"`
	StagingDiskMB   *int              `json:"staging_disk_in_mb"`
	Lifecycle       *Lifecycle        `json:"lifecycle"`
	Metadata        Metadata          `json:"metadata"`
}

func (*BuildCreate) ToMessage

type BuildpackList

type BuildpackList struct {
	OrderBy string `schema:"order_by"`
}

func (*BuildpackList) SupportedQueryParams

func (d *BuildpackList) SupportedQueryParams() []string

type Data

type Data struct {
	Timeout           *int64  `json:"timeout"`
	Endpoint          *string `json:"endpoint"`
	InvocationTimeout *int64  `json:"invocation_timeout"`
}

type Destination

type Destination struct {
	App      *AppResource `json:"app" validate:"required"`
	Port     *int         `json:"port"`
	Protocol *string      `json:"protocol" validate:"omitempty,oneof=http1"`
}

type DestinationAppProcess

type DestinationAppProcess struct {
	Type string `json:"type" validate:"required"`
}

type DestinationListCreate

type DestinationListCreate struct {
	Destinations []Destination `json:"destinations" validate:"required,dive"`
}

func (DestinationListCreate) ToMessage

type DomainList

type DomainList struct {
	Names *string `schema:"names"`
}

func (*DomainList) SupportedFilterKeys

func (d *DomainList) SupportedFilterKeys() []string

func (*DomainList) ToMessage

type HealthCheck

type HealthCheck struct {
	Type *string `json:"type"`
	Data *Data   `json:"data"`
}

type Lifecycle

type Lifecycle struct {
	Type string        `json:"type" validate:"required"`
	Data LifecycleData `json:"data" validate:"required"`
}

type LifecycleData

type LifecycleData struct {
	Buildpacks []string `json:"buildpacks" validate:"required"`
	Stack      string   `json:"stack" validate:"required"`
}

type Manifest

type Manifest struct {
	Version      int                   `yaml:"version"`
	Applications []ManifestApplication `yaml:"applications" validate:"max=1,dive"`
}

type ManifestApplication

type ManifestApplication struct {
	Name         string                       `yaml:"name" validate:"required"`
	Env          map[string]string            `yaml:"env"`
	Processes    []ManifestApplicationProcess `yaml:"processes" validate:"dive"`
	DefaultRoute bool                         `yaml:"default-route"`
	Routes       []ManifestRoute              `yaml:"routes" validate:"dive"`
}

func (ManifestApplication) ToAppCreateMessage

func (a ManifestApplication) ToAppCreateMessage(spaceGUID string) repositories.CreateAppMessage

type ManifestApplicationProcess

type ManifestApplicationProcess struct {
	Type                         string  `yaml:"type" validate:"required"`
	Command                      *string `yaml:"command"`
	DiskQuota                    *string `yaml:"disk_quota" validate:"megabytestring"`
	HealthCheckHTTPEndpoint      *string `yaml:"health-check-http-endpoint"`
	HealthCheckInvocationTimeout *int64  `yaml:"health-check-invocation-timeout"`
	HealthCheckType              *string `yaml:"health-check-type" validate:"omitempty,oneof=none process port http"`
	Instances                    *int    `yaml:"instances" validate:"omitempty,gte=0"`
	Memory                       *string `yaml:"memory" validate:"megabytestring"`
	Timeout                      *int64  `yaml:"timeout"`
}

func (ManifestApplicationProcess) ToProcessCreateMessage

func (p ManifestApplicationProcess) ToProcessCreateMessage(appGUID, spaceGUID string) repositories.CreateProcessMessage

func (ManifestApplicationProcess) ToProcessPatchMessage

func (p ManifestApplicationProcess) ToProcessPatchMessage(processGUID, spaceGUID string) repositories.PatchProcessMessage

type ManifestRoute

type ManifestRoute struct {
	Route *string `yaml:"route" validate:"route"`
}

type Metadata

type Metadata struct {
	Labels      map[string]string `json:"labels"`
	Annotations map[string]string `json:"annotations"`
}

type OrgCreate

type OrgCreate struct {
	Name      string   `json:"name" validate:"required"`
	Suspended bool     `json:"suspended"`
	Metadata  Metadata `json:"metadata"`
}

func (OrgCreate) ToMessage

func (p OrgCreate) ToMessage() repositories.CreateOrgMessage

type PackageCreate

type PackageCreate struct {
	Type          string                `json:"type" validate:"required,oneof='bits'"`
	Relationships *PackageRelationships `json:"relationships" validate:"required"`
}

func (PackageCreate) ToMessage

type PackageListDropletsQueryParameters

type PackageListDropletsQueryParameters struct {
	// Below parameters are ignored, but must be included to ignore as query parameters
	States  string `schema:"states"`
	PerPage string `schema:"per_page"`
}

func (*PackageListDropletsQueryParameters) SupportedQueryParameters

func (p *PackageListDropletsQueryParameters) SupportedQueryParameters() []string

func (*PackageListDropletsQueryParameters) ToMessage

type PackageListQueryParameters

type PackageListQueryParameters struct {
	AppGUIDs *string `schema:"app_guids"`
	States   *string `schema:"states"`
	OrderBy  string  `schema:"order_by"`

	// Below parameters are ignored, but must be included to ignore as query parameters
	PerPage string `schema:"per_page"`
}

func (*PackageListQueryParameters) SupportedQueryParameters

func (p *PackageListQueryParameters) SupportedQueryParameters() []string

func (*PackageListQueryParameters) ToMessage

type PackageRelationships

type PackageRelationships struct {
	App *Relationship `json:"app" validate:"required"`
}

type ProcessList

type ProcessList struct {
	AppGUIDs *string `schema:"app_guids"`
}

func (*ProcessList) SupportedFilterKeys

func (p *ProcessList) SupportedFilterKeys() []string

func (*ProcessList) ToMessage

type ProcessPatch

type ProcessPatch struct {
	Command     *string      `json:"command"`
	HealthCheck *HealthCheck `json:"health_check"`
}

func (ProcessPatch) ToProcessPatchMessage

func (p ProcessPatch) ToProcessPatchMessage(processGUID, spaceGUID string) repositories.PatchProcessMessage

type ProcessScale

type ProcessScale struct {
	Instances *int   `json:"instances" validate:"omitempty,gte=0"`
	MemoryMB  *int64 `json:"memory_in_mb" validate:"omitempty,gt=0"`
	DiskMB    *int64 `json:"disk_in_mb" validate:"omitempty,gt=0"`
}

func (ProcessScale) ToRecord

type Relationship

type Relationship struct {
	Data *RelationshipData `json:"data" validate:"required"`
}

type RelationshipData

type RelationshipData struct {
	GUID string `json:"guid" validate:"required"`
}

type RoleCreate

type RoleCreate struct {
	Type          string            `json:"type" validate:"required"`
	Relationships RoleRelationships `json:"relationships" validate:"required"`
}

func (RoleCreate) ToMessage

type RoleRelationships

type RoleRelationships struct {
	User                     *UserRelationship `json:"user" validate:"required_without=KubernetesServiceAccount"`
	KubernetesServiceAccount *Relationship     `json:"kubernetesServiceAccount" validate:"required_without=User"`
	Space                    *Relationship     `json:"space"`
	Organization             *Relationship     `json:"organization"`
}

type RouteCreate

type RouteCreate struct {
	Host          string             `json:"host" validate:"hostname_rfc1123,required"` // TODO: Not required when we support private domains
	Path          string             `json:"path" validate:"routepathstartswithslash"`
	Relationships RouteRelationships `json:"relationships" validate:"required"`
	Metadata      Metadata           `json:"metadata"`
}

func (RouteCreate) ToMessage

func (p RouteCreate) ToMessage(domainNamespace, domainName string) repositories.CreateRouteMessage

type RouteList

type RouteList struct {
	AppGUIDs    *string `schema:"app_guids"`
	SpaceGUIDs  *string `schema:"space_guids"`
	DomainGUIDs *string `schema:"domain_guids"`
	Hosts       *string `schema:"hosts"`
	Paths       *string `schema:"paths"`
}

func (*RouteList) SupportedFilterKeys

func (p *RouteList) SupportedFilterKeys() []string

func (*RouteList) ToMessage

func (p *RouteList) ToMessage() repositories.ListRoutesMessage

type RouteRelationships

type RouteRelationships struct {
	Domain Relationship `json:"domain" validate:"required"`
	Space  Relationship `json:"space" validate:"required"`
}

type ServiceBindingCreate

type ServiceBindingCreate struct {
	Relationships *ServiceBindingRelationships `json:"relationships" validate:"required"`
	Type          string                       `json:"type" validate:"oneof=app"`
	Name          *string                      `json:"name"`
}

func (ServiceBindingCreate) ToMessage

type ServiceBindingList

type ServiceBindingList struct {
	AppGUIDs             *string `schema:"app_guids"`
	ServiceInstanceGUIDs *string `schema:"service_instance_guids"`
	Include              *string `schema:"include" validate:"oneof=app"`
	Type                 *string `schema:"type" validate:"oneof=app"`
}

func (*ServiceBindingList) SupportedFilterKeys

func (l *ServiceBindingList) SupportedFilterKeys() []string

func (*ServiceBindingList) ToMessage

type ServiceBindingRelationships

type ServiceBindingRelationships struct {
	App             *Relationship `json:"app" validate:"required"`
	ServiceInstance *Relationship `json:"service_instance" validate:"required"`
}

type ServiceInstanceCreate

type ServiceInstanceCreate struct {
	Name          string                       `json:"name" validate:"required"`
	Type          string                       `json:"type" validate:"required,oneof=user-provided"`
	Tags          []string                     `json:"tags" validate:"serviceinstancetaglength"`
	Credentials   map[string]string            `json:"credentials"`
	Relationships ServiceInstanceRelationships `json:"relationships" validate:"required"`
	Metadata      Metadata                     `json:"metadata"`
}

func (ServiceInstanceCreate) ToServiceInstanceCreateMessage

func (p ServiceInstanceCreate) ToServiceInstanceCreateMessage() repositories.CreateServiceInstanceMessage

type ServiceInstanceList

type ServiceInstanceList struct {
	Names      *string `schema:"names"`
	SpaceGuids *string `schema:"space_guids"`
	OrderBy    string  `schema:"order_by"`
}

func (*ServiceInstanceList) SupportedFilterKeys

func (l *ServiceInstanceList) SupportedFilterKeys() []string

func (*ServiceInstanceList) ToMessage

type ServiceInstanceRelationships

type ServiceInstanceRelationships struct {
	Space Relationship `json:"space" validate:"required"`
}

type SpaceCreate

type SpaceCreate struct {
	Name          string             `json:"name" validate:"required"`
	Relationships SpaceRelationships `json:"relationships" validate:"required"`
	Metadata      Metadata           `json:"metadata"`
}

func (SpaceCreate) ToMessage

func (p SpaceCreate) ToMessage(imageRegistryCredentialSecret string) repositories.CreateSpaceMessage

type SpaceRelationships

type SpaceRelationships struct {
	Org Relationship `json:"organization" validate:"required"`
}

type UserRelationship

type UserRelationship struct {
	Data UserRelationshipData `json:"data" validate:"required"`
}

type UserRelationshipData

type UserRelationshipData struct {
	Username string `json:"username" validate:"required_without=GUID"`
	GUID     string `json:"guid" validate:"required_without=Username"`
}

Jump to

Keyboard shortcuts

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