Compare commits

...

41 Commits

Author SHA1 Message Date
3732db698e klal
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 0s
2025-06-21 12:23:05 +02:00
42fdd319a3 klal
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 0s
2025-06-21 11:11:39 +02:00
47e730ef60 klal
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 0s
2025-06-20 01:53:36 +02:00
ddee60ab9c klal
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 0s
2025-06-19 20:24:53 +02:00
41bd0fbe73 klal 2025-06-19 20:09:33 +02:00
dac032de7c klal
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 0s
2025-06-08 22:58:39 +02:00
899d130325 klal
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 0s
2025-05-24 23:34:28 +02:00
8e7fb3bc42 klal
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 0s
2025-05-24 20:11:29 +02:00
46da0fa6e9 klal 2025-05-24 20:05:19 +02:00
2f3f58c965 klal 2025-05-24 19:57:19 +02:00
264f510541 klal 2025-05-24 19:56:14 +02:00
b01bdb59f1 klal 2025-05-24 19:51:55 +02:00
644d8b1a59 klal 2025-05-24 19:50:01 +02:00
230c665365 klal 2025-05-24 19:47:41 +02:00
6a0f33c73f klal 2025-05-24 19:46:03 +02:00
026925081e klal 2025-05-24 19:36:39 +02:00
5426f7ae3d klal
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 1s
2025-05-20 13:23:57 +02:00
d255ad37ad klal
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 0s
2025-05-07 18:00:24 +02:00
89030dec11 klal 2025-05-07 17:07:13 +02:00
6df5f17cfe klal 2025-05-07 17:03:31 +02:00
ff8ebb3940 klal 2025-05-07 17:01:40 +02:00
6a720e2e89 klal 2025-05-07 16:58:23 +02:00
02dc0134c4 klal 2025-05-07 16:56:57 +02:00
e7fb37545f klal 2025-05-07 16:51:45 +02:00
5927ad571e klal 2025-05-07 16:50:23 +02:00
9871b8cb29 klal
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 0s
2025-05-06 18:20:35 +02:00
6de27cd975 klal 2025-05-06 18:15:53 +02:00
d2c7c49d68 klal 2025-05-06 18:15:06 +02:00
9e3ce2e113 klal 2025-05-06 18:05:32 +02:00
bb248011ad klal 2025-05-06 18:04:03 +02:00
4a7838cd19 klal
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 0s
2025-05-05 22:20:28 +02:00
9a21d1c273 klal 2025-05-05 18:31:26 +02:00
2b4421d92d klal 2025-05-05 16:31:28 +02:00
8c88139223 renamed customer user group
All checks were successful
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 1s
2025-04-28 19:22:21 +02:00
a2825f31c3 renamed customer user group
All checks were successful
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 1s
2025-04-28 19:02:50 +02:00
024a3bb61f klal
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Has been cancelled
2025-04-28 16:56:26 +02:00
9bc4c937de klal
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Has been cancelled
2025-04-28 15:05:09 +02:00
f339cb755a klal 2025-04-26 19:37:01 +02:00
5ab8d6cf02 klal 2025-04-25 14:26:00 +02:00
153c3a5d1a renamed customer user group 2025-04-23 11:04:30 +02:00
f18365f184 renamed customer user group 2025-04-16 15:27:19 +02:00
19 changed files with 472 additions and 395 deletions

View File

@ -0,0 +1,9 @@
name: Gitea Actions Demo
run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀
on: [push]
jobs:
Explore-Gitea-Actions:
runs-on: jaydee
steps:
- run: curl -X GET https://kestra.sectorq.eu/api/v1/executions/webhook/jaydee/ansible-all/f851511c32ca9450

1
hosts
View File

@ -10,6 +10,7 @@
# Ex 1: Ungrouped hosts, specify before any group headers. # Ex 1: Ungrouped hosts, specify before any group headers.
#green.example.com #green.example.com
#blue.example.com #blue.example.com
#192.168.100.1 #192.168.100.1

View File

@ -1,17 +1,17 @@
$ANSIBLE_VAULT;1.1;AES256 $ANSIBLE_VAULT;1.1;AES256
61323036366363323032396232663032666134316166633635316134623436303565316538333637 34653034626436373537323430316462643663336164613763306336333038346562356565393036
6138356462323362636265323030353439393233643032330a313763336632383432613830356136 3964393861323439333839383061303864326235306665620a346233313633393135366362326464
31353731646665373863666364363163633539313436643638663736393734363532363562353866 63643039363635646131323365313833643864373637346536663831613837353833343030623366
3333343966613162310a643534663838306435373630303337356331356164356463653863613363 3038303063393565350a613439646161363330626566646264313939653339383439623532636638
62663862376430383238616135383233313430323839613631633339373430353361326338303666 38646433353765396136333236656535636235313639393565306636376438346362646438613835
35316631363739313938613737656661366636613165643736343433646233666362363034333139 62663031333832666262616365343831353530646263383932373666386631633430626363363966
31646636663161313365373337333661373330386365306664306233343765636136393531643531 61396336303365306135363039303032646137613330646434366638633738363064356132383439
63653362323461313763653836663165383162363763396162393932653764646532313637656136 36346432306531356333313963353463626232613563653331396334656539643531343136636635
62313761386237326633653037636334343765383464333562326230323131306637323265373261 31613762383664353930653165313461626133336161353639303662666234356138373539376161
37316263613732333633636334363762383733646461653632363434386539303130626538616437 30653837316266356136353132373663396365633434393166383230363263326139316362383766
66306433353061323932383437373637613638643232363461316262346436366162316637306461 64303738393663343636616437346535346566346536616663333866613966343563306265633064
64336261613436323664643063616239636631343139636164633234613536633665643231346463 66333331393861626637616330333463636135316466616532373663663464613034656337363437
33343536373235303032373939353032666237663137353366326639613730393439353232303964 62653333653838326632643238616638313935383532303233643132303637653963626363633662
63623536666339333135643361636138303539613233326639623236323331336661353734373562 33646161373931386133353338643462306635393866656662376234396533376431366134653536
31633131383835323734646235363266666336343565623339373265623635323134333964353966 36363835346434323338363465336166303161633732333232653861646136326334616261653462
61623231323936643565 66376139313433383665

View File

@ -4,54 +4,87 @@
# vars: # vars:
# DOCKER_IMAGE: docker-tasmota # DOCKER_IMAGE: docker-tasmota
# FWS: tasmota # FWS: tasmota
become: true
tasks: tasks:
- name: Pull tasmota - name: Change conf
ansible.builtin.shell: community.general.git_config:
cmd: 'git config --global --add safe.directory /share/docker_data/docker-tasmota/Tasmota' name: safe.director
scope: global
- name: Fetch tasmota value: /share/docker_data/docker-tasmota/Tasmota
ansible.builtin.shell:
cmd: 'git fetch https://github.com/arendst/Tasmota.git {{ BRANCH }}'
chdir: /share/docker_data/docker-tasmota/Tasmota
- name: Checkout tasmota branch # - name: Pull tasmota
ansible.builtin.shell: # ansible.builtin.shell:
cmd: 'git checkout --force {{ BRANCH }}' # cmd: 'git config --global --add safe.directory /share/docker_data/docker-tasmota/Tasmota'
chdir: /share/docker_data/docker-tasmota/Tasmota
- name: Pull tasmota - name: Checkout a github repo and use refspec to fetch all pull requests
ansible.builtin.shell: ansible.builtin.git:
cmd: 'git pull' repo: 'https://github.com/arendst/Tasmota.git'
chdir: /share/docker_data/docker-tasmota/Tasmota dest: /share/docker_data/docker-tasmota/Tasmota
version: '{{ BRANCH }}'
# - name: Fetch tasmota
# ansible.builtin.shell:
# cmd: 'git fetch https://github.com/arendst/Tasmota.git {{ BRANCH }}'
# chdir: /share/docker_data/docker-tasmota/Tasmota
- name: Git checkout
ansible.builtin.git:
repo: 'https://github.com/arendst/Tasmota.git'
dest: /share/docker_data/docker-tasmota/Tasmota
version: '{{ BRANCH }}'
# - name: Checkout tasmota branch
# ansible.builtin.shell:
# cmd: 'git checkout --force {{ BRANCH }}'
# chdir: /share/docker_data/docker-tasmota/Tasmota
- name: Just get information about the repository whether or not it has already been cloned locally
ansible.builtin.git:
repo: https://github.com/arendst/Tasmota.git
dest: /share/docker_data/docker-tasmota/Tasmota
update: true
# - name: Pull tasmota
# ansible.builtin.shell:
# cmd: 'git pull'
# chdir: /share/docker_data/docker-tasmota/Tasmota
- name: Copy platformio_override - name: Copy platformio_override
ansible.builtin.shell: ansible.builtin.command:
cmd: 'cp platformio_override.ini Tasmota/platformio_override.ini' cmd: 'cp platformio_override.ini Tasmota/platformio_override.ini'
chdir: /share/docker_data/docker-tasmota/ chdir: /share/docker_data/docker-tasmota/
register: my_output
changed_when: my_output.rc != 0
- name: Copy user_config_override - name: Copy user_config_override
ansible.builtin.shell: ansible.builtin.command:
cmd: 'cp user_config_override.h Tasmota/tasmota/user_config_override.h' cmd: 'cp user_config_override.h Tasmota/tasmota/user_config_override.h'
chdir: /share/docker_data/docker-tasmota/ chdir: /share/docker_data/docker-tasmota/
register: my_output
changed_when: my_output.rc != 0
- name: Build tasmota - name: Build tasmota
ansible.builtin.shell: ansible.builtin.command:
cmd: 'docker run --rm -v /share/docker_data/docker-tasmota/Tasmota:/tasmota -u $UID:$GID {{ DOCKER_IMAGE }} -e {{ FWS }}' cmd: 'docker run --rm -v /share/docker_data/docker-tasmota/Tasmota:/tasmota -u 0:0 {{ DOCKER_IMAGE }} -e {{ FWS }}'
chdir: /share/docker_data/docker-tasmota/ chdir: /share/docker_data/docker-tasmota/
when: FWS != "all" when: FWS != "all"
register: my_output
changed_when: my_output.rc != 0
- name: Build tasmota - name: Build tasmota
ansible.builtin.shell: ansible.builtin.command:
cmd: 'docker run --rm -v /share/docker_data/docker-tasmota/Tasmota:/tasmota -u $UID:$GID {{ DOCKER_IMAGE }}' cmd: 'docker run --rm -v /share/docker_data/docker-tasmota/Tasmota:/tasmota -u 0:0 {{ DOCKER_IMAGE }}'
chdir: /share/docker_data/docker-tasmota/ chdir: /share/docker_data/docker-tasmota/
when: FWS == "all" when: FWS == "all"
register: my_output
changed_when: my_output.rc != 0
- name: Create a directory if it does not exist - name: Create a directory if it does not exist
ansible.builtin.file: ansible.builtin.file:
path: /share/docker_data/webhub/fw/{{ BRANCH }} path: /share/docker_data/webhub/fw/{{ BRANCH }}
state: directory state: directory
mode: '0755' mode: '0755'
- name: Build tasmota - name: Build tasmota
ansible.builtin.shell: ansible.builtin.shell:
cmd: 'mv /share/docker_data/docker-tasmota/Tasmota/build_output/firmware/* /share/docker_data/webhub/fw/{{ BRANCH }}' cmd: 'mv /share/docker_data/docker-tasmota/Tasmota/build_output/firmware/* /share/docker_data/webhub/fw/{{ BRANCH }}/'

View File

@ -1,10 +0,0 @@
- hosts: nas
name: Sync mailu
ignore_unreachable: false
tasks:
- name: Syncing all
ansible.builtin.shell: 'rsync -avh --delete root@192.168.77.189:/srv/dev-disk-by-uuid-02fbe97a-cd9a-4511-8bd5-21f8516353ee/docker_data/latest/{{ CONTAINERS }} /share/docker_data/ --exclude="home-assistant.log*" --exclude="gitlab/logs/*"'
#ansible.builtin.shell: 'rsync -avh --delete /share/docker_data/{mailu2,webhub,nginx,heimdall} root@192.168.77.238:/share/docker_data/ --exclude="home-assistant.log*" --exclude="gitlab/logs/*"'
#ansible.builtin.shell: 'ls -la'
when: inventory_hostname in groups['nas']
# loop: '{{ CONTAINERS }}'

View File

@ -17,16 +17,24 @@
content: | content: |
username={{ samba_user }} username={{ samba_user }}
password={{ samba_password }} password={{ samba_password }}
mode: '0700' mode: '0600'
owner: root
group: root
- name: Creating a file with content
ansible.builtin.copy:
dest: "/etc/auto.m-server"
content: |
docker_data -fstype=nfs m-server.home.lan:/share/docker_data
downloads -fstype=nfs m-server.home.lan:/media/data/downloads
mode: '0600'
owner: root owner: root
group: root group: root
- name: Creating a file with content - name: Creating a file with content
ansible.builtin.copy: ansible.builtin.copy:
dest: "/etc/auto.nas-movies" dest: "/etc/auto.nas-movies"
content: | content: |
movies -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0777,file_mode=0777,uid=jd,rw ://nas.home.lan/movies movies -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/movies
mode: '0700' mode: '0600'
owner: root owner: root
group: root group: root
@ -34,8 +42,8 @@
ansible.builtin.copy: ansible.builtin.copy:
dest: "/etc/auto.nas-music" dest: "/etc/auto.nas-music"
content: | content: |
music -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0777,file_mode=0777,uid=jd,rw ://nas.home.lan/music music -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/music
mode: '0700' mode: '0600'
owner: root owner: root
group: root group: root
@ -43,8 +51,8 @@
ansible.builtin.copy: ansible.builtin.copy:
dest: "/etc/auto.nas-shows" dest: "/etc/auto.nas-shows"
content: | content: |
shows -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0777,file_mode=0777,uid=jd,rw ://nas.home.lan/shows shows -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/shows
mode: '0700' mode: '0600'
owner: root owner: root
group: root group: root
@ -54,12 +62,12 @@
content: | content: |
nas-data -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/Data nas-data -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/Data
nas-docker-data -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/docker_data nas-docker-data -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/docker_data
nas-photo -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/Photo nas-photo -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/Photo
nas-public -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/Public nas-public -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/Public
nas-install -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/install nas-install -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/install
nas-downloads -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/downloads nas-downloads -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/downloads
nas-games -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/qda_2 nas-games -fstype=cifs,credentials=/etc/auto.auth,dir_mode=0755,file_mode=0755,uid=jd,rw ://nas.home.lan/qda_2
mode: '0700' mode: '0600'
owner: root owner: root
group: root group: root
# - name: Reconfigure autofs Server # - name: Reconfigure autofs Server
@ -84,10 +92,16 @@
path: /etc/auto.master path: /etc/auto.master
regexp: "^/media/data/shows/nas.*" regexp: "^/media/data/shows/nas.*"
line: /media/data/shows/nas /etc/auto.nas-shows --timeout 360 --ghost line: /media/data/shows/nas /etc/auto.nas-shows --timeout 360 --ghost
- name: Reconfigure autofs Server - name: Reconfigure autofs Server
ansible.builtin.lineinfile: ansible.builtin.lineinfile:
path: /etc/auto.master path: /etc/auto.master
line: /media/nas /etc/auto.nas --timeout 360 --ghost line: /media/nas /etc/auto.nas --timeout 360 --ghost
- name: Reconfigure autofs Server
ansible.builtin.lineinfile:
path: /etc/auto.master
line: /media/m-server /etc/auto.m-server --timeout 360 --ghost
- name: Restart docker service - name: Restart docker service
ansible.builtin.service: ansible.builtin.service:

View File

@ -1,8 +1,10 @@
- name: Upgrade the full OS - name: Upgrade
ansible.builtin.apt: become: "{{ false if inventory_hostname == 'nas.home.lan' else true }}"
upgrade: full block:
become: true - name: Upgrade the full OS
- name: Upgrade flatpack ansible.builtin.apt:
ansible.builtin.command: flatpak update -y update_cache: true
become: true upgrade: full
when: inventory_hostname == 'morefine.home.lan' - name: Upgrade flatpack
ansible.builtin.command: flatpak update -y
when: inventory_hostname == 'morefine.home.lan'

View File

@ -1,33 +1,33 @@
-----BEGIN CERTIFICATE----- -----BEGIN CERTIFICATE-----
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
uUFBhdL6wpJ0oAps3A== isOdaq7ol1Q0iF9tjQ==
-----END CERTIFICATE----- -----END CERTIFICATE-----

View File

@ -1,32 +1,32 @@
-----BEGIN CERTIFICATE----- -----BEGIN CERTIFICATE-----
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
-----END CERTIFICATE----- -----END CERTIFICATE-----

View File

@ -1,52 +1,52 @@
-----BEGIN PRIVATE KEY----- -----BEGIN PRIVATE KEY-----
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
/dKUFh7pGk5UE/IXZWlBVDufNy/b FOWrzZPSFGNqLJEHjZdIBAaDR6ER7A==
-----END PRIVATE KEY----- -----END PRIVATE KEY-----

View File

@ -1,10 +1,13 @@
- name: Setup docker - name: Setup docker
become: "{{ false if inventory_hostname == 'nas.home.lan' else true }}" become: "{{ false if inventory_hostname == 'nas.home.lan' else true }}"
block: block:
- name: Facts
ansible.builtin.setup:
- name: Print arch - name: Print arch
ansible.builtin.debug: ansible.builtin.debug:
msg: "{{ ansible_architecture }}" msg: "{{ ansible_architecture }}"
- name: Install docker - name: Install docker dependencies
ansible.builtin.apt: ansible.builtin.apt:
name: name:
- ca-certificates - ca-certificates
@ -18,14 +21,14 @@
- name: Get keys for raspotify - name: Get keys for raspotify
ansible.builtin.command: ansible.builtin.command:
install -m 0755 -d /etc/apt/keyrings install -m 0755 -d /etc/apt/keyrings
changed_when: my_output.rc != 0
- name: Add an Apt signing key to a specific keyring file
ansible.builtin.apt_key: # - name: Add an Apt signing key to a specific keyring file
url: https://download.docker.com/linux/debian/gpg # ansible.builtin.apt_key:
keyring: /etc/apt/keyrings/docker.asc # url: https://download.docker.com/linux/debian/gpg
when: # keyring: /etc/apt/keyrings/docker.asc
- ansible_distribution == "Debian" and ansible_distribution_major_version == "12" # when:
# - ansible_distribution == "Debian" and ansible_distribution_major_version == "12"
# - name: Get keys for raspotify # - name: Get keys for raspotify
# ansible.builtin.shell: # ansible.builtin.shell:
@ -33,6 +36,12 @@
# when: # when:
# - ansible_distribution == "Debian" and ansible_distribution_major_version == "12" # - ansible_distribution == "Debian" and ansible_distribution_major_version == "12"
- name: Get keys for raspotify
ansible.builtin.shell:
curl -fsSL https://download.docker.com/linux/raspbian/gpg -o /etc/apt/keyrings/docker.asc
when:
- ansible_distribution == "Debian" and ansible_distribution_major_version == "12"
- name: Add an Apt signing key to a specific keyring file - name: Add an Apt signing key to a specific keyring file
ansible.builtin.apt_key: ansible.builtin.apt_key:
url: https://download.docker.com/linux/ubuntu/gpg url: https://download.docker.com/linux/ubuntu/gpg
@ -57,20 +66,14 @@
# chmod a+r /etc/apt/keyrings/docker.asc # chmod a+r /etc/apt/keyrings/docker.asc
- name: Get keys for raspotify - name: Get keys for raspotify
ansible.builtin.shell: echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc]\ ansible.builtin.shell: echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
https://download.docker.com/linux/debian $(. /etc/os-release && echo "$VERSION_CODENAME") stable" |\
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
when: when:
- ansible_distribution == "Debian" and ansible_distribution_major_version == "12" - ansible_distribution == "Debian" and ansible_distribution_major_version == "12"
changed_when: my_output.rc != 0
- name: Get keys for raspotify - name: Get keys for raspotify
ansible.builtin.shell: echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc]\ ansible.builtin.shell: echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" |\
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
when: when:
- ansible_distribution == "Ubuntu" - ansible_distribution == "Ubuntu"
changed_when: my_output.rc != 0
- name: Install docker - name: Install docker
ansible.builtin.apt: ansible.builtin.apt:
@ -122,29 +125,27 @@
content: | content: |
[Service] [Service]
ExecStart= ExecStart=
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --tlsverify \ ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --tlsverify --tlscacert=/etc/docker/certs/ca.pem --tlscert=/etc/docker/certs/server-cert.pem --tlskey=/etc/docker/certs/server-key.pem -H=0.0.0.0:2376
--tlscacert=/etc/docker/certs/ca.pem --tlscert=/etc/docker/certs/server-cert.pem \
--tlskey=/etc/docker/certs/server-key.pem -H=0.0.0.0:2376
mode: '0600' mode: '0600'
owner: root owner: root
group: root group: root
notify: restart_docker notify: restart_docker
when: mode == "nocert" when: mode == "cert"
- name: Creating a file with content # - name: Creating a file with content
ansible.builtin.copy: # ansible.builtin.copy:
dest: "/etc/systemd/system/docker.service.d/override.conf" # dest: "/etc/systemd/system/docker.service.d/override.conf"
content: | # content: |
[Service] # [Service]
ExecStart= # ExecStart=
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --tlsverify \ # ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --tlsverify \
--tlscacert=/etc/docker/certs/ca.pem --tlscert=/etc/docker/certs/server-cert.pem \ # --tlscacert=/etc/docker/certs/ca.pem --tlscert=/etc/docker/certs/server-cert.pem \
--tlskey=/etc/docker/certs/server-key.pem -H=0.0.0.0:2376 # --tlskey=/etc/docker/certs/server-key.pem -H=0.0.0.0:2376
mode: '0600' # mode: '0600'
owner: root # owner: root
group: root # group: root
notify: restart_docker # notify: restart_docker
when: mode != "nocert" # when: mode != "nocert"
- name: Just force systemd to reread configs - name: Just force systemd to reread configs
ansible.builtin.systemd: ansible.builtin.systemd:

View File

@ -1,5 +0,0 @@
- name: restart_docker
ansible.builtin.service:
name: docker.service
state: restarted
become: true

View File

@ -20,7 +20,21 @@
- name: Print message - name: Print message
ansible.builtin.debug: ansible.builtin.debug:
msg: "{{ inventory_hostname }}" msg: "{{ inventory_hostname }}"
- name: Create dir
ansible.builtin.file:
path: /etc/mqtt_srv/
state: directory
mode: '0755'
owner: root
group: root
- name: Create dir
ansible.builtin.file:
path: /myapps/mqtt_srv/
recurse: true
state: directory
mode: '0755'
owner: root
group: root
- name: Upload service config - name: Upload service config
ansible.builtin.copy: ansible.builtin.copy:
src: "{{ dest_folder }}/mqtt_srv.service" src: "{{ dest_folder }}/mqtt_srv.service"
@ -34,12 +48,22 @@
- name: Upload service script - name: Upload service script
ansible.builtin.copy: ansible.builtin.copy:
src: "{{ dest_folder }}/mqtt_srv.py" src: "{{ dest_folder }}/mqtt_srv.py"
dest: /usr/bin/mqtt_srv.py dest: /myapps/mqtt_srv/mqtt_srv.py
mode: '0755' mode: '0755'
owner: root owner: root
group: root group: root
remote_src: true remote_src: true
when: inventory_hostname != 'nas.home.lan' when: inventory_hostname != 'nas.home.lan'
- name: Upload service req
ansible.builtin.copy:
src: "{{ dest_folder }}/requirements.txt"
dest: /myapps/mqtt_srv/requirements.txt
mode: '0755'
owner: root
group: root
remote_src: true
when: inventory_hostname != 'nas.home.lan'
- name: Upload service script config - name: Upload service script config
ansible.builtin.copy: ansible.builtin.copy:
@ -69,14 +93,14 @@
# when: inventory_hostname in groups['router'] # when: inventory_hostname in groups['router']
# become: false # become: false
- name: Upload service script1 # - name: Upload service script1
ansible.builtin.copy: # ansible.builtin.copy:
src: "{{ dest_folder }}/mqtt_srv.sh" # src: "{{ dest_folder }}/mqtt_srv.sh"
dest: /etc/init.d/ # dest: /etc/init.d/
mode: '755' # mode: '755'
owner: admin # owner: admin
remote_src: true # remote_src: true
when: inventory_hostname == 'nas.home.lan' # when: inventory_hostname == 'nas.home.lan'
- name: Print message - name: Print message
ansible.builtin.debug: ansible.builtin.debug:
@ -85,21 +109,21 @@
- name: Upload service script2 - name: Upload service script2
ansible.builtin.copy: ansible.builtin.copy:
src: "{{ dest_folder }}/mqtt_srv.py" src: "{{ dest_folder }}/mqtt_srv.py"
dest: /usr/bin/mqtt_srv.py dest: /myapps/mqtt_srv/mqtt_srv.py
mode: '755' mode: '755'
owner: admin owner: admin
remote_src: true remote_src: true
when: inventory_hostname == 'nas.home.lan' when: inventory_hostname == 'nas.home.lan'
- name: Install bottle python package - name: Install venv
ansible.builtin.apt:
name:
- python3-virtualenv
- name: Install specified python requirements in indicated (virtualenv)
ansible.builtin.pip: ansible.builtin.pip:
name: "{{ item }}" requirements: /myapps/mqtt_srv/requirements.txt
loop: virtualenv: /myapps/mqtt_srv/venv
- paho-mqtt
- getmac
- ping3
- psutil
- autorandr
when: inventory_hostname != 'nas.home.lan' when: inventory_hostname != 'nas.home.lan'
- name: Just force systemd to reread configs (2.4 and above) - name: Just force systemd to reread configs (2.4 and above)
@ -107,8 +131,6 @@
daemon_reload: true daemon_reload: true
when: inventory_hostname != 'nas.home.lan' when: inventory_hostname != 'nas.home.lan'
- name: Restart mqtt_srv service - name: Restart mqtt_srv service
ansible.builtin.service: ansible.builtin.service:
name: mqtt_srv.service name: mqtt_srv.service
@ -122,4 +144,3 @@
poll: 0 poll: 0
when: inventory_hostname == 'nas.home.lan' when: inventory_hostname == 'nas.home.lan'
changed_when: my_output.rc != 0 changed_when: my_output.rc != 0

View File

@ -4,6 +4,8 @@
- name: Include vault - name: Include vault
ansible.builtin.include_vars: ansible.builtin.include_vars:
file: jaydee.yml file: jaydee.yml
name: mysecrets
when: inventory_hostname != 'nas.home.lan'
- name: Delete content & directory - name: Delete content & directory
ansible.builtin.file: ansible.builtin.file:
state: absent state: absent
@ -12,11 +14,12 @@
tags: tags:
- git_pull - git_pull
ansible.builtin.git: ansible.builtin.git:
repo: "https://{{ git_user | urlencode }}:{{ git_password_mqtt | urlencode }}@gitlab.sectorq.eu/jaydee/omv_backup.git" repo: "https://{{ mysecrets['git_user'] | urlencode }}:{{ mysecrets['git_password_mqtt'] | urlencode }}@gitlab.sectorq.eu/jaydee/omv_backup.git"
dest: "{{ dest_folder }}" dest: "{{ dest_folder }}"
update: true update: true
clone: true clone: true
version: main version: main
when: inventory_hostname != 'nas.home.lan'
- name: Print - name: Print
ansible.builtin.debug: ansible.builtin.debug:
msg: "{{ inventory_hostname }}" msg: "{{ inventory_hostname }}"
@ -27,10 +30,11 @@
mode: '0755' mode: '0755'
owner: root owner: root
group: root group: root
when: inventory_hostname != 'nas.home.lan'
- name: Upload script - name: Upload script
ansible.builtin.copy: ansible.builtin.copy:
src: "{{ dest_folder }}/omv_backup_v4.py" src: "{{ dest_folder }}/omv_backup.py"
dest: /myapps/omv_backup.py dest: /myapps/omv_backup.py
remote_src: true remote_src: true
mode: '0755' mode: '0755'
@ -38,6 +42,7 @@
group: root group: root
when: inventory_hostname != 'nas.home.lan' when: inventory_hostname != 'nas.home.lan'
- name: Upload requirements - name: Upload requirements
ansible.builtin.copy: ansible.builtin.copy:
src: "{{ dest_folder }}/requirements.txt" src: "{{ dest_folder }}/requirements.txt"

View File

@ -20,7 +20,7 @@
{{ logo.stdout }} {{ logo.stdout }}
owner: 0 owner: 0
group: 0 group: 0
mode: "0600" mode: "0777"
- name: Reconfigure sshd - name: Reconfigure sshd
ansible.builtin.lineinfile: ansible.builtin.lineinfile:

View File

@ -6,4 +6,7 @@
name: allow-backup name: allow-backup
state: present state: present
user: jd user: jd
commands: /myapps/omv_backup.py* commands:
- /myapps/omv_backup.py *
- /usr/sbin/poweroff
- /usr/sbin/shutdown *

View File

@ -3,15 +3,12 @@
block: block:
- name: Get keys - name: Get keys
ansible.builtin.command: | ansible.builtin.command: |
curl -s https://packages.wazuh.com/key/GPG-KEY-WAZUH |\ curl -s https://packages.wazuh.com/key/GPG-KEY-WAZUH | gpg --no-default-keyring --keyring gnupg-ring:/usr/share/keyrings/wazuh.gpg --import && chmod 644 /usr/share/keyrings/wazuh.gpg
gpg --no-default-keyring --keyring gnupg-ring:/usr/share/keyrings/wazuh.gpg \
--import && chmod 644 /usr/share/keyrings/wazuh.gpg
changed_when: my_output.rc != 0 changed_when: my_output.rc != 0
- name: Add repo - name: Add repo
ansible.builtin.command: | ansible.builtin.command: |
echo "deb [signed-by=/usr/share/keyrings/wazuh.gpg] https://packages.wazuh.com/4.x/apt/ stable main" |\ echo "deb [signed-by=/usr/share/keyrings/wazuh.gpg] https://packages.wazuh.com/4.x/apt/ stable main" | tee -a /etc/apt/sources.list.d/wazuh.list
tee -a /etc/apt/sources.list.d/wazuh.list
changed_when: my_output.rc != 0 changed_when: my_output.rc != 0
- name: Update cache - name: Update cache

View File

@ -1,175 +1,181 @@
- block: - name: Install zabbix agent
- name: Get config for not nas become: "{{ false if inventory_hostname == 'nas.home.lan' else true }}"
ansible.builtin.set_fact: block:
zabbix_agent_cfg: "/etc/zabbix/zabbix_agent2.conf" - name: Get config for not nas
when: inventory_hostname != 'nas.home.lan' ansible.builtin.set_fact:
zabbix_agent_cfg: "/etc/zabbix/zabbix_agent2.conf"
- name: Get config for nas when: inventory_hostname != 'nas.home.lan'
ansible.builtin.set_fact:
zabbix_agent_cfg: "/opt/ZabbixAgent/etc/zabbix_agentd.conf"
when: inventory_hostname == 'nas.home.lan'
- name: Print all available facts - name: Get config for nas
ansible.builtin.debug: ansible.builtin.set_fact:
msg: "{{ false if inventory_hostname == 'nas.home.lan' else true }}" zabbix_agent_cfg: "/opt/ZabbixAgent/etc/zabbix_agentd.conf"
when: inventory_hostname == 'nas.home.lan'
- name: Print all available facts - name: Print all available facts
ansible.builtin.debug: ansible.builtin.debug:
var: ansible_facts.architecture msg: "{{ false if inventory_hostname == 'nas.home.lan' else true }}"
- name: Print all available facts
ansible.builtin.debug:
var: ansible_distribution
- name: Print all available facts
ansible.builtin.debug:
var: ansible_distribution_major_version
# - name: Upload zabbix package
# ansible.builtin.copy:
# src: packages/zabbix-release_6.4-1+ubuntu22.04_all.deb
# dest: /tmp/
- name: Install a .deb package from the internet111
ansible.builtin.apt:
deb: https://repo.zabbix.com/zabbix/7.2/release/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest_7.2+ubuntu24.04_all.deb
when:
- ansible_facts.architecture != "armv7l" and ( ansible_distribution == "Ubuntu1" or ansible_distribution == "Linux Mint" )
- name: Install a .deb package from the internet2 - name: Print all available facts
ansible.builtin.apt: ansible.builtin.debug:
#deb: https://repo.zabbix.com/zabbix/6.4/raspbian/pool/main/z/zabbix-release/zabbix-release_6.4-1+debian11_all.deb var: ansible_facts.architecture
deb: https://repo.zabbix.com/zabbix/7.0/raspbian/pool/main/z/zabbix-release/zabbix-release_7.0-1+debian11_all.deb - name: Print all available facts
retries: 5 ansible.builtin.debug:
delay: 5 var: ansible_distribution
when: - name: Print all available facts
- ansible_facts.architecture == "armv7l" or ansible_facts.architecture == "aarch64" ansible.builtin.debug:
var: ansible_distribution_major_version
# - name: Upload zabbix package
# ansible.builtin.copy:
# src: packages/zabbix-release_6.4-1+ubuntu22.04_all.deb
# dest: /tmp/
- name: Install a .deb package from the internet111
ansible.builtin.apt:
deb: https://repo.zabbix.com/zabbix/7.2/release/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest_7.2+ubuntu24.04_all.deb
when:
- ansible_facts.architecture != "armv7l" and ( ansible_distribution == "Ubuntu1" or ansible_distribution == "Linux Mint" )
ignore_errors: true - name: Install a .deb package from the internet2
ansible.builtin.apt:
# deb: https://repo.zabbix.com/zabbix/6.4/raspbian/pool/main/z/zabbix-release/zabbix-release_6.4-1+debian11_all.deb
deb: https://repo.zabbix.com/zabbix/7.2/release/raspbian/pool/main/z/zabbix-release/zabbix-release_latest_7.2+debian12_all.deb
retries: 5
delay: 5
when:
- ansible_facts.architecture == "armv7l" or ansible_facts.architecture == "aarch64"
register: command_result
failed_when: "'FAILED' in command_result.stderr"
- name: Install a .deb package from the internet3 - name: Install a .deb package from the internet3
ansible.builtin.apt: ansible.builtin.apt:
deb: https://repo.zabbix.com/zabbix/6.4/debian/pool/main/z/zabbix-release/zabbix-release_6.4-1+debian11_all.deb deb: https://repo.zabbix.com/zabbix/6.4/debian/pool/main/z/zabbix-release/zabbix-release_6.4-1+debian11_all.deb
when:
when: - ansible_facts.architecture != "armv7l" and ansible_distribution == "Debian" and ansible_distribution_major_version == "11"
- ansible_facts.architecture != "armv7l" and ansible_distribution == "Debian" and ansible_distribution_major_version == "11"
- name: Install a .deb package from the internet4
ansible.builtin.apt:
#deb: https://repo.zabbix.com/zabbix/6.4/debian/pool/main/z/zabbix-release/zabbix-release_6.4-1+debian12_all.deb
deb: https://repo.zabbix.com/zabbix/7.0/debian/pool/main/z/zabbix-release/zabbix-release_7.0-1+debian12_all.deb
when:
- ansible_facts.architecture != "armv7l" and ansible_facts.architecture != "aarch64" and ansible_distribution == "Debian" and ansible_distribution_major_version == "12"
ignore_errors: true
# - name: Install a .deb package localy - name: Install a .deb package from the internet4
# ansible.builtin.apt: ansible.builtin.apt:
# deb: /tmp/zabbix-release_6.4-1+ubuntu22.04_all.deb # deb: https://repo.zabbix.com/zabbix/6.4/debian/pool/main/z/zabbix-release/zabbix-release_6.4-1+debian12_all.deb
- name: Install zabbix packages deb: https://repo.zabbix.com/zabbix/7.0/debian/pool/main/z/zabbix-release/zabbix-release_7.0-1+debian12_all.deb
ansible.builtin.apt: when:
name: - ansible_facts.architecture != "armv7l"
- zabbix-agent2 - ansible_facts.architecture != "aarch64"
- zabbix-agent2-plugin-mongodb - ansible_distribution == "Debian"
- zabbix-agent2-plugin-postgresql - ansible_distribution_major_version == "12"
# - zabbix-agent2-plugin-mysql register: command_result
update_cache: yes failed_when: "'FAILED' in command_result.stderr"
ignore_errors: true # - name: Install a .deb package localy
when: inventory_hostname != 'nas.home.lan' # ansible.builtin.apt:
# deb: /tmp/zabbix-release_6.4-1+ubuntu22.04_all.deb
- name: Install zabbix packages
ansible.builtin.apt:
name:
- zabbix-agent2
- zabbix-agent2-plugin-mongodb
- zabbix-agent2-plugin-postgresql
# - zabbix-agent2-plugin-mysql
update_cache: true
when: inventory_hostname != 'nas.home.lan'
- name: Install zabbix packages
ansible.builtin.apt:
name:
- zabbix-agent2
- zabbix-agent2-plugin-mongodb
- zabbix-agent2-plugin-postgresql
# - zabbix-agent2-plugin-mysql
only_upgrade: true
when: inventory_hostname != 'nas.home.lan'
- name: Reconfigure zabbix agent Server - name: Reconfigure zabbix agent Server
ansible.builtin.lineinfile: ansible.builtin.lineinfile:
path: "{{ zabbix_agent_cfg }}" path: "{{ zabbix_agent_cfg }}"
regexp: "^Server=.*" regexp: "^Server=.*"
insertafter: '^# Server=' insertafter: '^# Server='
line: "Server=192.168.77.0/24,192.168.89.0/28" line: "Server=192.168.77.0/24,192.168.89.0/28"
- name: Reconfigure zabbix agent ServerActive - name: Reconfigure zabbix agent ServerActive
ansible.builtin.lineinfile: ansible.builtin.lineinfile:
path: "{{ zabbix_agent_cfg }}" path: "{{ zabbix_agent_cfg }}"
regexp: "^ServerActive=.*" regexp: "^ServerActive=.*"
line: "ServerActive={{ ZABBIX_SERVER }}" line: "ServerActive={{ ZABBIX_SERVER }}"
- name: Reconfigure zabbix agent ListenPort - name: Reconfigure zabbix agent ListenPort
ansible.builtin.lineinfile: ansible.builtin.lineinfile:
path: "{{ zabbix_agent_cfg }}" path: "{{ zabbix_agent_cfg }}"
regexp: "^ListenPort=.*" regexp: "^ListenPort=.*"
line: "ListenPort=10050" line: "ListenPort=10050"
# - name: Reconfigure zabbix agent ListenIP # - name: Reconfigure zabbix agent ListenIP
# ansible.builtin.lineinfile: # ansible.builtin.lineinfile:
# path: /"{{ zabbix_agent_cfg }}" # path: /"{{ zabbix_agent_cfg }}"
# regexp: "^ListenIP=.*" # regexp: "^ListenIP=.*"
# line: "ListenIP=0.0.0.0" # line: "ListenIP=0.0.0.0"
- name: Reconfigure zabbix-agent2 hostname - name: Reconfigure zabbix-agent2 hostname
ansible.builtin.lineinfile: ansible.builtin.lineinfile:
path: "{{ zabbix_agent_cfg }}" path: "{{ zabbix_agent_cfg }}"
regexp: "^Hostname=.*" regexp: "^Hostname=.*"
line: "Hostname={{ inventory_hostname }}" line: "Hostname={{ inventory_hostname }}"
- name: Reconfigure zabbix-agent2 config - name: Reconfigure zabbix-agent2 config
ansible.builtin.lineinfile: ansible.builtin.lineinfile:
path: "{{ zabbix_agent_cfg }}" path: "{{ zabbix_agent_cfg }}"
insertafter: '^# UserParameter=' insertafter: '^# UserParameter='
regexp: "^UserParameter=system.certs.*" regexp: "^UserParameter=system.certs.*"
line: "UserParameter=system.certs,python3 /share/ZFS530_DATA/.qpkg/ZabbixAgent/cert_check2.py" line: "UserParameter=system.certs,python3 /share/ZFS530_DATA/.qpkg/ZabbixAgent/cert_check2.py"
when: inventory_hostname == 'nas.home.lan' when: inventory_hostname == 'nas.home.lan'
- name: Reconfigure zabbix-agent2 config - name: Reconfigure zabbix-agent2 config
ansible.builtin.lineinfile: ansible.builtin.lineinfile:
path: "{{ zabbix_agent_cfg }}" path: "{{ zabbix_agent_cfg }}"
insertafter: '^# UserParameter=' insertafter: '^# UserParameter='
regexp: "^UserParameter=system.certs.*" regexp: "^UserParameter=system.certs.*"
line: "UserParameter=system.certs,python3 /usr/bin/cert_check2.py" line: "UserParameter=system.certs,python3 /usr/bin/cert_check2.py"
when: inventory_hostname == 'm-server.home.lan' when: inventory_hostname == 'm-server.home.lan'
- name: Reconfigure zabbix-agent2 config - name: Reconfigure zabbix-agent2 config
ansible.builtin.lineinfile: ansible.builtin.lineinfile:
path: "{{ zabbix_agent_cfg }}" path: "{{ zabbix_agent_cfg }}"
insertafter: '^# UserParameter=' insertafter: '^# UserParameter='
line: "UserParameter=rpi.hw.temp,/usr/bin/vcgencmd measure_temp" line: "UserParameter=rpi.hw.temp,/usr/bin/vcgencmd measure_temp"
when: inventory_hostname == 'rpi5.home.lan' when: inventory_hostname == 'rpi5.home.lan'
- name: Reconfigure zabbix-agent2 hostname - name: Reconfigure zabbix-agent2 hostname
ansible.builtin.lineinfile: ansible.builtin.lineinfile:
path: "{{ zabbix_agent_cfg }}" path: "{{ zabbix_agent_cfg }}"
regexp: "^HostMetadata=.*" regexp: "^HostMetadata=.*"
insertafter: '^# HostMetadata=' insertafter: '^# HostMetadata='
line: "HostMetadata=linux;jaydee" line: "HostMetadata=linux;jaydee"
- name: Reconfigure zabbix-agent2 hostname
ansible.builtin.lineinfile:
path: "{{ zabbix_agent_cfg }}"
regexp: "^HostMetadata=.*"
insertafter: '^# HostMetadata='
line: "HostMetadata=server;jaydee"
when: inventory_hostname == 'nas.home.lan' or inventory_hostname == 'm-server.home.lan'
- name: Add the user 'to group video
ansible.builtin.user:
name: zabbix
groups: video
append: true
when: inventory_hostname != 'nas.home.lan'
- name: Restart zabbix-agent2 service
- name: Reconfigure zabbix-agent2 hostname ansible.builtin.service:
ansible.builtin.lineinfile: name: zabbix-agent2.service
path: "{{ zabbix_agent_cfg }}" state: restarted
regexp: "^HostMetadata=.*" enabled: true
insertafter: '^# HostMetadata=' when: inventory_hostname != 'nas.home.lan'
line: "HostMetadata=server;jaydee"
when: inventory_hostname == 'nas.home.lan' or inventory_hostname == 'm-server.home.lan'
- name: Restart agent
- name: Add the user 'to group video ansible.builtin.command: /etc/init.d/ZabbixAgent.sh restart
ansible.builtin.user: when: inventory_hostname == 'nas.home.lan'
name: zabbix changed_when: false
groups: video
append: yes
when: inventory_hostname != 'nas.home.lan'
- name: Restart zabbix-agent2 service
ansible.builtin.service:
name: zabbix-agent2.service
state: restarted
enabled: true
when: inventory_hostname != 'nas.home.lan'
- name: Restart agent
ansible.builtin.shell: /etc/init.d/ZabbixAgent.sh restart
when: inventory_hostname == 'nas.home.lan'
become: "{{ false if inventory_hostname == 'nas.home.lan' else true }}"

0
ssh_key.pem Executable file → Normal file
View File