state

package
v0.10.2 Latest Latest
Warning

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

Go to latest
Published: Oct 4, 2017 License: GPL-3.0 Imports: 9 Imported by: 0

Documentation

Overview

* Convey * Copyright 2016-2017 Gary Kramlich <[email protected]> * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>.

* Convey * Copyright 2016-2017 Gary Kramlich <[email protected]> * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>.

Index

Constants

View Source
const ExpansionLimit = 100

Variables

This section is empty.

Functions

This section is empty.

Types

type State

type State struct {
	Network       network.Network
	Workspace     workspace.Workspace
	KeepWorkspace bool

	ForceSequential bool
	EnableSSHAgent  bool
	TaskTimeout     time.Duration
	Environment     []string

	DockerConfig string
	CPUShares    string
	Memory       string
	// contains filtered or unexported fields
}

func New added in v0.10.2

func New() *State

func (*State) GetDetached added in v0.10.2

func (st *State) GetDetached() []string

GetDetached returns a list of all detached containers.

func (*State) MapSlice added in v0.10.0

func (st *State) MapSlice(env, fullEnv []string) ([]string, error)

MapSlice calls SliceMapper on the given environment, but also checks to see if the variable in the env parameter can be expanded into a list.

func (*State) MarkDetached added in v0.10.2

func (st *State) MarkDetached(name string)

MarkDetached will add the given container name into the list of containers running in detached mode which must be shut down at the end of the plan. This falls through directly to the root state so that states wrapping the global one do not have to sync additional detached container names.

func (*State) Valid

func (st *State) Valid() error

func (*State) WrapWithExpandableEnv added in v0.10.2

func (st *State) WrapWithExpandableEnv(env, expandable []string, delimiter string) *State

WrapWithExpandableEnv will create a shallow clone of the state with a reference to the current state as "parent" with a modified environment. This creates a local stack of states which do not interfere with other goroutines. A pop operation is the same as ignoring the wrapped values and using the underlying state. This stack is used to map a slice within an extended task.

Jump to

Keyboard shortcuts

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