Abstruse 2.x.x is a lightweight, yet powerful distributed CI/CD written in Golang. It features embedded etcd server for scheduling and service discovery, integrated private Docker Registry for synchronization of nodes, and a new frontend design with useful features for better user experience. Its default configuration uses single node cluster with n workers, however, this cluster can be easily extended with more nodes if necessary. We used gorm package for implementing the storage, users can choose between mysql, postgresql and mssql.
This is a work in progress for v2.0.0 relase, if you are looking for Node.JS based v1.x.x version please check here.
If you are interested about the status of this project, the easiest way to get Abstruse 2.x running is:
$ make docker
$ docker-compose -f configs/demo/default/docker-compose.yml up -dThis command will run abstruse-server with a single worker node abstruse-worker and MySQL database.
You should be able to open up the installation wizard in your browser at http://localhost:4400 and finish the setup.
To build the project from source, first clone or download repository, then:
$ make install_dependencies
$ makeIf you are interested in helping with the new release, you can get the development environment running like:
$ make install_dependenciesThis will install all dependencies for building the project. Please note that you need Node.JS, yarn and go installed, preferably latest releases.
For UI development run:
$ cd web/abstruse
$ yarn startFor abstruse-server development with live-reload enabled run:
$ make devAnd for abstruse-worker development with live-reload run:
$ make dev_workerSee the license.

