Some checks failed
🚀 Build & Deploy Image / Determine Build Necessity (push) Failing after 10m14s
🚀 Build & Deploy Image / Build Runtime Base Image (push) Has been skipped
🚀 Build & Deploy Image / Build Docker Image (push) Has been skipped
🚀 Build & Deploy Image / Run Tests & Quality Checks (push) Has been skipped
🚀 Build & Deploy Image / Auto-deploy to Staging (push) Has been skipped
🚀 Build & Deploy Image / Auto-deploy to Production (push) Has been skipped
Security Vulnerability Scan / Check for Dependency Changes (push) Failing after 11m25s
Security Vulnerability Scan / Composer Security Audit (push) Has been cancelled
- Remove middleware reference from Gitea Traefik labels (caused routing issues) - Optimize Gitea connection pool settings (MAX_IDLE_CONNS=30, authentication_timeout=180s) - Add explicit service reference in Traefik labels - Fix intermittent 504 timeouts by improving PostgreSQL connection handling Fixes Gitea unreachability via git.michaelschiemer.de
64 lines
2.1 KiB
YAML
64 lines
2.1 KiB
YAML
---
|
|
- name: Sync Infrastructure Stacks to Production Server
|
|
hosts: production
|
|
become: no
|
|
gather_facts: yes
|
|
|
|
vars:
|
|
local_stacks_path: "{{ playbook_dir }}/../../stacks"
|
|
remote_stacks_path: "{{ stacks_base_path | default('/home/deploy/deployment/stacks') }}"
|
|
|
|
tasks:
|
|
- name: Ensure deployment directory exists on production
|
|
file:
|
|
path: "{{ remote_stacks_path }}"
|
|
state: directory
|
|
mode: '0755'
|
|
owner: "{{ ansible_user }}"
|
|
group: "{{ ansible_user }}"
|
|
|
|
- name: Sync stacks directory to production server
|
|
synchronize:
|
|
src: "{{ local_stacks_path }}/"
|
|
dest: "{{ remote_stacks_path }}/"
|
|
delete: no
|
|
recursive: yes
|
|
rsync_opts:
|
|
- "--chmod=D755,F644"
|
|
- "--exclude=.git"
|
|
- "--exclude=*.log"
|
|
- "--exclude=data/"
|
|
- "--exclude=volumes/"
|
|
- "--exclude=acme.json"
|
|
- "--exclude=*.key"
|
|
- "--exclude=*.pem"
|
|
- "--exclude=app.ini"
|
|
- "--exclude=app.ini.minimal"
|
|
|
|
- name: Ensure executable permissions on PostgreSQL backup scripts
|
|
file:
|
|
path: "{{ item }}"
|
|
mode: '0755'
|
|
loop:
|
|
- "{{ remote_stacks_path }}/postgresql-production/scripts/backup-entrypoint.sh"
|
|
- "{{ remote_stacks_path }}/postgresql-production/scripts/backup.sh"
|
|
- "{{ remote_stacks_path }}/postgresql-production/scripts/restore.sh"
|
|
- "{{ remote_stacks_path }}/postgresql-staging/scripts/backup-entrypoint.sh"
|
|
- "{{ remote_stacks_path }}/postgresql-staging/scripts/backup.sh"
|
|
- "{{ remote_stacks_path }}/postgresql-staging/scripts/restore.sh"
|
|
ignore_errors: yes
|
|
|
|
- name: Verify stacks directory exists on production
|
|
stat:
|
|
path: "{{ remote_stacks_path }}"
|
|
register: stacks_dir
|
|
|
|
- name: Display sync results
|
|
debug:
|
|
msg:
|
|
- "=== Stacks Synchronization Complete ==="
|
|
- "Stacks directory exists: {{ stacks_dir.stat.exists }}"
|
|
- "Path: {{ remote_stacks_path }}/stacks"
|
|
- ""
|
|
- "Next: Run infrastructure deployment playbook"
|