Documentation
¶
Overview ¶
Package runtime is a service runtime manager
Index ¶
- Variables
- type CreateOption
- func CreateContext(ctx context.Context) CreateOption
- func CreateImage(img string) CreateOption
- func CreateNamespace(ns string) CreateOption
- func CreateType(t string) CreateOption
- func WithArgs(args ...string) CreateOption
- func WithCommand(cmd ...string) CreateOption
- func WithEnv(env []string) CreateOption
- func WithOutput(out io.Writer) CreateOption
- func WithRetries(retries int) CreateOption
- type CreateOptions
- type DeleteOption
- type DeleteOptions
- type Event
- type EventType
- type LogRecord
- type LogStream
- type LogsOption
- type LogsOptions
- type Option
- type Options
- type ReadOption
- type ReadOptions
- type Runtime
- type Scheduler
- type Service
- type UpdateOption
- type UpdateOptions
Constants ¶
This section is empty.
Variables ¶
var ( // DefaultRuntime is default vine runtime DefaultRuntime Runtime = NewRuntime() // DefaultName is default runtime service name DefaultName = "go.vine.runtime" ErrAlreadyExists = errors.New("already exists") )
Functions ¶
This section is empty.
Types ¶
type CreateOption ¶
type CreateOption func(o *CreateOptions)
func CreateContext ¶
func CreateContext(ctx context.Context) CreateOption
CreateContext sets the context
func CreateNamespace ¶
func CreateNamespace(ns string) CreateOption
CreateNamespace sets the namespace
func CreateType ¶
func CreateType(t string) CreateOption
CreateType sets the type of service to create
func WithArgs ¶
func WithArgs(args ...string) CreateOption
WithArgs specifies the command to execute
func WithCommand ¶
func WithCommand(cmd ...string) CreateOption
WithCommand specifies the command to execute
func WithRetries ¶
func WithRetries(retries int) CreateOption
WithRetries sets the max retries attemps
type CreateOptions ¶
type CreateOptions struct {
// Command to execut
Command []string
// Args to pass into command
Args []string
// Environment to configure
Env []string
// Log output
Output io.Writer
// Type of service to create
Type string
// Retries before failing deploy
Retries int
// Specify the image to use
Image string
// Namespace to create the service in
Namespace string
// Specify the context to use
Context context.Context
}
CreateOptions configure runtime services
type DeleteOption ¶
type DeleteOption func(o *DeleteOptions)
func DeleteContext ¶
func DeleteContext(ctx context.Context) DeleteOption
DeleteContext sets the context
func DeleteNamespace ¶
func DeleteNamespace(ns string) DeleteOption
DeleteNamespace sets the namespace
type DeleteOptions ¶
type Event ¶
type Event struct {
// ID of the event
ID string
// Type is event type
Type EventType
// Timestamp is event timestamp
Timestamp time.Time
// Service the event relates to
Service *Service
// Options to use when processing the event
Options *CreateOptions
}
Event is notification event
type LogsOption ¶
type LogsOption func(o *LogsOptions)
LogsOption configures runtime logging
func LogsCount ¶
func LogsCount(count int64) LogsOption
LogsExistingCount confiures how many existing lines to show
func LogsStream ¶
func LogsStream(stream bool) LogsOption
LogsStream configures whether to stream new lines
type LogsOptions ¶
type LogsOptions struct {
// How many existing lines to show
Count int64
// Stream new lines?
Stream bool
// Namespace the service is running in
Namespace string
// Specify the context to use
Context context.Context
}
LogsOptions configure runtime logging
type Option ¶
type Option func(o *Options)
func WithScheduler ¶
WithScheduler specifies a scheduler for updates
type Options ¶
type Options struct {
// Scheduler for updates
Scheduler Scheduler
// Service type to manage
Type string
// Source of the services repository
Source string
// Base image to use
Image string
// Client to use when making requests
Client client.Client
}
Options configure runtime
type ReadOption ¶
type ReadOption func(o *ReadOptions)
func ReadService ¶
func ReadService(service string) ReadOption
ReadService returns services with the given name
func ReadVersion ¶
func ReadVersion(version string) ReadOption
ReadVersion confifgures service version
type ReadOptions ¶
type ReadOptions struct {
// Service name
Service string
// Version queries services with given version
Version string
// Type of service
Type string
// Namespace the service is running in
Namespace string
// Specify the context to use
Context context.Context
}
ReadOptions queries runtime services
type Runtime ¶
type Runtime interface {
// Init initializes runtime
Init(...Option) error
// Create registers a service
Create(*Service, ...CreateOption) error
// Read returns the service
Read(...ReadOption) ([]*Service, error)
// Update the service in place
Update(*Service, ...UpdateOption) error
// Delete remove a service
Delete(*Service, ...DeleteOption) error
// Logs returns the logs for a service
Logs(*Service, ...LogsOption) (LogStream, error)
// Start starts the runtime
Start() error
// Stop shuts down the runtime
Stop() error
// String describes runtime
String() string
}
Runtime is a service runtime manager
func NewRuntime ¶
NewRuntime creates new local runtime and returns it
type Scheduler ¶
type Scheduler interface {
// Notify publishes schedule events
Notify() (<-chan Event, error)
// Close stops the scheduler
Close() error
}
Scheduler is a runtime service scheduler
type Service ¶
type Service struct {
// Name of the service
Name string
// Version of the service
Version string
// url location of source
Source string
// Metadata stores metadata
Metadata map[string]string
}
Service is runtime service
type UpdateOption ¶
type UpdateOption func(o *UpdateOptions)
func UpdateContext ¶
func UpdateContext(ctx context.Context) UpdateOption
UpdateContext sets the context
func UpdateNamespace ¶
func UpdateNamespace(ns string) UpdateOption
UpdateNamespace sets the namespace
type UpdateOptions ¶
Directories
¶
| Path | Synopsis |
|---|---|
|
Package local provides a local runtime
|
Package local provides a local runtime |
|
build
Package build builds a vine runtime package
|
Package build builds a vine runtime package |
|
build/docker
Package docker builds docker images
|
Package docker builds docker images |
|
build/go
Package golang is a go package manager
|
Package golang is a go package manager |
|
process
Package process executes a binary
|
Package process executes a binary |
|
process/os
Package os runs processes locally Package os runs processes locally
|
Package os runs processes locally Package os runs processes locally |
|
source
Package source retrieves source code
|
Package source retrieves source code |
|
source/git
Package git provides a git source
|
Package git provides a git source |
|
source/go
Package golang is a source for Go
|
Package golang is a source for Go |