diff --git a/hosts b/hosts index 9ea3076..93c2b66 100644 --- a/hosts +++ b/hosts @@ -54,6 +54,7 @@ pi5: larry: monty: duncan: + testsystem: pi4: bramble4: diff --git a/initnextcloud.yml b/initnextcloud.yml index 51a72c3..5d449f8 100644 --- a/initnextcloud.yml +++ b/initnextcloud.yml @@ -2,13 +2,7 @@ - hosts: "{{ target }}" gather_facts: false remote_user: pi - vars_files: - - vars/nextcloud-dirs.txt roles: - - initpi - - installpkg - mounttank - - installsoft - - disableswap - initnextcloud diff --git a/roles/initnextcloud/tasks/main.yml b/roles/initnextcloud/tasks/main.yml index 15e3696..f2c771b 100644 --- a/roles/initnextcloud/tasks/main.yml +++ b/roles/initnextcloud/tasks/main.yml @@ -1,43 +1,90 @@ - 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" - name: create home dirs file: - path: ~/{{ item}} + 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 }} + src: "{{ item }}" dest: /home/pi/bin mode: '0755' - loop: "{{ query('fileglob', 'scripts/*') }}" + loop: "{{ query('fileglob', 'files/scripts/*') }}" - name: copy resources to ~ copy: - src: {{ item }} + src: "{{ item }}" dest: /home/pi loop: "{{ query('fileglob', 'resources/*') }}" -- name: create nextcloud dirs + +- name: create volume dirs + become: true file: - path: ~/{{ item}} + path: "{{ item }}" state: directory - loop: "{{ ncdirs }}" + 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 + 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 + dest: /home/pi/git/dockercmd version: master - name: Run docker-compose up diff --git a/roles/initnextcloud/vars/nextcloud-dirs.yml b/roles/initnextcloud/vars/dirs.yml similarity index 73% rename from roles/initnextcloud/vars/nextcloud-dirs.yml rename to roles/initnextcloud/vars/dirs.yml index 3b84c65..054ae5b 100644 --- a/roles/initnextcloud/vars/nextcloud-dirs.yml +++ b/roles/initnextcloud/vars/dirs.yml @@ -1,12 +1,19 @@ +volumedirs: + - /mnt/nextcloud + - /opt/clamav + - /opt/grafana + - /opt/influxdb + +homedirs: + - bin + - git + ncdirs: - /mnt/nextcloud/nextcloud/apps - /mnt/nextcloud/nextcloud/html - /mnt/nextcloud/nextcloud//data - /nextcloud/nextcloud/config - - /opt/clamav - - /opt/grafana - - /opt/influxdb partuuid: - - 6b61b9cb-01 + - 011ad286-01 diff --git a/roles/initnextcloud/vars/partuuid.yml b/roles/initnextcloud/vars/partuuid.yml new file mode 100644 index 0000000..962b2c2 --- /dev/null +++ b/roles/initnextcloud/vars/partuuid.yml @@ -0,0 +1 @@ +partuuid: "011ad286-01" diff --git a/roles/initnextcloud/vars/pckg.yml b/roles/initnextcloud/vars/pckg.yml new file mode 100644 index 0000000..bc9e321 --- /dev/null +++ b/roles/initnextcloud/vars/pckg.yml @@ -0,0 +1,15 @@ +packages: + - python3-docker + - neofetch + - htop + - cowsay + - docker.io + - docker-compose + - git + - locate + - dnsutils + - nfs-kernel-server + - vim + - lsof + - ripgrep +