{"id":13450580,"url":"https://github.com/agola-io/agola","last_synced_at":"2025-05-14T13:08:58.935Z","repository":{"id":35535195,"uuid":"188402099","full_name":"agola-io/agola","owner":"agola-io","description":"Agola: CI/CD Redefined","archived":false,"fork":false,"pushed_at":"2025-05-12T14:59:22.000Z","size":3482,"stargazers_count":1562,"open_issues_count":72,"forks_count":122,"subscribers_count":32,"default_branch":"master","last_synced_at":"2025-05-12T15:59:00.493Z","etag":null,"topics":["ci-cd","cicd","continuous-delivery","continuous-deployment","continuous-integration","devops","distributed","docker","git","gitea","github","gitlab","golang","high-availability","kubernetes"],"latest_commit_sha":null,"homepage":"https://agola.io","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/agola-io.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-05-24T10:23:26.000Z","updated_at":"2025-05-12T14:59:27.000Z","dependencies_parsed_at":"2024-03-06T15:31:43.703Z","dependency_job_id":"f2cf3525-5207-435a-9c0f-dc5e3b5294ac","html_url":"https://github.com/agola-io/agola","commit_stats":null,"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agola-io%2Fagola","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agola-io%2Fagola/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agola-io%2Fagola/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agola-io%2Fagola/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/agola-io","download_url":"https://codeload.github.com/agola-io/agola/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253870869,"owners_count":21976613,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ci-cd","cicd","continuous-delivery","continuous-deployment","continuous-integration","devops","distributed","docker","git","gitea","github","gitlab","golang","high-availability","kubernetes"],"created_at":"2024-07-31T07:00:36.338Z","updated_at":"2025-05-14T13:08:53.922Z","avatar_url":"https://github.com/agola-io.png","language":"Go","funding_links":[],"categories":["Go","CICD","continuous-integration","Active projects","Applications"],"sub_categories":["Applications","DevOps"],"readme":"# Agola\n\n[![Build Status](https://run.agola.io/api/v1alpha/badges/org%2Fagola%2Fagola?branch=master\u0026)](https://run.agola.io/org/agola/projects/agola.proj)\n[![Discourse](https://img.shields.io/discourse/https/talk.agola.io/status.svg)](https://talk.agola.io)\n\nCI/CD redefined\n\nFor an introduction to agola you can take a look at [this post](https://sorintoss.io/blog/agola-introduction/)\n\n\u003cp float=\"left\" align=\"center\"\u003e\n  \u003cimg src=\"https://agola.io/screenshots/screenshot_run_tasksgraph_01.png\" height=\"340\" /\u003e\n  \u003cimg src=\"https://agola.io/screenshots/screenshot_run_01.png\" height=\"340\" /\u003e\n\u003c/p\u003e\n\n\n## Try it\n\nSee [the agolademo example](https://agola.io/tryit)\n\n## Features\n\n* Easy to install and manage.\n* Scalable and High Available: go from a single instance (single process) deployment to a distributed deployment.\n* 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).\n* Support any language, deployment system etc... (just use the right image)\n* 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.\n* Use it to manage the full development lifecycle: from build to deploy.\n* Tasks Workflows (that we called **Runs**) with ability to achieve fan-in, fan-out, matrixes etc..., everything containerized to achieve maximum reproducibility.\n* 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).\n* 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...\n* Restartable and reproducible Runs (restart a run from scratch or from failed tasks using the same source commit, variables etc...)\n* [User Direct Runs](https://agola.io/doc/concepts/user_direct_runs.html): 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).\n* 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](https://agola.io/doc/concepts/secrets_variables.html) to access different resources (environments, docker registries etc...).\n* Don't try to extend YAML to be a templating language but use a real templating language (as of now [jsonnet](https://jsonnet.org/)) to easily generate the run configuration without side effects.\n* An advanced permissions system (work in progress).\n* Dependency Caching to speed up tasks\n\n## Documentation\n\nhttps://agola.io/doc/\n\n## Local development\n\nSee [how to develop agola](doc/devel.md)\n\n## Contributing to Agola\n\nAgola is an open source project under the Apache 2.0 license, and contributions are gladly welcomed!\nTo submit your changes please open a pull request.\n\n## Contacts\n* For bugs and feature requests file an [issue](https://github.com/agola-io/agola/issues/new/choose)\n* For general discussion about using and developing Agola, join the [agola forum](https://talk.agola.io)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagola-io%2Fagola","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fagola-io%2Fagola","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagola-io%2Fagola/lists"}