Introducing Djinn CI

Posted on Sat 24 Apr 2021 to Announcements

Djinn CI is a continuous integration platform, built with simplicity and flexibility in mind. It has been in development for some time, and has reached a stage where it is now ready to be debuted. Builds in Djinn CI are simple YAML manifest files. These can be either manually through the UI, via a push to a repository, or when a pull request is opened, or if you prefer you can have your builds run at a schedule.

Djinn CI is open source software, so you can run it on your own infrastructure. You can of course pay for the hosted version, and by doing so you will always be on the latest version of Djinn CI, and don't have to worry about the maintenance of the platform. To start using Djinn CI you can either sign in, using your GitLab or GitHub account, or you can create a Djinn CI account.

Why use Djinn CI?

Djinn CI allows you to have your builds executed in fully virtualized Linux machines. By default we offer a selection of base images to choose from, but you can bring along your own custom images to execute your builds in. The benefits of using virtualization for build execution allows for a wider variety of environments to work within.

Note: The hosted version of Djinn CI will offer Docker build execution at some point in the near future.

There may be times when you need to have access to multiple repositories in a single build. Djinn CI allows for this easily, where each build manifest can have multiple sources to pull from. From Djinn CI's perspective, a build manifest is not always going to be tied to a single repository, instead it is simply a list of arbitrary steps to be executed within the given environment.

Along with multi-repository builds, Djinn CI also offers the ability to have build objects. A build object is a file that is placed within the build environment, that can then be used later on within that same build. There may be times when you want to include files within your build that would not otherwise be appropriate to have in source controle, for example, binary files. Build objects allow for this.

Djinn CI offers the ability for users to collaborate with one another via the use of namespaces. Namespaces allow you to organize builds, and their respective resources into one central place. Any user that is a collaborator within a namespace will be able to submit builds, and add resources on behalf of the namespace's owner.

This is of course just some of the features available in Djinn CI, for a more thorough rundown, then please refer to the user documentation.