99 lines
2.3 KiB
YAML
99 lines
2.3 KiB
YAML
---
|
|
|
|
- name: Deploy letsencrypt certificate
|
|
ansible.builtin.include_role:
|
|
name: add_cert
|
|
vars:
|
|
add_cert_domain: "{{ tunuifranken_domain }}"
|
|
add_cert_email: "{{ tunuifranken_server_admin }}"
|
|
add_cert_post_hook: systemctl restart apache2
|
|
|
|
- name: Install needed packages
|
|
become: true
|
|
ansible.builtin.apt:
|
|
name:
|
|
- git
|
|
- acl # for become_user: forgejo
|
|
state: present
|
|
|
|
- name: Create tunuifranken group
|
|
become: true
|
|
ansible.builtin.group:
|
|
name: tunuifranken
|
|
system: true
|
|
|
|
- name: Create tunuifranken user
|
|
become: true
|
|
ansible.builtin.user:
|
|
name: tunuifranken
|
|
group: tunuifranken
|
|
create_home: true
|
|
home: /var/lib/tunuifranken
|
|
shell: /bin/false
|
|
system: true
|
|
|
|
- name: Create tunuifranken directory
|
|
become: true
|
|
ansible.builtin.file:
|
|
path: "/var/www/{{ tunuifranken_domain }}"
|
|
owner: tunuifranken
|
|
group: tunuifranken
|
|
state: directory
|
|
mode: 0775
|
|
|
|
- name: Copy vHost conf
|
|
become: true
|
|
ansible.builtin.template:
|
|
src: apache2/vhost.conf.j2
|
|
dest: "/etc/apache2/sites-available/{{ tunuifranken_domain }}.conf"
|
|
mode: 0644
|
|
notify: Reload apache2 service
|
|
|
|
- name: Activate vHost
|
|
become: true
|
|
ansible.builtin.command: "a2ensite {{ tunuifranken_domain }}.conf"
|
|
register: result
|
|
changed_when: "'already enabled' not in result.stdout"
|
|
notify: Reload apache2 service
|
|
|
|
- name: Create .ssh dir
|
|
become: true
|
|
become_user: tunuifranken
|
|
ansible.builtin.file:
|
|
path: ~/.ssh
|
|
state: directory
|
|
owner: tunuifranken
|
|
group: tunuifranken
|
|
mode: 0700
|
|
|
|
- name: Add SSH public key
|
|
become: true
|
|
become_user: tunuifranken
|
|
ansible.builtin.copy:
|
|
content: "{{ tunuifranken_ssh_keys.pub }}"
|
|
dest: ~/.ssh/id_rsa.pub
|
|
owner: tunuifranken
|
|
group: tunuifranken
|
|
mode: 0644
|
|
|
|
- name: Add SSH private key
|
|
become: true
|
|
become_user: tunuifranken
|
|
ansible.builtin.copy:
|
|
content: "{{ tunuifranken_ssh_keys.priv }}"
|
|
dest: ~/.ssh/id_rsa
|
|
owner: tunuifranken
|
|
group: tunuifranken
|
|
mode: 0600
|
|
|
|
- name: Clone tunuifranken.info repo
|
|
become: true
|
|
become_user: tunuifranken
|
|
ansible.builtin.git:
|
|
repo: git@tunuifranken.info:flyingscorpio/tunuifranken.info.git
|
|
dest: "/var/www/{{ tunuifranken_domain }}"
|
|
clone: true
|
|
version: main
|
|
update: false
|
|
accept_newhostkey: true
|
|
notify: Reload apache2 service
|