mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-10-31 18:29:21 +00:00
- Renamed all Readme.md → README.md - Renamed all Todo.md → TODO.md - Added integration test (tests/integration/test_filename_conventions.py) to automatically check naming convention. Background: Consistency in file naming (uppercase README.md and TODO.md) avoids issues with case-sensitive filesystems and ensures desktop cards (e.g. Pretix) are properly included. Ref: https://chatgpt.com/share/68b1d135-c688-800f-9441-46a3cbfee175
Webserver
This Ansible role installs and configures Nginx as a core HTTP/stream server on Arch Linux systems. It provides:
- HTTP serving with MIME types, gzip compression, caching, and custom
nginx.conftemplating. - TCP/UDP stream support via the Nginx Streams module.
- Directory management for configuration,
sites-available/enabled, cache, and data. - Debugging helpers: log formats and instructions for general and detailed troubleshooting.
Features
- Package installation of
nginxandnginx-mod-stream. - Idempotent setup: tasks run only once per host.
- Configurable reset and cleanup modes to purge and recreate directories.
- Custom
nginx.conftemplate with sensible defaults for performance and security. - Stream proxy support: includes
streamblock for TCP/UDP proxies. - Cache directory management: cleanup and recreation based on
MODE_CLEANUP.
Debugging Tips
- General logs:
journalctl -f -u nginx - Filter by host:
journalctl -u nginx -f | grep "{{ inventory_hostname }}" - Enable detailed format: set
MODE_DEBUG: trueand reload Nginx.