grim/convey

Add a new subtask task

2020-03-02, Gary Kramlich
469b76e1bd24
Add a new subtask task
# kubectl
The kubectl package provides tasks for interacting with kubernetes via kubectl.
It supplies the create, apply, and delete commands. It provides a few
templating engines that can be used to template your manifests before they're
used.
If `none` or no engine is specified then no templating is done. An engine of `environment` will do normal variable swapping with the environment variables that convey knows about in the format of `${VARNAME}` or `$VARNAME`.
----
## kubectl/apply Task
An apply task will apply kubernetes manifests to the cluster.
### Attributes
| Name | Required | Default | Description |
| ----------| -------- | ---------- | ----------- |
| context | | | The kubernetes context to use. |
| files | Yes | | The list of manifest files to apply. |
| namespace | | | The kubernetes namespace to use. |
| selector | | | The list of selectors to use. |
| engine | | | The template engine to use. |
### Example
apply:
type: kubectl/apply
files:
- manifest.yml
----
## kubectl/create Task
A create task will create kubernetes manifests on the cluster.
### Attributes
| Name | Required | Default | Description |
| ----------| -------- | ---------- | ----------- |
| context | | | The kubernetes context to use. |
| files | Yes | | The list of manifest files to apply. |
| namespace | | | The kubernetes namespace to use. |
| selector | | | The selector to use. |
| engine | | | The template engine to use. |
### Example
apply:
type: kubectl/create
files:
- manifest.yml
----
## kubectl/delete Task
A delete task will delete kubernetes manifests from the cluster.
### Attributes
| Name | Required | Default | Description |
| ----------| -------- | ---------- | ----------- |
| context | | | The kubernetes context to use. |
| files | Yes | | The list of manifest files to apply. |
| namespace | | | The kubernetes namespace to use. |
| selector | | | The selector to use. |
| engine | | | The template engine to use. |
### Example
apply:
type: kubectl/delete
files:
- manifest.yml
---
## kubectl/rollout Task
A rollout task will run `kubectl status` to wait for a rollout to complete.
###
| Name | Required | Default | Description |
| --------- | -------- | ------- | ----------- |
| context | | | The context to use. |
| namespace | | | The namespace to use. |
| target | Yes | | The rollout target to wait for. |
### Example
wait-for-deploy:
type: kubectl/rollout
namespace: prod
target: deployment/www