nodetasks

package
v1.11.0 Latest Latest
Warning

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

Go to latest
Published: Dec 24, 2018 License: Apache-2.0 Imports: 23 Imported by: 146

Documentation

Index

Constants

View Source
const FileType_Directory = "directory"
View Source
const FileType_File = "file"
View Source
const FileType_Symlink = "symlink"

Variables

This section is empty.

Functions

func NewMountDiskTask

func NewMountDiskTask(name string, contents string, meta string) (fi.Task, error)

func NewPackage

func NewPackage(name string, contents string, meta string) (fi.Task, error)

func NewService

func NewService(name string, contents string, meta string) (fi.Task, error)

func NewUserTask

func NewUserTask(name string, contents string, meta string) (fi.Task, error)

Types

type Archive added in v1.10.0

type Archive struct {
	Name string

	// Source is the location for the archive
	Source string `json:"source,omitempty"`
	// Hash is the source tar
	Hash string `json:"hash,omitempty"`

	// TargetDir is the directory for extraction
	TargetDir string `json:"target,omitempty"`

	// StripComponents is the number of components to remove when expanding the archive
	StripComponents int `json:"stripComponents,omitempty"`
}

Archive task downloads and extracts a tar file

func (*Archive) CheckChanges added in v1.10.0

func (_ *Archive) CheckChanges(a, e, changes *Archive) error

CheckChanges immplements fi.Task::CheckChanges

func (*Archive) Dir added in v1.10.0

func (e *Archive) Dir() string

Dir implements CreatesDir::Dir

func (*Archive) Find added in v1.10.0

func (e *Archive) Find(c *fi.Context) (*Archive, error)

Find implements fi.Task::Find

func (*Archive) GetDependencies added in v1.10.0

func (e *Archive) GetDependencies(tasks map[string]fi.Task) []fi.Task

GetDependencies implements HasDependencies::GetDependencies

func (*Archive) GetName added in v1.10.0

func (e *Archive) GetName() *string

func (*Archive) RenderCloudInit added in v1.10.0

func (_ *Archive) RenderCloudInit(t *cloudinit.CloudInitTarget, a, e, changes *Archive) error

RenderCloudInit implements fi.Task::Render functionality for a CloudInit target

func (*Archive) RenderLocal added in v1.10.0

func (_ *Archive) RenderLocal(t *local.LocalTarget, a, e, changes *Archive) error

RenderLocal implements the fi.Task::Render functionality for a local target

func (*Archive) Run added in v1.10.0

func (e *Archive) Run(c *fi.Context) error

Run implements fi.Task::Run

func (*Archive) SetName added in v1.10.0

func (e *Archive) SetName(name string)

func (*Archive) String added in v1.10.0

func (e *Archive) String() string

String returns a string representation, implementing the Stringer interface

type AssetDefinition

type AssetDefinition struct {
	AssetPath string `json:"assetPath"`
	Mode      string `json:"mode"`
}

type BindMount added in v1.10.0

type BindMount struct {
	Source     string   `json:"source"`
	Mountpoint string   `json:"mountpoint"`
	Options    []string `json:"options,omitempty"`
	Recursive  bool     `json:"recursive"`
}

BindMount performs bind mounts

func (*BindMount) CheckChanges added in v1.10.0

func (s *BindMount) CheckChanges(a, e, changes *BindMount) error

func (*BindMount) Dir added in v1.10.0

func (e *BindMount) Dir() string

Dir implements CreatesDir::Dir

func (*BindMount) Find added in v1.10.0

func (e *BindMount) Find(c *fi.Context) (*BindMount, error)

func (*BindMount) GetDependencies added in v1.10.0

func (e *BindMount) GetDependencies(tasks map[string]fi.Task) []fi.Task

GetDependencies implements HasDependencies::GetDependencies

func (*BindMount) GetName added in v1.10.0

func (e *BindMount) GetName() *string

func (*BindMount) RenderCloudInit added in v1.10.0

func (_ *BindMount) RenderCloudInit(t *cloudinit.CloudInitTarget, a, e, changes *BindMount) error

func (*BindMount) RenderLocal added in v1.10.0

func (_ *BindMount) RenderLocal(t *local.LocalTarget, a, e, changes *BindMount) error

func (*BindMount) Run added in v1.10.0

func (e *BindMount) Run(c *fi.Context) error

func (*BindMount) SetName added in v1.10.0

func (e *BindMount) SetName(name string)

func (*BindMount) String added in v1.10.0

func (s *BindMount) String() string

type CreatesDir added in v1.10.0

type CreatesDir interface {
	Dir() string
}

CreatesDir is a marker interface for tasks that create directories, used for dependencies

type Executor added in v1.10.0

type Executor interface {
	CombinedOutput(args []string) ([]byte, error)
}

Executor allows execution of a command; it makes for testing of commands

type File

type File struct {
	AfterFiles      []string    `json:"afterfiles,omitempty"`
	Contents        fi.Resource `json:"contents,omitempty"`
	Group           *string     `json:"group,omitempty"`
	IfNotExists     bool        `json:"ifNotExists,omitempty"`
	Mode            *string     `json:"mode,omitempty"`
	OnChangeExecute [][]string  `json:"onChangeExecute,omitempty"`
	Owner           *string     `json:"owner,omitempty"`
	Path            string      `json:"path,omitempty"`
	Symlink         *string     `json:"symlink,omitempty"`
	Type            string      `json:"type"`
}

func NewFileTask

func NewFileTask(name string, src fi.Resource, destPath string, meta string) (*File, error)

func (*File) CheckChanges

func (s *File) CheckChanges(a, e, changes *File) error

func (*File) Dir added in v1.10.0

func (f *File) Dir() string

Dir implements CreatesDir::Dir

func (*File) Find

func (e *File) Find(c *fi.Context) (*File, error)

func (*File) GetDependencies

func (e *File) GetDependencies(tasks map[string]fi.Task) []fi.Task

GetDependencies implements HasDependencies::GetDependencies

func (*File) GetName added in v1.10.0

func (f *File) GetName() *string

func (*File) RenderCloudInit

func (_ *File) RenderCloudInit(t *cloudinit.CloudInitTarget, a, e, changes *File) error

func (*File) RenderLocal

func (_ *File) RenderLocal(t *local.LocalTarget, a, e, changes *File) error

func (*File) Run

func (e *File) Run(c *fi.Context) error

func (*File) SetName added in v1.10.0

func (f *File) SetName(name string)

func (*File) String

func (f *File) String() string

type GroupTask added in v1.11.0

type GroupTask struct {
	Name   string
	GID    *int
	System bool
}

GroupTask is responsible for creating a group, by calling groupadd

func (*GroupTask) CheckChanges added in v1.11.0

func (_ *GroupTask) CheckChanges(a, e, changes *GroupTask) error

func (*GroupTask) Find added in v1.11.0

func (e *GroupTask) Find(c *fi.Context) (*GroupTask, error)

func (*GroupTask) GetName added in v1.11.0

func (f *GroupTask) GetName() *string

func (*GroupTask) RenderCloudInit added in v1.11.0

func (_ *GroupTask) RenderCloudInit(t *cloudinit.CloudInitTarget, a, e, changes *GroupTask) error

func (*GroupTask) RenderLocal added in v1.11.0

func (_ *GroupTask) RenderLocal(t *local.LocalTarget, a, e, changes *GroupTask) error

func (*GroupTask) Run added in v1.11.0

func (e *GroupTask) Run(c *fi.Context) error

func (*GroupTask) SetName added in v1.11.0

func (f *GroupTask) SetName(name string)

func (*GroupTask) String added in v1.11.0

func (e *GroupTask) String() string

type LoadImageTask

type LoadImageTask struct {
	Source string
	Hash   string
}

LoadImageTask is responsible for downloading a docker image

func (*LoadImageTask) CheckChanges

func (_ *LoadImageTask) CheckChanges(a, e, changes *LoadImageTask) error

func (*LoadImageTask) Find

func (e *LoadImageTask) Find(c *fi.Context) (*LoadImageTask, error)

func (*LoadImageTask) GetDependencies added in v1.10.0

func (t *LoadImageTask) GetDependencies(tasks map[string]fi.Task) []fi.Task

func (*LoadImageTask) RenderCloudInit

func (_ *LoadImageTask) RenderCloudInit(t *cloudinit.CloudInitTarget, a, e, changes *LoadImageTask) error

func (*LoadImageTask) RenderLocal

func (_ *LoadImageTask) RenderLocal(t *local.LocalTarget, a, e, changes *LoadImageTask) error

func (*LoadImageTask) Run

func (e *LoadImageTask) Run(c *fi.Context) error

func (*LoadImageTask) String

func (t *LoadImageTask) String() string

type MountDiskTask

type MountDiskTask struct {
	Name string

	Device     string `json:"device"`
	Mountpoint string `json:"mountpoint"`
}

MountDiskTask is responsible for mounting a device on a mountpoint It will wait for the device to show up, safe_format_and_mount it, and then mount it.

func (*MountDiskTask) CheckChanges

func (s *MountDiskTask) CheckChanges(a, e, changes *MountDiskTask) error

func (*MountDiskTask) Dir added in v1.10.0

func (e *MountDiskTask) Dir() string

Dir implements CreatesDir::Dir

func (*MountDiskTask) Find

func (e *MountDiskTask) Find(c *fi.Context) (*MountDiskTask, error)

func (*MountDiskTask) GetDependencies added in v1.10.0

func (e *MountDiskTask) GetDependencies(tasks map[string]fi.Task) []fi.Task

GetDependencies implements HasDependencies::GetDependencies

func (*MountDiskTask) RenderCloudInit

func (_ *MountDiskTask) RenderCloudInit(t *cloudinit.CloudInitTarget, a, e, changes *MountDiskTask) error

func (*MountDiskTask) RenderLocal

func (_ *MountDiskTask) RenderLocal(t *local.LocalTarget, a, e, changes *MountDiskTask) error

func (*MountDiskTask) Run

func (e *MountDiskTask) Run(c *fi.Context) error

func (*MountDiskTask) String

func (s *MountDiskTask) String() string

type Package

type Package struct {
	Name string

	Version      *string `json:"version,omitempty"`
	Source       *string `json:"source,omitempty"`
	Hash         *string `json:"hash,omitempty"`
	PreventStart *bool   `json:"preventStart,omitempty"`

	// Healthy is true if the package installation did not fail
	Healthy *bool `json:"healthy,omitempty"`
}

func (*Package) CheckChanges

func (_ *Package) CheckChanges(a, e, changes *Package) error

func (*Package) Find

func (e *Package) Find(c *fi.Context) (*Package, error)

func (*Package) GetDependencies

func (e *Package) GetDependencies(tasks map[string]fi.Task) []fi.Task

GetDependencies computes dependencies for the package task

func (*Package) GetName added in v1.10.0

func (f *Package) GetName() *string

func (*Package) RenderCloudInit

func (_ *Package) RenderCloudInit(t *cloudinit.CloudInitTarget, a, e, changes *Package) error

func (*Package) RenderLocal

func (_ *Package) RenderLocal(t *local.LocalTarget, a, e, changes *Package) error

func (*Package) Run

func (e *Package) Run(c *fi.Context) error

func (*Package) SetName added in v1.10.0

func (f *Package) SetName(name string)

func (*Package) String

func (p *Package) String() string

String returns a string representation, implementing the Stringer interface

type Service

type Service struct {
	Name       string
	Definition *string `json:"definition,omitempty"`
	Running    *bool   `json:"running,omitempty"`

	// Enabled configures the service to start at boot (or not start at boot)
	Enabled *bool `json:"enabled,omitempty"`

	ManageState  *bool `json:"manageState,omitempty"`
	SmartRestart *bool `json:"smartRestart,omitempty"`
}

func (*Service) CheckChanges

func (s *Service) CheckChanges(a, e, changes *Service) error

func (*Service) Find

func (e *Service) Find(c *fi.Context) (*Service, error)

func (*Service) GetDependencies

func (p *Service) GetDependencies(tasks map[string]fi.Task) []fi.Task

func (*Service) GetName added in v1.10.0

func (f *Service) GetName() *string

func (*Service) InitDefaults added in v1.10.0

func (s *Service) InitDefaults()

func (*Service) RenderCloudInit

func (_ *Service) RenderCloudInit(t *cloudinit.CloudInitTarget, a, e, changes *Service) error

func (*Service) RenderLocal

func (_ *Service) RenderLocal(t *local.LocalTarget, a, e, changes *Service) error

func (*Service) Run

func (e *Service) Run(c *fi.Context) error

func (*Service) SetName added in v1.10.0

func (f *Service) SetName(name string)

func (*Service) String

func (s *Service) String() string

type UpdatePackages

type UpdatePackages struct {
	// We can't be completely empty or we don't run
	Updated bool
}

func NewUpdatePackages added in v1.4.1

func NewUpdatePackages() *UpdatePackages

func (*UpdatePackages) CheckChanges

func (s *UpdatePackages) CheckChanges(a, e, changes *UpdatePackages) error

func (*UpdatePackages) Find

func (e *UpdatePackages) Find(c *fi.Context) (*UpdatePackages, error)

func (*UpdatePackages) GetDependencies

func (p *UpdatePackages) GetDependencies(tasks map[string]fi.Task) []fi.Task

func (*UpdatePackages) RenderCloudInit

func (_ *UpdatePackages) RenderCloudInit(t *cloudinit.CloudInitTarget, a, e, changes *UpdatePackages) error

func (*UpdatePackages) RenderLocal

func (_ *UpdatePackages) RenderLocal(t *local.LocalTarget, a, e, changes *UpdatePackages) error

func (*UpdatePackages) Run

func (e *UpdatePackages) Run(c *fi.Context) error

func (*UpdatePackages) String

func (p *UpdatePackages) String() string

type UserTask

type UserTask struct {
	Name string

	UID   int    `json:"uid"`
	Shell string `json:"shell"`
	Home  string `json:"home"`
}

UserTask is responsible for creating a user, by calling useradd

func (*UserTask) CheckChanges

func (_ *UserTask) CheckChanges(a, e, changes *UserTask) error

func (*UserTask) Find

func (e *UserTask) Find(c *fi.Context) (*UserTask, error)

func (*UserTask) GetName added in v1.10.0

func (f *UserTask) GetName() *string

func (*UserTask) RenderCloudInit

func (_ *UserTask) RenderCloudInit(t *cloudinit.CloudInitTarget, a, e, changes *UserTask) error

func (*UserTask) RenderLocal

func (_ *UserTask) RenderLocal(t *local.LocalTarget, a, e, changes *UserTask) error

func (*UserTask) Run

func (e *UserTask) Run(c *fi.Context) error

func (*UserTask) SetName added in v1.10.0

func (f *UserTask) SetName(name string)

func (*UserTask) String

func (e *UserTask) String() string

Jump to

Keyboard shortcuts

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