initial commit
This commit is contained in:
76
site.yml
Normal file
76
site.yml
Normal file
@@ -0,0 +1,76 @@
|
||||
---
|
||||
# Main playbook for complete VPS setup with Trillium Notes
|
||||
- name: Complete VPS Setup for Trillium Notes
|
||||
hosts: vps
|
||||
become: yes
|
||||
gather_facts: yes
|
||||
|
||||
pre_tasks:
|
||||
- name: Display deployment information
|
||||
debug:
|
||||
msg:
|
||||
- "Starting deployment for {{ full_domain }}"
|
||||
- "Target server: {{ inventory_hostname }}"
|
||||
- "User: {{ ansible_user }}"
|
||||
- "Email for SSL: {{ ssl_email }}"
|
||||
|
||||
- name: Update system packages
|
||||
apt:
|
||||
update_cache: yes
|
||||
upgrade: safe
|
||||
autoremove: yes
|
||||
|
||||
tasks:
|
||||
# Include individual playbooks
|
||||
- name: Include Docker installation
|
||||
import_tasks: playbooks/01-install-docker.yml
|
||||
tags: docker
|
||||
|
||||
- name: Include Nginx installation
|
||||
import_tasks: playbooks/02-install-nginx.yml
|
||||
tags: nginx
|
||||
|
||||
- name: Include Certbot setup
|
||||
import_tasks: playbooks/03-setup-certbot.yml
|
||||
tags: certbot
|
||||
|
||||
- name: Include Trillium deployment
|
||||
import_tasks: playbooks/04-deploy-trillium.yml
|
||||
tags: trillium
|
||||
|
||||
- name: Include Gitea deployment
|
||||
import_tasks: playbooks/05-deploy-gitea.yml
|
||||
tags: gitea
|
||||
|
||||
- name: Include Gitea Nginx configuration
|
||||
import_tasks: playbooks/06-configure-gitea-nginx.yml
|
||||
tags: gitea
|
||||
|
||||
- name: Include Gitea Certbot setup
|
||||
import_tasks: playbooks/07-setup-gitea-certbot.yml
|
||||
tags: gitea
|
||||
|
||||
post_tasks:
|
||||
- name: Get service status
|
||||
systemd:
|
||||
name: "{{ item }}"
|
||||
register: service_status
|
||||
loop:
|
||||
- docker
|
||||
- nginx
|
||||
- gitea
|
||||
- trillium
|
||||
changed_when: false
|
||||
failed_when: false
|
||||
|
||||
- name: Final system check
|
||||
debug:
|
||||
msg:
|
||||
- "Deployment completed successfully!"
|
||||
- "Trillium Notes should be accessible at: https://{{ trillium_domain }}"
|
||||
- "Gitea should be accessible at: https://{{ gitea_domain }}"
|
||||
- "Services status:"
|
||||
- " - Docker: {{ service_status.results[0].status.ActiveState }}"
|
||||
- " - Nginx: {{ service_status.results[1].status.ActiveState }}"
|
||||
- " - Gitea: {{ service_status.results[2].status.ActiveState if service_status.results[2] is defined else 'not found' }}"
|
||||
- " - Trillium: {{ service_status.results[3].status.ActiveState if service_status.results[3] is defined else 'not found' }}"
|
||||
Reference in New Issue
Block a user