Kashti is a dashboard for your Brigade pipelines.
Kashti is a web dashboard for Brigade, helping you easily visualize and inspect your Brigade builds. Kashti gives you a deep view into your Brigade projects, scripts, and jobs.
This repo has a self-hosted demo
Installation and Configuration
Kashti is built atop Brigade. You can read the full Installation Guide to see how to install it into a cluster that already runs Brigade.
Kashti is Experimental
Kashti is in an early stage of development. To get started coding on Kashti, check out the Developer Guide
The Kashti Developer Guide
This guide explains how to work on the Kashti codebase.
Clone Repo and Build Dependencies
Begin by cloning this repository with your favorite Git tool.
$ git clone firstname.lastname@example.org:Azure/kashti.git $ cd kashti $ yarn global add @angular/cli $ yarn install # install project dependencies
$ ng serve # start a local server in development mode $ ng serve --environment prod # start a local server in production mode (minification, uglification, etc.) $ ng lint # run linters $ ng test # run unit tests $ ng e2e # run e2e tests in Chrome $ yarn e2e:watch # run e2e tests in watch mode. Be sure to run `ng serve` first!
ng test, and
ng e2e:watch will watch for changes to the project and automatically recompile the application and if running tests, re-run tests against the latest changes.
We require all tests to pass before merging pull requests (and ideally, all commits should be good individually, too).
Kashti can be run locally via a
To install in a Kubernetes development cluster, we recommend using the chart.
If you are running Minikube, you can do a full build of this repo into a Docker image:
$ eval $(minikube docker-env) $ yarn docker-build $ helm install -n brigade-ui charts/kashti --set brigade.apiServer=http://localhost:7745
This will push a copy of the Docker image into your Minikube docker registry and then install the chart.
The value of
brigade.apiServer should be the fully qualified URL to your Brigade
installation's API server. This is the URL that the client will see, so you
may need to use the outside IP address, not the cluster IP.
The example above can be used along with a few
kubectl port-forward commands to
locally access your Kashti UI. See the Install Guide for more.