Coding

Agola – CI/CD system

Agola is a CI/CD system with a lot of features like advanced and reproducible workflows (runs), containerized tasks, fully distributed and high-available.

This is free and open source software.

Key Features

  • Easy to install and manage.
  • Scalable and High Available: go from a single instance (single process) deployment to a distributed deployment.
  • Deploy anywhere: Kubernetes, IaaS, bare metal and execute the “tasks” anywhere (currently containers executors like docker or orchestrators and Kubernetes, but easily extensible to future technologies or VMs instead of containers).
  • Support any language, deployment system etc.
  • Integrate with multiple git providers at the same time: you could add repos from github, gitlab, gitea (and more to come) inside the same agola installation.
  • Use it to manage the full development lifecycle: from build to deploy.
  • Tasks Workflows (that we called Runs) with ability to achieve fan-in, fan-out, matrixes etc…, everything containerized to achieve maximum reproducibility.
  • Git based workflow: the run definition is committed inside the git repository (so everything is tracked and reproducible). A run execution is started by a git action (push, pull-request).
  • Design it with the ability to achieve at most once runs: during a deployment to production we don’t want multiple concurrent execution of the deploy…
  • Containerized, reproducible and restartable Runs (restart a run from scratch or from failed tasks using the same source commit, variables etc…)
  • User Direct Runs: give every user the power to test their software using the same run definition used when pushing to git/opening a pull request inside the Agola installation with just one command like if they were running tests locally (without requiring a super powerful workstation).
  • Testable “Runs” (what is a CI/CD environment if you cannot test your changes to the Runs definitions?): use the same run definition but use a powerful secrets and variables system to access different resources (environments, docker registries etc…).
  • An advanced permissions system (work in progress).
  • Dependency Caching to speed up tasks.

Website: agola.io
Support: GitHub Code Repository
Developer: Sorint.lab S.p.A.
License: Apache License 2.0

Agola
Click image for full size

Agola is written in Go. Learn Go with our recommended free books and free tutorials.


Related Software

Continuous Integration Tools
JenkinsSelf-contained automation server with an awesome array of plugins
BuildbotPython-based continuous integration testing framework
TektonPowerful and flexible framework for creating CI/CD systems
EarthlyCI/CD framework that runs every pipeline inside containers
DaggerPowerful, programmable CI/CD engine
GoCDEasily model and visualize complex workflows
ConcoursePresents a general approach to automation for CI/CD
WoodpeckerUses docker containers to execute pipeline steps
AgolaCI/CD redefined
SemaphoreSelf-hosted continuous integration and delivery platform
LaminarLightweight and modular Continuous Integration service
ZuulProject gating system
ProwKubernetes-based continuous integration and continuous delivery system

Read our verdict in the software roundup.

Continuous Delivery Tools
JenkinsSelf-contained, open source automation server with a huge array of plugins
Argo CDDeclarative GitOps continuous delivery tool
TektonPowerful and flexible framework for creating CI/CD systems
EarthlyCI/CD framework that runs every pipeline inside containers
DaggerPowerful, programmable CI/CD engine
GoCDEasily model and visualize complex workflows
SpinnakerCloud native continuous delivery
ConcoursePresents a general approach to automation for CI/CD
FluxContinuous delivery and GitOps toolkit for Kubernetes
WoodpeckerUses docker containers to execute pipeline steps
AgolaCI/CD redefined
ScrewdriverBuild platform designed for Continuous Delivery
PipeCDGitOps-style continuous delivery platform

Read our verdict in the software roundup.


Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted