- name: Hello world hosts: all become: false gather_facts: false vars: __gitea_version : 1.20.5 __gitea_arch : amd64 __gitea_binary : "https://dl.gitea.io/gitea/{{ __gitea_version }}/\ gitea-{{ __gitea_version }}-linux-{{ __gitea_arch }}" __gitea_user: name : gitea gecos : Git with a cup of tea shell : /bin/bash home : /home/gitea tasks: - name: Say Hello world ansible.builtin.debug: msg: Hello world! - name: Install Git ansible.builtin.package: name : git state : present - name: Check if Gitea is present and is correct version ansible.builtin.command : /usr/local/bin/gitea --version ignore_errors : true changed_when : false register : r_check_gitea - name: Fetch Gitea binary and notify user when : - (r_check_gitea.rc == 1 or r_check_gitea.stdout is not search(__gitea_version)) block: - name: Gitea binary not found or version mismatch ansible.builtin.debug : msg : "Gitea binary not found or version mismatch." - name: "Fetch Gitea {{ __gitea_version }}" ansible.builtin.get_url : url : "{{ __gitea_binary }}" dest : /usr/local/bin/gitea mode : "0755" - name: Create Gitea user ansible.builtin.user: name : "{{ __gitea_user.name }}" comment : "{{ __gitea_user.gecos }}" shell : "{{ __gitea_user.shell }}" home : "{{ __gitea_user.home }}" create_home : true state : present - name: Create required directories ansible.builtin.file: path : "{{ item }}" state : directory recurse : true owner : "{{ __gitea_user.name }}" group : "{{ __gitea_user.name }}" mode : "0750" loop: - /var/lib/gitea/custom - /var/lib/gitea/data - /var/lib/gitea/log - /etc/gitea