Libraries to help simplify Outreach manifests
To deploy to Kubernetes we use kubecfg, it natively supports jsonnet and helps simplify and standardize the way we build our manifests.
brew install kubecfgYou can use the jsonnet manifests in the concourse-example repo as an example:
https://github.com/getoutreach/concourse-example/blob/master/k8s/manifests/deployment.jsonnet
kubecfg \
--jurl http://k8s-clusters.outreach.cloud/ \
--jurl https://jsonnet-libs.outreach.cloud/ \
show deployment.jsonnetTo use jsonnet-libs from a particular branch of this repository, you can use the --jurl flag to specify the branch:
export BRANCH=your-branch
kubecfg \
--jurl http://k8s-clusters.outreach.cloud/ \
--jurl https://raw.githubusercontent.com/getoutreach/jsonnet-libs/$BRANCH \
show deployment.jsonnetWe use Jsonnet to simplify and templatize our configurations, in this example we use it to create a concourse pipeline.
brew install jsonnetYou can use the jsonnet pipeline in the concourse-example repo as an example:
https://github.com/getoutreach/concourse-example/blob/master/ci/pipeline.jsonnet
git clone [email protected]:getoutreach/jsonnet-libs.git /tmp/jsonnet-libs
jsonnet -J /tmp/jsonnet-libs -y pipeline.jsonnetjsonnet files created under the ./tests directory can be used to test libsonnet functions. The files will be rendered to identically named .snap files in the same directory.
Snapshots are regenerated each time the tests are run.
make test