CI/CD server
CI/CD server is a system agnostic solution which gives users ability to utilise different machines as execution environment, both static (like virtual machines) and dynamic (like containers and pods). It is build using Go language, where goroutines are extensively used to manage two part system (REST server and application engine).
Project was developed in open-source spirit, not only being stored in the public repository, but also using other open-source solutions to build whole environment.
Local development
Requirements
Build
Run make build or go build -o bin/serve main.go command.
Start Docker environment
Run make docker-up or docker compose -p ccli -f deployments/docker-compose.yml up -d command.
Migrate
Run make migrate or ./bin/ccli migrate command.
Start CI/CD server
Run make run or ./bin/ccli serve command.
Architecture
Detailed architecture of the proposed solution is presented on the diagram below.
