Lhasa
Urba planning for microservices.
List and map applications of your microservices information system and how they interact. Track your business
processes and domains, then gamify the continuous enhancement of your system.

This project is at pre-alpha state and under active development.
Features
Application catalog
Applications of your information system are grouped in business domains.
Meta data about each application version should be stored directly in the codebase (see: manifest files) and are
collected to be presented in the user interface.

Deployment tracking
Each time you deploy a release on a given environment you can notify Lhasa API and track which version is available on
each environment.

Made with love by OVH Urban Planning team.
Authors
Build and run project
Technical overview
This project is currently at very early stage and under active development. It is mainly written in golang and in angular5.
Build project
Requirements
Steps
Go get the project, then run the default Makefile target:
go get github.com/ovh/lhasa/api/cmd/appcatalog
cd $GOPATH/src/github.com/ovh/lhasa
make
Run project
Requirements
Steps
Start requirements
If you don't have a postgres instance, you can start one locally using docker-compose:
$ PORT=100 docker-compose up # $PORT is appended with '32' as listening port. "10032" in this example.
Configuration file
Copy config.json.dist
as config.json
and edit the latest to match your database configuration:
{
"appcatalog-db": {
"writers": [
{
"host": "localhost",
"port": 10032,
"sslmode": "disable"
}
],
"database": "postgres",
"user": "postgres",
"password": "appcatalog",
"type": "postgresql"
}
}
Start Lhasa
cd $GOPATH/src/github.com/ovh/lhasa
APPCATALOG_AUTO_MIGRATE=1 make run
Lhasa will start and listen on port 8081
.
Note that APPCATALOG_AUTO_MIGRATE=1
will perform database schema migrations/creations automatically.
Load the sample dataset (optional)
Optionally, you can load the sample dataset to immediately start playing:
API_BASE_URL=http://localhost:8081/api ./samples/mycompany.sh