Skip to content
This repository has been archived by the owner on Dec 9, 2021. It is now read-only.

giantswarm/shipyard

Repository files navigation

Shipyard

CircleCI

Creates thin kubernetes environments for automated testing.

Getting Project

Clone the git repository: https://github.com/giantswarm/shipyard.git

Running Shipyard

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:

AWS setup

These are the requirements for Shipyard to work:

  • AWS credentials loaded into the environment (AWS_ACCESS_KEY_ID and AWS_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.

Running as a command line utility

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

Contact

Contributing & Reporting Bugs

See CONTRIBUTING.md for details on submitting patches, the contribution workflow as well as reporting bugs.

License

Shipyard is under the Apache 2.0 license. See the LICENSE file for details.