Documentation ¶
Index ¶
- func AgentRestart(client *api.Client, nodeID string) (string, error)
- func AllocExec(allocID, taskID, execCmd, ns string, wc *WaitConfig) (string, error)
- func AllocIDsFromAllocationListStubs(allocs []*api.AllocationListStub) []string
- func AllocLogs(allocID string, logStream LogStream) (string, error)
- func AllocStatuses(jobID, ns string) ([]string, error)
- func AllocStatusesRescheduled(jobID, ns string) ([]string, error)
- func AllocTaskEventsForJob(jobID, ns string) (map[string][]map[string]string, error)
- func AllocTaskLogs(allocID, task string, logStream LogStream) (string, error)
- func AllocsForJob(jobID, ns string) ([]map[string]string, error)
- func AllocsForNode(nodeID string) ([]map[string]string, error)
- func ChildrenJobSummary(jobID string) ([]map[string]string, error)
- func Command(cmd string, args ...string) (string, error)
- func CreateConsulNamespaces(t *testing.T, client *capi.Client, namespaces []string)
- func CreateConsulPolicy(t *testing.T, client *capi.Client, namespace string, policy ConsulPolicy) string
- func CreateConsulToken(t *testing.T, client *capi.Client, namespace, policyID string) string
- func DeleteConsulConfigEntry(t *testing.T, client *capi.Client, namespace, kind, name string)
- func DeleteConsulKey(t *testing.T, client *capi.Client, namespace, key string)
- func DeleteConsulNamespaces(t *testing.T, client *capi.Client, namespaces []string)
- func DeleteConsulPolicies(t *testing.T, client *capi.Client, policies map[string][]string)
- func DeleteConsulTokens(t *testing.T, client *capi.Client, tokens map[string][]string)
- func DeploymentsForJob(t *testing.T, nomadClient *api.Client, jobID string) []*api.Deployment
- func Dispatch(jobID string, meta map[string]string, payload string) error
- func DispatchedJobs(jobID string) ([]map[string]string, error)
- func GetField(output, key string) (string, error)
- func GetSection(output, key string) (string, error)
- func JobInspectTemplate(jobID, template string) (string, error)
- func LastDeploymentID(jobID, ns string) (string, error)
- func ListConsulNamespaces(t *testing.T, client *capi.Client) []string
- func ListLinuxClientNodes(client *api.Client) ([]string, error)
- func ListWindowsClientNodes(client *api.Client) ([]string, error)
- func NewE2EJob(jobfile string) framework.TestCase
- func NodeStatusList() ([]map[string]string, error)
- func NodeStatusListFiltered(filterFn func(string) bool) ([]map[string]string, error)
- func Parse2(t *testing.T, jobFile string) (*api.Job, error)
- func ParseColumns(section string) ([]map[string]string, error)
- func ParseFields(section string) (map[string]string, error)
- func PeriodicForce(jobID string) error
- func PreviouslyLaunched(jobID string) ([]map[string]string, error)
- func PutConsulKey(t *testing.T, client *capi.Client, namespace, key, value string)
- func ReadConsulConfigEntry(t *testing.T, client *capi.Client, namespace, kind, name string) capi.ConfigEntry
- func Register(jobID, jobFilePath string) error
- func RegisterAllocs(t *testing.T, nomadClient *api.Client, jobFile, jobID, cToken string) []*api.AllocationListStub
- func RegisterAndWaitForAllocs(t *testing.T, nomadClient *api.Client, jobFile, jobID, cToken string) []*api.AllocationListStub
- func RegisterFromJobspec(jobID, jobspec string) error
- func RequireConsulDeregistered(require *require.Assertions, client *capi.Client, namespace, service string)
- func RequireConsulRegistered(require *require.Assertions, client *capi.Client, namespace, service string, ...)
- func RequireConsulStatus(require *require.Assertions, client *capi.Client, ...)
- func WaitForAllocFile(allocID, path string, test func(string) bool, wc *WaitConfig) error
- func WaitForAllocNotPending(t *testing.T, nomadClient *api.Client, allocID string)
- func WaitForAllocRunning(t *testing.T, nomadClient *api.Client, allocID string)
- func WaitForAllocStatus(t *testing.T, nomadClient *api.Client, allocID string, status string)
- func WaitForAllocStatusComparison(query func() ([]string, error), comparison func([]string) bool, wc *WaitConfig) error
- func WaitForAllocStatusExpected(jobID, ns string, expected []string) error
- func WaitForAllocStopped(t *testing.T, nomadClient *api.Client, allocID string)
- func WaitForAllocTaskRunning(t *testing.T, nomadClient *api.Client, allocID, task string)
- func WaitForAllocsNotPending(t *testing.T, nomadClient *api.Client, allocIDs []string)
- func WaitForAllocsRunning(t *testing.T, nomadClient *api.Client, allocIDs []string)
- func WaitForAllocsStatus(t *testing.T, nomadClient *api.Client, allocIDs []string, status string)
- func WaitForAllocsStopped(t *testing.T, nomadClient *api.Client, allocIDs []string)
- func WaitForDeployment(t *testing.T, nomadClient *api.Client, deployID string, status string, ...)
- func WaitForJobStopped(t *testing.T, nomadClient *api.Client, job string)
- func WaitForLastDeploymentStatus(jobID, ns, status string, wc *WaitConfig) error
- func WaitForLeader(t *testing.T, nomadClient *api.Client)
- func WaitForNodesReady(t *testing.T, nomadClient *api.Client, nodes int)
- type AllocsByName
- type ConsulPolicy
- type LogStream
- type WaitConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AgentRestart ¶ added in v0.10.0
AgentRestart is a test helper function that restarts a client node running under systemd using a raw_exec job. Returns the job ID of the restart job so that callers can clean it up.
func AllocExec ¶ added in v1.0.0
func AllocExec(allocID, taskID, execCmd, ns string, wc *WaitConfig) (string, error)
AllocExec is a convenience wrapper that runs 'nomad alloc exec' with the passed execCmd via '/bin/sh -c', retrying if the task isn't ready
func AllocIDsFromAllocationListStubs ¶ added in v0.10.4
func AllocIDsFromAllocationListStubs(allocs []*api.AllocationListStub) []string
func AllocStatuses ¶ added in v1.0.0
AllocStatuses returns a slice of client statuses
func AllocStatusesRescheduled ¶ added in v1.0.0
AllocStatusesRescheduled is a helper function that pulls out client statuses only from rescheduled allocs.
func AllocTaskEventsForJob ¶ added in v1.1.0
AllocTaskEventsForJob returns a map of allocation IDs containing a map of Task Event key value pairs
func AllocTaskLogs ¶ added in v0.12.10
func AllocsForJob ¶ added in v1.0.0
AllocsForJob returns a slice of key->value maps, each describing the values of the 'nomad job status' Allocations section (not actual structs.Allocation objects, query the API if you want those)
func AllocsForNode ¶ added in v1.0.0
AllocsForNode returns a slice of key->value maps, each describing the values of the 'nomad node status' Allocations section (not actual structs.Allocation objects, query the API if you want those)
func ChildrenJobSummary ¶ added in v1.0.4
func Command ¶ added in v0.12.10
Command sends a command line argument to Nomad and returns the unbuffered stdout as a string (or, if there's an error, the stderr)
func CreateConsulNamespaces ¶ added in v1.1.0
CreateConsulNamespaces will create each namespace in Consul, with a description containing the namespace name.
Requires Consul Enterprise.
func CreateConsulPolicy ¶ added in v1.1.0
func CreateConsulPolicy(t *testing.T, client *capi.Client, namespace string, policy ConsulPolicy) string
CreateConsulPolicy is used to create a Consul ACL policy backed by the given ConsulPolicy in the specified namespace.
Requires Consul Enterprise.
func CreateConsulToken ¶ added in v1.1.0
CreateConsulToken is used to create a Consul ACL token backed by the policy of the given policyID in the specified namespace.
Requires Consul Enterprise.
func DeleteConsulConfigEntry ¶ added in v1.1.0
DeleteConsulConfigEntry deletes the ConfigEntry of the given namespace, kind, and name.
Requires Consul Enterprise.
func DeleteConsulKey ¶ added in v1.1.0
DeleteConsulKey deletes the key from the Consul KV store from given namespace.
Requires Consul Enterprise.
func DeleteConsulNamespaces ¶ added in v1.1.0
DeleteConsulNamespaces will delete each namespace from Consul.
Requires Consul Enterprise.
func DeleteConsulPolicies ¶ added in v1.1.0
DeleteConsulPolicies is used to delete a set Consul ACL policies from Consul.
Requires Consul Enterprise.
func DeleteConsulTokens ¶ added in v1.1.0
DeleteConsulTokens is used to delete a set of tokens from Consul.
Requires Consul Enterprise.
func DeploymentsForJob ¶ added in v0.9.3
func DispatchedJobs ¶ added in v1.0.6
func GetField ¶ added in v1.0.0
GetField returns the value of an output field (ex. the "Submit Date" field of `nomad job status :id`)
func GetSection ¶ added in v1.0.0
GetSection returns a section, with its field header but without its title. (ex. the Allocations section of `nomad job status :id`)
func JobInspectTemplate ¶ added in v1.0.4
JobInspectTemplate runs nomad job inspect and formats the output using the specified go template
func LastDeploymentID ¶ added in v1.0.0
func ListConsulNamespaces ¶ added in v1.1.0
ListConsulNamespaces will list the namespaces in Consul.
Requires Consul Enterprise.
func ListLinuxClientNodes ¶ added in v0.10.4
ListLinuxClientNodes returns a list of Linux client IDs, so that tests can skip operating-specific tests if there are no Linux clients available Returns an error only on client errors.
func ListWindowsClientNodes ¶ added in v0.10.4
ListWindowsClientNodes returns a list of Windows client IDs, so that tests can skip operating-specific tests if there are no Windows clients available. Returns an error only on client errors.
func NodeStatusList ¶ added in v1.0.0
func NodeStatusListFiltered ¶ added in v1.0.0
func ParseColumns ¶ added in v1.0.0
ParseColumns maps the CLI output for a columized section (without title) to a slice of key->value pairs for each row in that section. (ex. the Allocations section of `nomad job status :id`)
func ParseFields ¶ added in v1.0.0
ParseFields maps the CLI output for a key-value section (without title) to map of the key->value pairs in that section (ex. the Latest Deployment section of `nomad job status :id`)
func PeriodicForce ¶ added in v1.0.4
PeriodicForce forces a periodic job to dispatch
func PreviouslyLaunched ¶ added in v1.0.4
func PutConsulKey ¶ added in v1.1.0
PutConsulKey sets key:value in the Consul KV store under given namespace.
Requires Consul Enterprise.
func ReadConsulConfigEntry ¶ added in v1.1.0
func ReadConsulConfigEntry(t *testing.T, client *capi.Client, namespace, kind, name string) capi.ConfigEntry
ReadConsulConfigEntry retrieves the ConfigEntry of the given namespace, kind, and name.
Requires Consul Enterprise.
func Register ¶ added in v1.0.0
Register registers a jobspec from a file but with a unique ID. The caller is responsible for recording that ID for later cleanup.
func RegisterAllocs ¶ added in v0.9.2
func RegisterAndWaitForAllocs ¶
func RegisterAndWaitForAllocs(t *testing.T, nomadClient *api.Client, jobFile, jobID, cToken string) []*api.AllocationListStub
RegisterAndWaitForAllocs wraps RegisterAllocs but blocks until Evals successfully create Allocs.
func RegisterFromJobspec ¶ added in v1.0.0
RegisterFromJobspec registers a jobspec from a string, also with a unique ID. The caller is responsible for recording that ID for later cleanup.
func RequireConsulDeregistered ¶ added in v0.10.0
func RequireConsulDeregistered(require *require.Assertions, client *capi.Client, namespace, service string)
RequireConsulDeregistered asserts that the service eventually is de-registered from Consul.
func RequireConsulRegistered ¶ added in v1.0.2
func RequireConsulRegistered(require *require.Assertions, client *capi.Client, namespace, service string, count int)
RequireConsulRegistered assert that the service is registered in Consul.
func RequireConsulStatus ¶ added in v0.10.0
func RequireConsulStatus(require *require.Assertions, client *capi.Client, namespace, service, expectedStatus string)
RequireConsulStatus asserts the aggregate health of the service converges to the expected status.
func WaitForAllocFile ¶ added in v1.0.0
func WaitForAllocFile(allocID, path string, test func(string) bool, wc *WaitConfig) error
WaitForAllocFile is a helper that grabs a file via alloc fs and tests its contents; useful for checking the results of rendered templates
func WaitForAllocNotPending ¶ added in v0.10.4
func WaitForAllocRunning ¶
func WaitForAllocStatus ¶ added in v1.2.0
func WaitForAllocStatusComparison ¶ added in v1.0.0
func WaitForAllocStatusComparison(query func() ([]string, error), comparison func([]string) bool, wc *WaitConfig) error
WaitForAllocStatusComparison is a convenience wrapper that polls the query function until the comparison function returns true.
func WaitForAllocStatusExpected ¶ added in v1.0.0
WaitForAllocStatusExpected polls 'nomad job status' and exactly compares the status of all allocations (including any previous versions) against the expected list.
func WaitForAllocStopped ¶ added in v0.11.0
func WaitForAllocTaskRunning ¶ added in v0.12.10
func WaitForAllocsNotPending ¶ added in v0.10.4
func WaitForAllocsRunning ¶ added in v0.10.4
func WaitForAllocsStatus ¶ added in v1.2.0
func WaitForAllocsStopped ¶ added in v1.1.0
func WaitForDeployment ¶ added in v0.9.2
func WaitForJobStopped ¶ added in v0.12.4
WaitForJobStopped stops a job and waits for all of its allocs to terminate.
func WaitForLastDeploymentStatus ¶ added in v1.0.0
func WaitForLastDeploymentStatus(jobID, ns, status string, wc *WaitConfig) error
Types ¶
type AllocsByName ¶ added in v1.1.0
type AllocsByName []*api.AllocationListStub
AllocsByName sorts allocs by Name
func (AllocsByName) Len ¶ added in v1.1.0
func (a AllocsByName) Len() int
func (AllocsByName) Less ¶ added in v1.1.0
func (a AllocsByName) Less(i, j int) bool
func (AllocsByName) Swap ¶ added in v1.1.0
func (a AllocsByName) Swap(i, j int)
type ConsulPolicy ¶ added in v1.1.0
type ConsulPolicy struct { Name string // e.g. nomad-operator Rules string // e.g. service "" { policy="write" } }
ConsulPolicy is used for create Consul ACL policies that Consul ACL tokens can make use of.
type WaitConfig ¶ added in v1.0.0
WaitConfig is an interval and wait time that can be passed to a waiter function, but with a default value that comes from the OrDefault method if the config is nil