📚 abstruse - Awesome Go Library for Continuous Integration
Abstruse is a distributed CI platform.
Detailed Description of abstruse
Abstruse CI
Abstruse CI is a lightweight, yet powerful distributed CI/CD written in Golang. Its default configuration uses single node cluster with n workers, however, this cluster can be easily extended with more nodes if necessary.
This is the branch for v2.0.0 or later. If you are looking for Node.JS based v1.x.x version please check here.
Check Out Live Demo
Go to https://ci.abstruse.app and login with username [email protected]
and password abstruse
.
Note: A demo user has only read permissions and can't add new repositories.
Get the Demo Running Locally
If you are interested about the status of this project, the easiest way to get Abstruse 2.x running is:
git clone https://github.com/bleenco/abstruse.git
cd abstruse
docker-compose -f configs/demo/default/docker-compose.yml up -d
You can also build docker images locally:
make docker
docker-compose -f configs/demo/default/docker-compose.yml up -d
This 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 and finish the setup.
Building the Project from Source
To build the project from source, first clone or download repository, then:
make install_dependencies
make
Development
If you are interested in helping with the new release, you can get the development environment running like:
make install_dependencies
This 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 start
For abstruse-server
development with live-reload enabled run:
make dev
And for abstruse-worker
development with live-reload run:
make dev_worker
License
See the license.