Keto is under development and should not be used or treated as working software. Everything will probably change.
Keto is built against the latest golang which can be installed from https://golang.org/dl/.
Get the source code:
$ go get -u github.com/UKHomeOffice/keto/cmd/keto
First install Glide - https://github.com/Masterminds/glide#install.
Get the correct dependency versions:
cd ${GOPATH}/src/github.com/UKHomeOffice/keto
glide install
Build the binary:
go build -v github.com/UKHomeOffice/keto/cmd/keto
You will need the following AWS resources created in advance:
keto --help
You will need to create or obtain suitable CA certs before running keto. Minimal command to create a Kubernetes cluster in AWS:
keto create cluster testcluster --ssh-key my-aws-key-name --networks subnet-awsid --machine-type t2.medium --cloud aws
This will create a cluster and an ELB serving the Kubernetes API.
keto get cluster --cloud aws
keto delete cluster --name testcluster --cloud aws
go get -u github.com/cloudflare/cfssl/cmd/...
KETO_ASSETS_DIR
(defaults to ${PWD}
)./bin/create_ca_files.sh
The e2e tests can be run in CI using the following command:
drone deploy -p E2E=true UKHomeOffice/keto <build-number> e2e
The following environment variables must be set for the e2e tests to execute successfully: