This week marks the first year anniversary since the first commit of AlloyCI, and to celebrate it, we are releasing the v0.5 version. With it we get closer to the much coveted v1.0 release, when AlloyCI will be fully ready (and fully supported) for production environments.
This version of AlloyCI comes with a wide variety of changes. The most noticeable being the new and improved design, and support for GitHub Enterprise.
For the past year we have been using CoreUI as the basis of the design. At the beginning, it seemed like a good “admin” template that offered a lot of functionality. Unfortunately it started to feel dated, and bloated pretty quickly. The way it was used with AlloyCI was not ideal and it was not nice to look at.
We decided it was time for a change. The new design feels clean, modern, and is easy to look at.
Some elements remained, like the use of cards to represent the projects, and the use of panels to separate related information:
The use of colors to represent statuses also stayed, but with a new pantone:
The builds view was completely reworked to better illustrate the different stages of a pipeline, and to give a quick overview of the status of each build within that pipeline:
The single build view also suffered major changes. Now each build has its own page, with dedicated, always visible information about the build on an aside to the left, and the entire build output (which will automatically update if the build is running) to the the right.
The project settings view did not change that much, but it still looks cleaner and now groups related information more tightly:
This new version of AlloyCI also comes with a host of new features. The biggest one for this release is support for GitHub Enterprise. GitHub released version 2.13 a few days ago with support for GitHub Apps. This meant that AlloyCI would finally be compatible with GHE. After a few changes to the way the system communicates with GitHub, mainly making endpoints configurable, full compatibility was achieved.
Builds can now be restarted individually, without having to restart the entire pipeline. The old build data will be kept, and a new job will be created for the new build.
The other major new features revolve around build artifacts. With this release we added:
- Artifacts can be managed and downloaded from the build view
- Expired artifacts will be pruned once a day (or at any configurable interval)
- Artifacts can be kept forever, if the user chooses to
A couple of bugs have also been fixed with this release:
- When cancelling a pipeline, all builds were marked as cancelled, now only builds that are either created, running, or pending are updated.
- After the upgrade to Guardian 1.0, it became impossible to add another authentication method to an existing user. This has been fixed.
This is pretty much it for this release. The roadmap ahead includes adding S3 bucket support for build artifacts, so that they can be uploaded to services like AmazonS3, or Digital Ocean Spaces. With this support implemented, it will become possible for AlloyCI installations that are hosted on Heroku to also make use of build artifacts, something that is not possible right now.
Until next time! ❤️