Browse Source

Aufteilung in einzelne Module.

master
Olli Graf 2 weeks ago
parent
commit
e3562f640f
  1. 23
      roles/initnextcloud/tasks/dirs.yml
  2. 24
      roles/initnextcloud/tasks/docker.yml
  3. 13
      roles/initnextcloud/tasks/install.yml
  4. 94
      roles/initnextcloud/tasks/main.yml
  5. 16
      roles/initnextcloud/tasks/mount.yml
  6. 13
      roles/initnextcloud/tasks/optional.yml
  7. 6
      roles/initnextcloud/vars/dirs.yml

23
roles/initnextcloud/tasks/dirs.yml

@ -0,0 +1,23 @@
- name: create home dirs
file:
path: "~/{{ item }}"
state: directory
loop: "{{ homedirs }}"
- name: create volume dir
become: true
file:
path: "{{ item }}"
state: directory
owner: pi
group: pi
mode: '0755'
loop: "{{ volumedirs }}"
- name: create nextcloud dirs
file:
path: ~/{{ item}}
state: directory
loop: "{{ ncdirs }}"

24
roles/initnextcloud/tasks/docker.yml

@ -0,0 +1,24 @@
- name: Clone docker-compose repository
ansible.builtin.git:
repo: "{{ dockerrepo }}"
dest: "{{ dockerdir }}"
version: master
- name: Permission für Docker
become: true
file: path=/var/run/docker.sock mode=0660
# mode: 660
- name: adding user pi to docker group
become: true
user:
name: pi
groups: docker,video
- name: Run docker-compose up
community.docker.docker_compose:
project_src: '{{dockerdir }}/compose/nextcloud'
state: present
become: true

13
roles/initnextcloud/tasks/install.yml

@ -0,0 +1,13 @@
- name: PI Update
become: true
apt:
update_cache: yes
upgrade: dist
- name: Pakete installieren
become: true
ansible.builtin.apt:
name: "{{ packages }}"
state: present
update_cache: yes
cache_valid_time: 86400

94
roles/initnextcloud/tasks/main.yml

@ -1,94 +1,12 @@
- include_tasks: ../subtasks/upgrade.yml
- include_vars: "roles/initnextcloud/vars/dirs.yml"
- include_vars: "roles/initnextcloud/vars/partuuid.yml"
- include_vars: "roles/initnextcloud/vars/pckg.yml"
- include_tasks: ../subtasks/upgrade.yml
- import_tasks: install.yml
- import_tasks: dirs.yml
- import_tasks: docker.yml
- import_tasks: mount.yml
- import_tasks: optional.yml
- name: create home dirs
file:
path: "~/{{ item }}"
state: directory
loop: "{{ homedirs }}"
- name: PI Update
become: true
apt:
update_cache: yes
upgrade: dist
- name: Pakete installieren
become: true
ansible.builtin.apt:
name: "{{ packages }}"
state: present
update_cache: yes
cache_valid_time: 86400
- name: Permission für Docker
become: true
file: path=/var/run/docker.sock mode=0660
# mode: 660
- name: adding user pi to docker group
become: true
user:
name: pi
groups: docker,video
loop:
- bin
- git
- name: copy scripts
copy:
src: "{{ item }}"
dest: /home/pi/bin
mode: '0755'
loop: "{{ query('fileglob', 'files/scripts/*') }}"
- name: copy resources to ~
copy:
src: "{{ item }}"
dest: /home/pi
loop: "{{ query('fileglob', 'resources/*') }}"
- name: create volume dirs
become: true
file:
path: "{{ item }}"
state: directory
owner: pi
group: pi
mode: '0755'
loop: "{{ volumedirs }}"
- name: Add Nextcloud mount to fstab
become: true
ansible.builtin.blockinfile:
path: /etc/fstab
marker: "# {mark} ANSIBLE MANAGED BLOCK nextcloud"
block: |
PARTUUID={{ partuuid }} /mnt/nextcloud ext4 defaults,noatime 0 1
- name: Mount /mnt/nextcloud
become: true
ansible.posix.mount:
path: /mnt/nextcloud
state: mounted
fstype: ext4
src: PARTUUID={{ partuuid }}
- name: create nextcloud dirs
file:
path: ~/{{ item}}
state: directory
loop: "{{ ncdirs }}"
- name: Clone docker-compose repository
ansible.builtin.git:
repo: 'https://git.olli-cloud.de/olli/dockercmd'
dest: /home/pi/git/dockercmd
version: master
- name: Run docker-compose up
community.docker.docker_compose:
project_src: '/home/pi/git/dockercmd/compose/nextcloud'
state: present
become: true

16
roles/initnextcloud/tasks/mount.yml

@ -0,0 +1,16 @@
- name: Add Nextcloud mount to fstab
become: true
ansible.builtin.blockinfile:
path: /etc/fstab
marker: "# {mark} ANSIBLE MANAGED BLOCK nextcloud"
block: |
PARTUUID={{ partuuid }} /mnt/nextcloud ext4 defaults,noatime 0 1
- name: Mount /mnt/nextcloud
become: true
ansible.posix.mount:
path: /mnt/nextcloud
state: mounted
fstype: ext4
src: PARTUUID={{ partuuid }}

13
roles/initnextcloud/tasks/optional.yml

@ -0,0 +1,13 @@
- name: copy scripts
copy:
src: "{{ item }}"
dest: /home/pi/bin
mode: '0755'
loop: "{{ query('fileglob', 'files/scripts/*') }}"
- name: copy resources to ~
copy:
src: "{{ item }}"
dest: /home/pi
loop: "{{ query('fileglob', 'resources/*') }}"

6
roles/initnextcloud/vars/dirs.yml

@ -1,3 +1,6 @@
dockerrepo: "https://git.olli-cloud.de/olli/dockercmd"
dockerdir: "/home/pi/git/dockercmd"
volumedirs:
- /mnt/nextcloud
- /opt/clamav
@ -14,6 +17,5 @@ ncdirs:
- /mnt/nextcloud/nextcloud//data
- /nextcloud/nextcloud/config
partuuid:
- 011ad286-01

Loading…
Cancel
Save