From 51f2c91f2b5e1bf1a76872846e77d0b9101cc192 Mon Sep 17 00:00:00 2001 From: LunarAkai Date: Mon, 17 Mar 2025 22:42:43 +0100 Subject: [PATCH] forgejo --- .gitignore | 7 ++++++ playbooks/update_all_servers.yml | 39 ++++++++++++++++++++++++++++++++ playbooks/update_cache.yml | 8 +++++++ playbooks/update_forgejo.yml | 24 ++++++++++++++++++++ 4 files changed, 78 insertions(+) create mode 100644 .gitignore create mode 100644 playbooks/update_all_servers.yml create mode 100644 playbooks/update_cache.yml create mode 100644 playbooks/update_forgejo.yml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7900d4b --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +*.cfg +*.ini +.vault_pass +/host_vars +pass.yml +vault.yml +/logs \ No newline at end of file diff --git a/playbooks/update_all_servers.yml b/playbooks/update_all_servers.yml new file mode 100644 index 0000000..286e77e --- /dev/null +++ b/playbooks/update_all_servers.yml @@ -0,0 +1,39 @@ +- name: update server + hosts: main,vps,home + become: yes + + tasks: + - name: perfom a dist-upgrade (apt) + ansible.builtin.apt: + upgrade: dist + update_cache: yes + when: ansible_pkg_mgr == 'apt' + + - name: upgrade all packages (dnf) + ansible.builtin.dnf: + name: "*" + state: latest + when: ansible_pkg_mgr == 'dnf' + + - name: check if a reboot is required + ansible.builtin.stat: + path: /var/run/reboot-required + get_checksum: no + register: reboot_required_file + + - name: reboot the server (if required) + ansible.builtin.reboot: + when: reboot_required_file.stat.exists == true + + - name: remove dependencies that are no longer required. (apt) + ansible.builtin.apt: + autoremove: yes + when: ansible_pkg_mgr == 'apt' + + - name: remove dependencies that are no longer required (dnf) + ansible.builtin.dnf: + autoremove: yes + when: ansible_pkg_mgr == 'dnf' + + + diff --git a/playbooks/update_cache.yml b/playbooks/update_cache.yml new file mode 100644 index 0000000..33bcb53 --- /dev/null +++ b/playbooks/update_cache.yml @@ -0,0 +1,8 @@ +- name: update apt cache + hosts: main + become: yes + + tasks: + - name: run apt update + apt: + update_cache: yes diff --git a/playbooks/update_forgejo.yml b/playbooks/update_forgejo.yml new file mode 100644 index 0000000..5d3dd9a --- /dev/null +++ b/playbooks/update_forgejo.yml @@ -0,0 +1,24 @@ +- name: update forgejo server + hosts: main + become: yes + + tasks: + - name: Get latest forgejo version + ansible.builtin.shell: | + curl -s 'https://codeberg.org/api/v1/repos/forgejo/forgejo/releases/latest' -H 'accept: application/json' | jq -r '.tag_name[1:]' + register: forgejo_version + + - name: print latest version + ansible.builtin.debug: + msg: "{{ forgejo_version.stdout }}" + + - name: Download newest version + ansible.builtin.get_url: + url: https://codeberg.org/forgejo/forgejo/releases/download/v{{ forgejo_version.stdout }}/forgejo-{{ forgejo_version.stdout }}-linux-amd64 + dest: /usr/local/bin/forgejo + mode: '0755' + + - name: Restart Forgejo.service + ansible.builtin.systemd_service: + name: forgejo.service + state: restarted \ No newline at end of file