--- # Adapted from https://forgejo.org/docs/latest/admin/installation-binary/ - name: Install Forgejo hosts: webserver become: yes become_user: root tasks: - name: Download Forgejo binary to /usr/local/bin (and verify its checksum) get_url: url: https://codeberg.org/forgejo/forgejo/releases/download/v1.21.3-0/forgejo-1.21.3-0-linux-amd64 dest: /usr/local/bin/forgejo checksum: "sha256:8c8f34e889f968b4f9357701ceee7daab5b47ea605793325da8e3e740457b45a" mode: "755" - name: Update apt cache apt: update_cache: true - name: Install git and git-lfs apt: name: - git - git-lfs - name: Create git user user: name: git password: "!" # disables password login home: /home/git shell: /bin/bash comment: Git Version Control - name: Create Forgejo's data directory file: path: /var/lib/forgejo state: directory mode: "750" owner: git group: git - name: Create Forgejo's config directory file: path: /etc/forgejo state: directory mode: "750" owner: root group: git - name: Copy app.ini to Forgejo's config directory copy: src: files/app.ini dest: /etc/forgejo/app.ini mode: "640" notify: - Restart Forgejo - name: Install systemd service for Forgejo copy: src: files/forgejo.service dest: /etc/systemd/system/forgejo.service notify: - Restart Forgejo - name: Start Forgejo service systemd_service: name: forgejo state: started handlers: - name: Restart Forgejo systemd_service: name: forgejo state: restarted daemon_reload: true # For the case where the service file changes!