Agamennone
Agamennone is a simple, resilient and scalable flag submission system. It is designed to be simple but extensible.
Built with Kotlin, Ktor and Exposed.
Development
- Clone the repository
- Run
./gradlew run
to start the server
Building
The project can be built with:
./gradlew installDist
: creates a runnable distribution inbuild/install
./gradlew distZip
: same thing but as a zip file. The archive will be located inbuild/distributions/
../gradlew distTar
: same thing but as a tar file. The archive will be located inbuild/distributions/
.
The difference between the files with the shadow
suffix and the ones without it is that, instead of packaging the dependencies into the
archive as they are, the shadow jar is used.
Monitoring
To visualize flags, run a grafana instance with the JSON Datasource plugin:
docker run -d --name=grafana -p 3000:3000 -e "GF_INSTALL_PLUGINS=marcusolsson-json-datasource" grafana/grafana-oss