README
¶
stok
supercharge terraform on kubernetes
install
Create a kubernetes secret containing the credentials you need for terraform.
Google:
kubectl create secret generic stok --from-file=google-credentials.json=[path to service account key]
AWS:
kubectl create secret generic stok --from-literal=AWS_ACCESS_KEY_ID="youraccesskeyid"
--from-literal=AWS_SECRET_ACCESS_KEY="yoursecretaccesskey"
Deploy the helm chart to your cluster:
helm repo add goalspike https://goalspike-charts.storage.googleapis.com
helm install stok goalspike/stok
Download and install the CLI from releases.
usage
Usage is similar to the terraform CLI:
Supercharge terraform on kubernetes
Usage:
stok [command]
Available Commands:
apply Run terraform apply
debug Show configuration options
destroy Run terraform destroy
force-unlock Run terraform force-unlock
get Run terraform get
help Help about any command
import Run terraform import
init Run terraform init
output Run terraform output
plan Run terraform plan
refresh Run terraform refresh
shell Run interactive shell on workspace pod
show Run terraform show
state Run terraform state
taint Run terraform taint
untaint Run terraform untaint
validate Run terraform validate
Flags:
--config string config file (default is $HOME/.stok.yaml)
-h, --help help for stok
--loglevel string logging verbosity level (default "info")
--namespace string kubernetes namespace (default "default")
--path string path containing terraform config files (default ".")
--pod-timeout string pod wait timeout (default "10s")
--queue-timeout int queue timeout in seconds (default 60)
--workspace string terraform workspace (default "default")
Use "stok [command] --help" for more information about a command.
Commands such as terraform fmt
or terraform console
have been left out because there is no purpose to running them on kubernetes.
Documentation
¶
Overview ¶
Copyright © 2020 Louis Garman <louisgarman@gmail.com>
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Directories
¶
Path | Synopsis |
---|---|
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
logging
|
|
handlers/cli
[leg100]: copy and pasted from apex pkg: * reduced padding from 3 to 1 * changed debug color from white to magneta (so I can see it on my solarized-light terminal scheme!) Package cli implements a colored text handler suitable for command-line interfaces.
|
[leg100]: copy and pasted from apex pkg: * reduced padding from 3 to 1 * changed debug color from white to magneta (so I can see it on my solarized-light terminal scheme!) Package cli implements a colored text handler suitable for command-line interfaces. |
handlers/prefix
Package prefix implements a colored text handler suitable for command-line interfaces with a configurable prefix
|
Package prefix implements a colored text handler suitable for command-line interfaces with a configurable prefix |
pkg
|
|
apis/stok
Package terraform contains terraform API versions.
|
Package terraform contains terraform API versions. |
apis/stok/v1alpha1
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
client/clientset
This package has the automatically generated clientset.
|
This package has the automatically generated clientset. |
client/clientset/fake
This package has the automatically generated fake clientset.
|
This package has the automatically generated fake clientset. |
client/clientset/scheme
This package contains the scheme of the automatically generated clientset.
|
This package contains the scheme of the automatically generated clientset. |
client/clientset/typed/stok/v1alpha1
This package has the automatically generated typed clients.
|
This package has the automatically generated typed clients. |
client/clientset/typed/stok/v1alpha1/fake
Package fake has the automatically generated clients.
|
Package fake has the automatically generated clients. |
controller
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
controller/apply
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
controller/destroy
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
controller/force_unlock
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
controller/get
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
controller/init
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
controller/output
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
controller/plan
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
controller/refresh
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
controller/shell
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
controller/show
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
controller/state
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
controller/taint
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
controller/tfimport
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
controller/untaint
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |
controller/validate
Code generated by go generate; DO NOT EDIT.
|
Code generated by go generate; DO NOT EDIT. |