mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-08-30 15:28:12 +02:00
Refactor role naming for TLS and proxy stack
- Renamed role `srv-tls-core` → `sys-svc-certs` - Renamed role `srv-https-stack` → `sys-stk-front-pure` - Renamed role `sys-stk-front` → `sys-stk-front-proxy` - Updated all includes, READMEs, meta, and dependent roles accordingly This improves clarity and consistency of naming conventions for certificate management and proxy orchestration. See: https://chatgpt.com/share/68b19f2c-22b0-800f-ba9b-3f2c8fd427b0
This commit is contained in:
65
roles/sys-stk-front-pure/README.md
Normal file
65
roles/sys-stk-front-pure/README.md
Normal file
@@ -0,0 +1,65 @@
|
||||
# Webserver HTTPS Provisioning 🚀
|
||||
|
||||
## Description
|
||||
The **sys-stk-front-pure** role extends a basic Nginx installation by wiring in everything you need to serve content over HTTPS:
|
||||
|
||||
1. Ensures your Nginx server is configured for SSL/TLS.
|
||||
2. Pulls in Let’s Encrypt ACME challenge handling.
|
||||
3. Applies global cleanup of unused domain configs.
|
||||
|
||||
This role is built on top of your existing `srv-core` role, and it automates the end-to-end process of turning HTTP sites into secure HTTPS sites.
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
When you apply **sys-stk-front-pure**, it will:
|
||||
|
||||
1. **Include** the `srv-core` role to install and configure Nginx.
|
||||
2. **Clean up** any stale vHost files under `sys-svc-cln-domains`.
|
||||
3. **Deploy** the Let’s Encrypt challenge-and-redirect snippet from `srv-letsencrypt`.
|
||||
4. **Reload** Nginx automatically when any template changes.
|
||||
|
||||
All tasks are idempotent—once your certificates are in place and your configuration is set, Ansible will skip unchanged steps on subsequent runs.
|
||||
|
||||
---
|
||||
|
||||
## Features
|
||||
|
||||
- 🔒 **Automatic HTTPS Redirect**
|
||||
Sets up port 80 → 443 redirect and serves `/.well-known/acme-challenge/` for Certbot.
|
||||
|
||||
- 🔑 **Let’s Encrypt Integration**
|
||||
Pulls in challenge configuration and CAA-record management for automatic certificate issuance and renewal.
|
||||
|
||||
- 🧹 **Domain Cleanup**
|
||||
Removes obsolete or orphaned server blocks before enabling HTTPS.
|
||||
|
||||
- 🚦 **Handler-Safe**
|
||||
Triggers an Nginx reload only when necessary, minimizing service interruptions.
|
||||
|
||||
---
|
||||
|
||||
## Requirements
|
||||
|
||||
- A working `srv-core` setup.
|
||||
- DNS managed via Cloudflare (for CAA record tasks) or equivalent ACME DNS flow.
|
||||
- Variables:
|
||||
- `LETSENCRYPT_WEBROOT_PATH`
|
||||
- `LETSENCRYPT_LIVE_PATH`
|
||||
- `on_calendar_renew_lets_encrypt_certificates`
|
||||
|
||||
---
|
||||
|
||||
## License
|
||||
|
||||
This role is released under the **Infinito.Nexus NonCommercial License**.
|
||||
See [https://s.infinito.nexus/license](https://s.infinito.nexus/license) for details.
|
||||
|
||||
---
|
||||
|
||||
## Author
|
||||
|
||||
Developed and maintained by **Kevin Veen-Birkenbach**
|
||||
Consulting & Coaching Solutions
|
||||
[https://www.veen.world](https://www.veen.world)
|
24
roles/sys-stk-front-pure/meta/main.yml
Normal file
24
roles/sys-stk-front-pure/meta/main.yml
Normal file
@@ -0,0 +1,24 @@
|
||||
galaxy_info:
|
||||
author: "Kevin Veen-Birkenbach"
|
||||
description: "Configures Nginx to serve sites securely over HTTPS, integrates Let’s Encrypt and cleans up stale domain configs."
|
||||
company: |
|
||||
Kevin Veen-Birkenbach
|
||||
Consulting & Coaching Solutions
|
||||
https://www.veen.world
|
||||
license: "Infinito.Nexus NonCommercial License"
|
||||
license_url: "https://s.infinito.nexus/license"
|
||||
min_ansible_version: "2.9"
|
||||
platforms:
|
||||
- name: Archlinux
|
||||
versions:
|
||||
- rolling
|
||||
galaxy_tags:
|
||||
- nginx
|
||||
- https
|
||||
- tls
|
||||
- letsencrypt
|
||||
- security
|
||||
- automation
|
||||
repository: "https://s.infinito.nexus/code"
|
||||
documentation: "https://docs.infinito.nexus"
|
||||
issue_tracker_url: "https://s.infinito.nexus/issues"
|
10
roles/sys-stk-front-pure/tasks/main.yml
Normal file
10
roles/sys-stk-front-pure/tasks/main.yml
Normal file
@@ -0,0 +1,10 @@
|
||||
- block:
|
||||
- name: Include dependencies
|
||||
include_role:
|
||||
name: '{{ item }}'
|
||||
loop:
|
||||
- srv-core
|
||||
- sys-svc-cln-domains
|
||||
- srv-letsencrypt
|
||||
- include_tasks: utils/run_once.yml
|
||||
when: run_once_sys_stk_front_pure is not defined
|
Reference in New Issue
Block a user