Documentation ¶
Index ¶
- Variables
- func DependenciesAreResolved(target *apicontainer.Container, by []*apicontainer.Container, id string, ...) (*apicontainer.DependsOn, error)
- func TaskResourceDependenciesAreResolved(target taskresource.TaskResource, by []*apicontainer.Container) error
- func ValidDependencies(task *apitask.Task) bool
Constants ¶
This section is empty.
Variables ¶
var ( // CredentialsNotResolvedErr is the error where a container needs to wait for // credentials before it can process by agent CredentialsNotResolvedErr = errors.New("dependency graph: container execution credentials not available") // DependentContainerNotResolvedErr is the error where a dependent container isn't in expected state DependentContainerNotResolvedErr = errors.New("dependency graph: dependent container not in expected state") // ContainerPastDesiredStatusErr is the error where the container status is bigger than desired status ContainerPastDesiredStatusErr = errors.New("container transition: container status is equal or greater than desired status") // ErrContainerDependencyNotResolved is when the container's dependencies // on other containers are not resolved ErrContainerDependencyNotResolved = errors.New("dependency graph: dependency on containers not resolved") // ErrResourceDependencyNotResolved is when the container's dependencies // on task resources are not resolved ErrResourceDependencyNotResolved = errors.New("dependency graph: dependency on resources not resolved") // ResourcePastDesiredStatusErr is the error where the task resource known status is bigger than desired status ResourcePastDesiredStatusErr = errors.New("task resource transition: task resource status is equal or greater than desired status") // ErrContainerDependencyNotResolvedForResource is when the resource's dependencies // on other containers are not resolved ErrContainerDependencyNotResolvedForResource = errors.New("dependency graph: resource's dependency on containers not resolved") )
Functions ¶
func DependenciesAreResolved ¶
func DependenciesAreResolved(target *apicontainer.Container, by []*apicontainer.Container, id string, manager credentials.Manager, resources []taskresource.TaskResource) (*apicontainer.DependsOn, error)
DependenciesAreResolved validates that the `target` container can be transitioned given the current known state of the containers in `by`. If this function returns true, `target` should be technically able to launch without issues. Transitions are between known statuses (whether the container can move to the next known status), not desired statuses; the desired status typically is either RUNNING or STOPPED.
func TaskResourceDependenciesAreResolved ¶ added in v1.38.0
func TaskResourceDependenciesAreResolved(target taskresource.TaskResource, by []*apicontainer.Container) error
TaskResourceDependenciesAreResolved validates that the `target` resource can be transitioned given the current known state of the containers in `by`. If this function returns true, `target` should be technically able to transit without issues. Transitions are between known statuses (whether the resource can move to the next known status), not desired statuses; the desired status typically is either CREATED or REMOVED.
func ValidDependencies ¶
ValidDependencies takes a task and verifies that it is possible to allow all containers within it to reach the desired status by proceeding in some order.
Types ¶
This section is empty.