No description
  • Python 51.6%
  • Shell 30.4%
  • Makefile 18%
Find a file
Tealk 079fef8ec1
All checks were successful
Sync Templates to All Repositories / sync (push) Successful in 1m1s
update[ci]: sync credentials
2026-04-15 16:58:18 +02:00
.forgejo/workflows update[ci]: sync credentials 2026-04-15 16:58:18 +02:00
.sync-temp add[ci]: nodejs to workflow dependencies 2026-04-15 16:54:26 +02:00
templates add[docs]: add README, CONTRIBUTING, and .editorconfig templates 2026-04-15 16:49:51 +02:00
.editorconfig add[docs]: add README, CONTRIBUTING, and .editorconfig templates 2026-04-15 16:49:51 +02:00
.env.example refactor[helper]: convert shell scripts to Python and improve CI workflows 2026-04-15 16:49:34 +02:00
.gitignore refactor[helper]: convert shell scripts to Python and improve CI workflows 2026-04-15 16:49:34 +02:00
CONTRIBUTING.md add[docs]: add README, CONTRIBUTING, and .editorconfig templates 2026-04-15 16:49:51 +02:00
README.md add[docs]: add README, CONTRIBUTING, and .editorconfig templates 2026-04-15 16:49:51 +02:00
semaphore.py refactor[helper]: convert shell scripts to Python and improve CI workflows 2026-04-15 16:49:34 +02:00
sync-config.json add[sync-config]: old url's 2026-04-15 16:49:51 +02:00
sync.py refactor[helper]: convert shell scripts to Python and improve CI workflows 2026-04-15 16:49:34 +02:00
update_versions.py feat[utils]: add git auto-commit after version updates 2026-04-14 21:51:02 +02:00

Ansible Base

Central repository containing shared templates and automation scripts for our Ansible infrastructure.

Purpose

This repository serves as the Single Source of Truth (SSOT) for:

  • Shared templates (workflows, configs, scripts)
  • Sync automation to distribute templates to all playbook repositories
  • Semaphore CI/CD configuration

Repositories

This repo manages 48+ playbook repositories through automated sync.

Structure

├── templates/          # Shared templates for all repos
│   ├── .forgejo/      # Forgejo workflows
│   ├── .gch/          # Git changelog config
│   ├── .helper/       # Helper scripts
│   ├── group_vars/    # Shared variables
│   └── inventories/   # Inventory templates
├── sync-config.json    # Repository sync configuration
├── sync.py            # Template sync script
├── semaphore.py        # Semaphore CI sync script
└── .forgejo/workflows/ # Forgejo Actions workflows

Scripts

sync.py

Synchronizes templates to all configured repositories.

./sync.py --dry-run  # Test without changes
./sync.py             # Execute sync

semaphore.py

Synchronizes repositories to Semaphore CI.

cp .env.example .env
# Edit .env with your credentials

./semaphore.py --dry-run  # Test without changes
./semaphore.py             # Execute sync

Local Development

Prerequisites

  • Python 3.12+
  • Git

Setup

cp .env.example .env
# Configure your Semaphore credentials

Workflows

Template Sync

  • Trigger: Push to templates/**, sync-config.json, or sync.py
  • Schedule: Daily at 02:00
  • Action: Syncs templates to all repositories

Semaphore Sync

  • Trigger: Push to sync-config.json or manual
  • Action: Updates Semaphore project repositories

License

See individual repositories for their respective licenses.