bitbucket-cloud-runner-automation
Ansible playbooks and maintenance scripts I use to provision self-hosted Bitbucket Cloud Runners on Linux, macOS, and Windows.
Highlights
- Three platform playbooks (Linux shell, macOS, Windows) sharing a common credential layout and version-pinning convention.
- Linux runners ship with optional Docker support for cross-platform Pipelines builds; macOS uses LaunchDaemon, Windows uses a service wrapper.
- Centralised `runner_version.json` so version bumps (Bitbucket deprecated <3.0.0 in Dec 2024) are one-line PRs that roll across the fleet.
- Maintenance scripts: automated runner updates, log/health checks, and idempotent re-provisioning that reconciles drift instead of double-installing.
- Per-platform smoke tests (`tests/test_*_runner.sh`) plus a `run_all_tests.sh` orchestrator to validate registration end-to-end before flipping production traffic.