{"id":18557817,"url":"https://github.com/europ/atacac","last_synced_at":"2026-03-12T17:34:16.787Z","repository":{"id":68438814,"uuid":"257963103","full_name":"europ/atacac","owner":"europ","description":"Ansible Tower Asset Configuration As Code","archived":false,"fork":false,"pushed_at":"2020-09-14T13:39:06.000Z","size":1309,"stargazers_count":8,"open_issues_count":4,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-10T17:01:25.531Z","etag":null,"topics":["ansible","asset","assets","cd","ci","ci-cd","configuration","configuration-as-code","continuous","continuous-delivery","continuous-integration","tower"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/europ.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"2020-04-22T16:49:37.000Z","updated_at":"2022-12-12T15:31:44.000Z","dependencies_parsed_at":"2023-07-02T19:05:19.229Z","dependency_job_id":null,"html_url":"https://github.com/europ/atacac","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/europ/atacac","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/europ%2Fatacac","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/europ%2Fatacac/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/europ%2Fatacac/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/europ%2Fatacac/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/europ","download_url":"https://codeload.github.com/europ/atacac/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/europ%2Fatacac/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30435283,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-12T14:34:45.044Z","status":"ssl_error","status_checked_at":"2026-03-12T14:09:33.793Z","response_time":114,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["ansible","asset","assets","cd","ci","ci-cd","configuration","configuration-as-code","continuous","continuous-delivery","continuous-integration","tower"],"created_at":"2024-11-06T21:38:04.253Z","updated_at":"2026-03-12T17:34:16.782Z","avatar_url":"https://github.com/europ.png","language":"Python","readme":"[![Travis CI Build Status](https://img.shields.io/travis/com/europ/atacac/master?label=Travis%20CI\u0026logo=travis)](https://travis-ci.com/europ/atacac)\n[![Docker Build Status](https://img.shields.io/docker/cloud/build/europ/atacac.svg?label=Docker%20Build\u0026logo=docker)](https://hub.docker.com/r/europ/atacac/builds)\n[![License](https://img.shields.io/github/license/europ/atacac?label=License)](https://github.com/europ/atacac/blob/master/LICENSE)\n\n# ATACAC - Ansible Tower Asset Config As Code\n\n### Preface\n\nMaintaining dozens of Ansible Tower assets configurations (job templates, projects, inventories, etc.) is very difficult. Currently, there is no mechanism for the Ansible Tower asset configurations' management. By adopting Configuration-as-Code (CaC) practice (very similar to Infrastructure-as-code (IaC)) there is an open way how to store, manage, and maintain the configurations in one place. The available Continuous-Integration/Continuous-Delivery (CI/CD) technologies were used for automation of this project's parts. This project started as a proof-of-concept (experiment/pilot project) implementing the configuration-as-code (management) and continuous-integration/continuous-delivery (automation) practices' approach.\n\n* configuration-as-code\n    * Eric Goebelbecker - [CaC](https://rollout.io/blog/configuration-as-code-everything-need-know/)\n    * Wikipedia - [IaC](https://en.wikipedia.org/wiki/Infrastructure_as_code)\n* continuous-integration/continuous-delivery\n    * Martin Fowler - [CI](https://martinfowler.com/articles/continuousIntegration.html) / [CD](https://martinfowler.com/bliki/ContinuousDelivery.html)\n    * Wikipedia - [CI/CD](https://en.wikipedia.org/wiki/CI/CD)\n\nThe above-mentioned problems are resolved in the project implementation, which provides an automated way for storage, management, and maintenance of existing configurations available in Ansible Tower. This project started from scratch as an experiment, which later resulted in a complete usable implementation that is still in the progress of development.\n\n### About\n\nThis repository provides a template (a repository skeleton) that can be used for each project-specific repositories. For now, it is required to use a GitLab environment while the GitHub actions are not supported yet. The [documentation](docs/README.md) includes the guidance, explanation, know-how, and FAQ.\n\n![about image](docs/img/atacac.png)\n\n### Setup\n\nThe documentation including setup description can be found in [`docs/README.md`](docs/README.md).\n\n### Contribution\n\nFeel free to open an [issue](https://github.com/europ/atacac/issues) or a [change request](https://github.com/europ/atacac/pulls) in this repository in case of a bug, problem, request for enhancement, feature idea, suggestion, etc. If you wish to create a change request, please make sure that `tox` command will pass successfully.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feurop%2Fatacac","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feurop%2Fatacac","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feurop%2Fatacac/lists"}