models

package
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Jul 2, 2021 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type App

type App struct {

	// A simple label to track what apps are related
	Group string `json:"group,omitempty" gorm:"index"`

	// Whether or not the app is returned during regular requests
	Hidden bool `json:"hidden,omitempty" gorm:"index"`

	// id
	// Required: true
	// Format: uuid4
	ID strfmt.UUID4 `json:"id" gorm:"primaryKey"`

	// The image and tag the application runs
	Image string `json:"image,omitempty"`

	// The apps name, used in the CLI with the `-a|--app` flag
	// Required: true
	Name string `json:"name" gorm:"uniqueIndex"`
}

App app

swagger:model App

func (*App) MarshalBinary

func (m *App) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*App) UnmarshalBinary

func (m *App) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*App) Validate

func (m *App) Validate(formats strfmt.Registry) error

Validate validates this app

type AppEdit added in v0.4.0

type AppEdit struct {

	// A simple label to track what apps are related
	Group string `json:"group,omitempty"`

	// Whether or not the app is returned during regular requests
	Hidden bool `json:"hidden,omitempty"`

	// The apps name, used in the CLI with the `-a|--app` flag
	// Required: true
	Name string `json:"name"`
}

AppEdit app edit

swagger:model AppEdit

func (*AppEdit) MarshalBinary added in v0.4.0

func (m *AppEdit) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*AppEdit) UnmarshalBinary added in v0.4.0

func (m *AppEdit) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*AppEdit) Validate added in v0.4.0

func (m *AppEdit) Validate(formats strfmt.Registry) error

Validate validates this app edit

type AppInput

type AppInput struct {

	// A simple label to track what apps are related
	Group string `json:"group,omitempty" gorm:"index"`

	// Whether or not the app is hidden during regular requests
	Hidden bool `json:"hidden,omitempty"`

	// The image and tag the application runs
	// Required: true
	Image string `json:"image"`

	// The apps name, used in the CLI with the `-a|--app` flag
	// Required: true
	Name string `json:"name"`
}

AppInput app input

swagger:model AppInput

func (*AppInput) MarshalBinary

func (m *AppInput) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*AppInput) UnmarshalBinary

func (m *AppInput) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*AppInput) Validate

func (m *AppInput) Validate(formats strfmt.Registry) error

Validate validates this app input

type Health

type Health struct {

	// The version of docker running on the host, or null if docker is not running
	// Required: true
	DockerVersion *string `json:"dockerVersion"`

	// swarm
	// Required: true
	Swarm *HealthSwarm `json:"swarm"`

	// Miasma's current version
	// Required: true
	Version *string `json:"version"`
}

Health health

swagger:model Health

func (*Health) MarshalBinary

func (m *Health) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*Health) UnmarshalBinary

func (m *Health) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*Health) Validate

func (m *Health) Validate(formats strfmt.Registry) error

Validate validates this health

type HealthSwarm

type HealthSwarm struct {

	// UTC timestamps when the swarm was created
	CreatedAt string `json:"createdAt,omitempty"`

	// The swarm's ID
	ID string `json:"id,omitempty"`

	// The command for a node to run to join the swarm
	JoinCommand string `json:"joinCommand,omitempty"`

	// UTC timestamps when the swarm was last updated
	UpdatedAt string `json:"updatedAt,omitempty"`
}

HealthSwarm The info about the docker swarm if the host running miasma is apart of one. If it is not apart of a swarm, it returns `null`

swagger:model HealthSwarm

func (*HealthSwarm) MarshalBinary

func (m *HealthSwarm) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*HealthSwarm) UnmarshalBinary

func (m *HealthSwarm) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*HealthSwarm) Validate

func (m *HealthSwarm) Validate(formats strfmt.Registry) error

Validate validates this health swarm

type InputRunConfig added in v0.4.0

type InputRunConfig struct {

	// command
	Command []string `json:"command"`

	// networks
	// Unique: true
	Networks []string `json:"networks"`

	// placement
	// Unique: true
	Placement []string `json:"placement"`

	// published ports
	// Unique: true
	PublishedPorts []uint32 `json:"publishedPorts"`

	// target ports
	// Unique: true
	TargetPorts []uint32 `json:"targetPorts"`

	// volume bindings for the app
	Volumes []*RunConfigVolume `json:"volumes"`
}

InputRunConfig All the properties that define how the application runs in docker

swagger:model InputRunConfig

func (*InputRunConfig) MarshalBinary added in v0.4.0

func (m *InputRunConfig) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*InputRunConfig) UnmarshalBinary added in v0.4.0

func (m *InputRunConfig) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*InputRunConfig) Validate added in v0.4.0

func (m *InputRunConfig) Validate(formats strfmt.Registry) error

Validate validates this input run config

type InputTraefikPluginConfig added in v0.4.0

type InputTraefikPluginConfig struct {

	// Describes the hostname the app is served at ("test.domain.com")
	Host *string `json:"host,omitempty"`

	// The path at a given host the app can be reached from ("/api"). It should start with a "/"
	Path *string `json:"path,omitempty"`

	// Instead of using `host` and/or `path`, you can specify the exact rule Traefik will use to route to the app. See [Traefik's documentation]() for how to use this field. This field takes priority over `host` and `path`
	TraefikRule *string `json:"traefikRule,omitempty"`
}

InputTraefikPluginConfig input traefik plugin config

swagger:model InputTraefikPluginConfig

func (*InputTraefikPluginConfig) MarshalBinary added in v0.4.0

func (m *InputTraefikPluginConfig) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*InputTraefikPluginConfig) UnmarshalBinary added in v0.4.0

func (m *InputTraefikPluginConfig) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*InputTraefikPluginConfig) Validate added in v0.4.0

func (m *InputTraefikPluginConfig) Validate(formats strfmt.Registry) error

Validate validates this input traefik plugin config

type Plugin

type Plugin struct {

	// Whether or not the plugin is installed
	// Required: true
	Installed bool `json:"installed"`

	// The plugin's name. It can be used to install a plugin
	// Required: true
	Name string `json:"name" gorm:"primaryKey"`
}

Plugin plugin

swagger:model Plugin

func (*Plugin) MarshalBinary

func (m *Plugin) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*Plugin) UnmarshalBinary

func (m *Plugin) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*Plugin) Validate

func (m *Plugin) Validate(formats strfmt.Registry) error

Validate validates this plugin

type RunConfig added in v0.4.0

type RunConfig struct {

	// The ID of the app the run config is for
	// Required: true
	// Format: uuid4
	AppID strfmt.UUID4 `json:"appId" gorm:"primaryKey"`

	// command
	Command []string `json:"command"`

	// The currently running image digest (hash). Used internally when running applications
	// instead of the tag because the when a new image is pushed, the tag stays the same but the
	// digest changes
	//
	// Required: true
	ImageDigest string `json:"imageDigest"`

	// A list of other apps that the service communicates with using their service name and docker's internal DNS. Services don't have to be two way; only the service that accesses the other needs the other network added
	// Unique: true
	Networks []string `json:"networks"`

	// The placement constraints specifying which nodes the app will be ran on. Any valid value for the [`--constraint` flag](https://docs.docker.com/engine/swarm/services/#placement-constraints) is valid item in this list
	// Unique: true
	Placement []string `json:"placement"`

	// The ports that you access the app through in the swarm. This field can, and should be left empty. Miasma automatically manages assigning published ports between 3001-4999. If you need to specify a port, make sure it's outside that range or the port has not been taken. Plugins have set ports starting with 4000, so avoid 4000-4020 if you want to add a plugin at a later date. If these ports are ever cleared, the app will continue using the same ports it was published to before, so that the ports don't change unnecessarily. If you removed it to clear a port for another app/plugin, make sure to restart the app and a new, random port will be allocated for the app, freeing the old port
	// Unique: true
	PublishedPorts []uint32 `json:"publishedPorts"`

	// The ports that the app is listening to inside the container. If no target ports are specified, then the container should respect the `PORT` env var.
	// Unique: true
	TargetPorts []uint32 `json:"targetPorts"`

	// volume bindings for the app
	Volumes []*RunConfigVolume `json:"volumes"`
}

RunConfig All the properties that define how the application runs in docker

swagger:model RunConfig

func (*RunConfig) MarshalBinary added in v0.4.0

func (m *RunConfig) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*RunConfig) UnmarshalBinary added in v0.4.0

func (m *RunConfig) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*RunConfig) Validate added in v0.4.0

func (m *RunConfig) Validate(formats strfmt.Registry) error

Validate validates this run config

type RunConfigVolume added in v0.4.0

type RunConfigVolume struct {

	// The volume name or directory on the host that the data is stored in
	Source string `json:"Source,omitempty"`

	// The path inside the container that the data is served from
	Target string `json:"Target,omitempty"`
}

RunConfigVolume run config volume

swagger:model RunConfigVolume

func (*RunConfigVolume) MarshalBinary added in v0.4.0

func (m *RunConfigVolume) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*RunConfigVolume) UnmarshalBinary added in v0.4.0

func (m *RunConfigVolume) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*RunConfigVolume) Validate added in v0.4.0

func (m *RunConfigVolume) Validate(formats strfmt.Registry) error

Validate validates this run config volume

type TraefikPluginConfig added in v0.4.0

type TraefikPluginConfig struct {

	// app Id
	// Format: uuid4
	AppID strfmt.UUID4 `json:"appId,omitempty" gorm:"primaryKey"`

	// Describes the hostname the app is served at ("test.domain.com")
	Host *string `json:"host,omitempty"`

	// The path at a given host the app can be reached from ("/api"). It should start with a "/"
	Path *string `json:"path,omitempty"`

	// Instead of using `host` and/or `path`, you can specify the exact rule Traefik will use to route to the app. See [Traefik's documentation]() for how to use this field. This field takes priority over `host` and `path`
	TraefikRule *string `json:"traefikRule,omitempty"`
}

TraefikPluginConfig traefik plugin config

swagger:model TraefikPluginConfig

func (*TraefikPluginConfig) MarshalBinary added in v0.4.0

func (m *TraefikPluginConfig) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*TraefikPluginConfig) UnmarshalBinary added in v0.4.0

func (m *TraefikPluginConfig) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*TraefikPluginConfig) Validate added in v0.4.0

func (m *TraefikPluginConfig) Validate(formats strfmt.Registry) error

Validate validates this traefik plugin config

Jump to

Keyboard shortcuts

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