Creates thin kubernetes environments for automated testing.
Clone the git repository: https://github.com/giantswarm/shipyard.git
Shipyard let's you create a remote minikube instance and configures the local environment for connecting to it. It currently supports AWS as the remote provider, so in order to making it work you need first to do some preparations on the cloud side:
These are the requirements for Shipyard to work:
-
AWS credentials loaded into the environment (
AWS_ACCESS_KEY_ID
andAWS_SECRET_ACCESS_KEY
defined). -
AMI image suitable to be used by shipyard. It can be created using packer executing this command from the root of the project:
$ packer build ./image/minikube.json
This will create a private AMI ready to be used by shipyard, using the same AWS credentials for packer and shipyard you are good to go.
You can download a prebuilt binary from here. Having that in your path you can create a shipyard instance with:
$ shipyard
After setting KUBECONFIG
to ./.shipyard/config
kubectl access the remote cluster:
$ export KUBECONFIG=./.shipyard/config
$ kubectl get cs
NAME STATUS MESSAGE ERROR
scheduler Healthy ok
controller-manager Healthy ok
etcd-0 Healthy {"health": "true"}
Remember to delete the remote cluster with:
$ shipyard -action stop
- Mailing list: giantswarm
- IRC: #giantswarm on freenode.org
- Bugs: issues
See CONTRIBUTING.md for details on submitting patches, the contribution workflow as well as reporting bugs.
Shipyard is under the Apache 2.0 license. See the LICENSE file for details.