From 3952ee067ff10b625837064e2f87edc92d7a8665 Mon Sep 17 00:00:00 2001 From: Ullli Date: Mon, 1 Jun 2026 10:13:23 +0200 Subject: [PATCH 1/1] =?utf8?q?Diverse=20Tasks=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- handlers/main.yml | 8 +++++-- tasks/ansible-control-node.yml | 8 +++++++ tasks/apt-cacher-ng.yml | 6 ++++++ tasks/freescout.yml | 24 +++++++++++++++++++++ tasks/gibbon.yml | 16 ++++++++++++++ tasks/glpi.yml | 28 +++++++++++++++++++++++++ tasks/keycloak.yml | 5 +++++ tasks/kivitendo.yml | 9 ++++++++ tasks/lighttpd-php.yml | 14 +++++++++++++ tasks/main.yml | 38 +++++++++++++++++++++++++++++++++- tasks/pivpn.yml | 9 ++++++++ tasks/piwigo.yml | 22 ++++++++++++++++++++ tasks/redmine.yml | 9 ++++++++ tasks/zulip.yml | 5 +++++ 14 files changed, 198 insertions(+), 3 deletions(-) create mode 100644 tasks/ansible-control-node.yml create mode 100644 tasks/apt-cacher-ng.yml create mode 100644 tasks/freescout.yml create mode 100644 tasks/gibbon.yml create mode 100644 tasks/glpi.yml create mode 100644 tasks/keycloak.yml create mode 100644 tasks/kivitendo.yml create mode 100644 tasks/lighttpd-php.yml create mode 100644 tasks/pivpn.yml create mode 100644 tasks/piwigo.yml create mode 100644 tasks/redmine.yml create mode 100644 tasks/zulip.yml diff --git a/handlers/main.yml b/handlers/main.yml index a376ec4..c5bcce3 100644 --- a/handlers/main.yml +++ b/handlers/main.yml @@ -6,7 +6,11 @@ ansible.builtin.service: name: nfs-kernel-server.service state: restarted -- name: start fusioninventory-client +- name: Restart lighttpd service ansible.builtin.service: - name: fusioninventory-agent.service + name: lighttpd.service state: restarted +#- name: start fusioninventory-client +# ansible.builtin.service: +# name: fusioninventory-agent.service +# state: restarted diff --git a/tasks/ansible-control-node.yml b/tasks/ansible-control-node.yml new file mode 100644 index 0000000..8f45a39 --- /dev/null +++ b/tasks/ansible-control-node.yml @@ -0,0 +1,8 @@ +--- +- name: Install server specific packages + ansible.builtin.apt: + pkg: + - ansible +# - di-netboot-assistant +# - tftp-hpa +# das müssen wir für jeden bereits existierenden noch genau ausprobieren diff --git a/tasks/apt-cacher-ng.yml b/tasks/apt-cacher-ng.yml new file mode 100644 index 0000000..067771f --- /dev/null +++ b/tasks/apt-cacher-ng.yml @@ -0,0 +1,6 @@ +--- +- name: Install server specific packages + ansible.builtin.apt: + pkg: + - apt-cacher-ng + diff --git a/tasks/freescout.yml b/tasks/freescout.yml new file mode 100644 index 0000000..5104987 --- /dev/null +++ b/tasks/freescout.yml @@ -0,0 +1,24 @@ +--- +- name: Install packages fpr freescout + ansible.builtin.apt: + pkg: + - nginx + - mariadb-server + - mariadb-client + - php + - php-mysql + - php-fpm + - php-mbstring + - php-xml + - php-imap + - php-zip + - php-gd + - php-curl + - php-intl + - php-json +- name: For FPM we need to fix_pathinfo + ansible.builtin.lineinfile: + path: /etc/php/8.2/fpm/php.ini + insertafter: ';cgi.fix_pathinfo=1' + line: 'cgi.fix_pathinfo=0' + diff --git a/tasks/gibbon.yml b/tasks/gibbon.yml new file mode 100644 index 0000000..f69981e --- /dev/null +++ b/tasks/gibbon.yml @@ -0,0 +1,16 @@ +--- +- name: install server specific packages + apt: + pkg: + - apache2 + - mariadb-server + - php + - php-gd + - php-mysql + - php-zip + - php-curl + - php-php-gettext + - php-pdo + - unzip + - composer + diff --git a/tasks/glpi.yml b/tasks/glpi.yml new file mode 100644 index 0000000..2975e71 --- /dev/null +++ b/tasks/glpi.yml @@ -0,0 +1,28 @@ +--- +- name: Install server specific packages + ansible.builtin.apt: + pkg: + - apache2 + - mariadb-server + - mariadb-client + - libapache2-mod-php + - php-common + - php-curl + - php-fileinfo + - php-gd + - php-json + - php-mbstring + - php-mysqli +# - php-session +# - php-zlib + - php-zip + - php-simplexml + - php-xml + - php-intl + - php-cli + - php-ldap +# - php-openssl + - openssl + - php-xmlrpc + - php-apcu + diff --git a/tasks/keycloak.yml b/tasks/keycloak.yml new file mode 100644 index 0000000..3495859 --- /dev/null +++ b/tasks/keycloak.yml @@ -0,0 +1,5 @@ +--- +- name: Install server specific packages + ansible.builtin.apt: + pkg: + - default-jdk diff --git a/tasks/kivitendo.yml b/tasks/kivitendo.yml new file mode 100644 index 0000000..c8c0bf1 --- /dev/null +++ b/tasks/kivitendo.yml @@ -0,0 +1,9 @@ +--- +- name: Install server specific packages + apt: + pkg: + - apache2 + - git +# erweitern mit +# https://github.com/kivitendo/kivitendo-ansible/blob/master/main.yml +# diff --git a/tasks/lighttpd-php.yml b/tasks/lighttpd-php.yml new file mode 100644 index 0000000..a3c7021 --- /dev/null +++ b/tasks/lighttpd-php.yml @@ -0,0 +1,14 @@ +--- +- name: install server specific packages + apt: + pkg: + - lighttpd + - php-cgi + - rsync + - php-curl + - php-gd + - php-mbstring + - php-zip +- name: lighttpd - reload service + command: service lighttpd force-reload +# eventuell ersetzen durch handler diff --git a/tasks/main.yml b/tasks/main.yml index 0cc984b..cb87a81 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -4,6 +4,15 @@ - name: DNS-Server mit pi-hole ansible.builtin.include_tasks: pihole.yml when: ("pihole" in group_names) +- name: Ansible-Control-Node + ansible.builtin.include_tasks: ansible-control-node.yml + when: ("ansible-control-node" in group_names) +- name: VPN-Server mit Wireguard via PiVPN + ansible.builtin.include_tasks: pivpn.yml + when: ("pivpn" in group_names) +- name: Apt-Proxy mit apt-cacher-ng + ansible.builtin.include_tasks: apt-cacher-ng.yml + when: ("apt-cacher-ng" in group_names) - name: OpenLDAP-Server ansible.builtin.include_tasks: openldap.yml when: ("openldap" in group_names) @@ -13,12 +22,39 @@ - name: Forgejo Git- und Projekte-Server ansible.builtin.include_tasks: forgejo.yml when: ("forgejo" in group_names) -- name: einfache Webserver mit lighttpd +- name: Einfache Webserver mit lighttpd ansible.builtin.include_tasks: lighttpd.yml when: ("lighttpd" in group_names) +- name: Einfache Webserver mit lighttpd und PHP + ansible.builtin.include_tasks: lighttpd-php.yml + when: ("lighttpd-php" in group_names) - name: Dokuwiki ansible.builtin.include_tasks: dokuwiki.yml when: ("dokuwiki" in group_names) +- name: Geteilte Postfächer mit Freescout + ansible.builtin.include_tasks: freescout.yml + when: ("freescout" in group_names) +- name: Schulmanagement mit Gibbon + ansible.builtin.include_tasks: gibbon.yml + when: ("gibbon" in group_names) +- name: ID-Management mit Keycloak + ansible.builtin.include_tasks: keycloak.yml + when: ("keycloak" in group_names) +- name: Projektmanagement mit Redmine + ansible.builtin.include_tasks: redmine.yml + when: ("redmine" in group_names) +- name: Team-Chat mit Zulip + ansible.builtin.include_tasks: zulip.yml + when: ("zulip" in group_names) +- name: Kivitendo - Finanzbuchaltung und mehr + ansible.builtin.include_tasks: kivitendo.yml + when: ("kivitendo" in group_names) +- name: GLPI - Inventory (nur Clients), CMDB und (Helpdesk) + ansible.builtin.include_tasks: glpi.yml + when: ("glpi" in group_names) +- name: Piwigo - Fotogalerie im Schulnetz + ansible.builtin.include_tasks: piwigo.yml + when: ("piwigo" in group_names) # inventroy lieber mit ansible-cmd # Inventory immer als letztes #- name: Include inventory (last task) diff --git a/tasks/pivpn.yml b/tasks/pivpn.yml new file mode 100644 index 0000000..72aba50 --- /dev/null +++ b/tasks/pivpn.yml @@ -0,0 +1,9 @@ +--- +- name: Install server specific packages + ansible.builtin.apt: + pkg: + - curl +# erwitern mit +# https://docs.pivpn.io/install/#non-interactive-installation +# und check if we're installing :-) +# diff --git a/tasks/piwigo.yml b/tasks/piwigo.yml new file mode 100644 index 0000000..4b52b76 --- /dev/null +++ b/tasks/piwigo.yml @@ -0,0 +1,22 @@ +--- +- name: Install server specific packages + ansible.builtin.apt: + pkg: + - apache2 + - mariadb-server + - mariadb-client + - libapache2-mod-php + - imagemagick + - php-common + - php-intl + - php-mysql + - php-gd + - php-xml + - php-ldap + - php-zip + - php-mbstring + - php-xmlrpc + - php-cli + - php-curl + - unzip + diff --git a/tasks/redmine.yml b/tasks/redmine.yml new file mode 100644 index 0000000..5ba0090 --- /dev/null +++ b/tasks/redmine.yml @@ -0,0 +1,9 @@ +--- +- name: Install server specific packages + ansible.builtin.apt: + pkg: + - postgresql + - redmine-pgsql + - apache2 + - libapache2-mod-passenger + diff --git a/tasks/zulip.yml b/tasks/zulip.yml new file mode 100644 index 0000000..07b471a --- /dev/null +++ b/tasks/zulip.yml @@ -0,0 +1,5 @@ +--- +- name: install server specific packages + apt: + pkg: + - curl -- 2.39.5