Skip to content

About

Modern Continuous Integration System

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

 
 

Repository files navigation

cisys: Modern Continuous Integration System

Discussions GitHub stars

cisys logo

cisys is a modern continuous integration (CI) system for local installations and multi-user servers. It registers Git projects and runs manual Linux builds for them in disposable containers.

Features

  • Keycloak Single Sign-On (SSO) authentication with 3 roles (Member, Lead, Admin)
  • Persistent project registration with public and private projects
  • Manual Linux builds from a chosen branch, run in a container with Docker or Podman
  • Build history with status, commit ID, timing and output
  • Private Git access through environment-variable credential references
  • Branding (name, font, colors, logo and background image)
  • Light and dark mode

Documentation

Run make targets for the common tasks; see the Makefile section of the build guide.

Technologies

cisys is built with

Screenshots

Keycloak sign-in

Keycloak sign-in page

Projects — Admin view

Admin projects page

Manual build configuration

Manual build configuration

Getting started

Requires Java 25+, Maven, Node.js 26, npm, and Docker Compose or Podman with Compose. Images and dependencies must be downloadable. This setup is for a trusted local machine only.

Clone the repository:

git clone https://github.com/mnemosyne-systems/cisys.git
cd cisys

Start PostgreSQL and Keycloak:

make platform-start

Wait for Keycloak to become available at http://localhost:8180.

Run make platform-stop to stop the containers and keep their data, or make reset to stop them and delete their data after asking for confirmation.

Start the backend and the frontend in development mode:

make run

This installs the frontend dependencies when needed, runs the frontend in the background and the backend in the foreground. Stopping the backend also stops the frontend and signs all users out.

It does not compile or run the tests; use make test for those.

The application is available at http://localhost:5173.

The configuration is defined in src/backend/main/resources/application.properties.

Ports

The local setup uses the following ports. All of them are bound to the loopback interface.

Port Service Address Started by
5173 Frontend http://localhost:5173 make run
8080 Backend API http://localhost:8080 make run
8180 Keycloak http://localhost:8180 make platform-start
5432 PostgreSQL localhost:5432 make platform-start
5005 Java debugger localhost:5005 make run (development mode)

Open the application on port 5173.

Test accounts

The users defined for testing are

  • Member: member / member
  • Lead: lead / lead
  • Admin: admin / admin

The Keycloak admin console is at http://localhost:8180/admin with admin / admin.

Windows

Install Docker Desktop with its WSL 2 backend and Ubuntu. Put the project in your Ubuntu home directory, install Java 25, Maven, Node.js 26 and npm inside Ubuntu, then follow the steps above from an Ubuntu terminal.

Contributing

Contributions to cisys are managed on GitHub.com

Contributions are most welcome !

Please, consult our Code of Conduct policies for interacting in our community, and the Contributing guide.

Consider giving the project a star on GitHub if you find it useful.

License

Eclipse Public License - v2.0

About

Modern Continuous Integration System

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages