Files
infrastructure/ansible/roles/gitea/tasks/main.yml

74 lines
1.8 KiB
YAML

###### SSH Passthrough ######
- name: Install gitea shell
ansible.builtin.copy:
src: gitea-shell
dest: /usr/local/bin/gitea-shell
mode: a+x
become: true
- name: Append block to sshd config
ansible.builtin.blockinfile:
path: /etc/ssh/sshd_config
block: |
Match User git
AuthorizedKeysCommandUser git
AuthorizedKeysCommand /usr/bin/docker exec -i gitea /usr/local/bin/gitea keys -c /etc/gitea/app.ini -e git -u %u -t %t -k %k
validate: /usr/sbin/sshd -T -f %s
become: true
notify: restart sshd
#############################
- name: Create git user
user:
name: git
groups: docker
append: true
shell: /usr/local/bin/gitea-shell
system: true
register: service_user
become: true
- name: Create install directory
file:
path: "{{ install_directory }}/{{ role_name }}"
state: directory
owner: "{{ docker_user }}"
mode: "{{ docker_compose_directory_mask }}"
become: true
- name: Create data and config directories
file:
path: "{{ data_dir }}/gitea/{{ item }}"
state: directory
owner: "{{ service_user.uid }}"
mode: "{{ docker_compose_directory_mask }}"
loop:
- data
- config
become: true
- name: Install configuration file
template:
src: app.ini
dest: "{{ data_dir }}/gitea/config/app.ini"
owner: git
group: "{{ primary_gid }}"
mode: "0660"
notify: restart gitea
become: true
- name: Copy docker-compose file to destination
template:
src: docker-compose.yml
dest: "{{ install_directory }}/{{ role_name }}/docker-compose.yml"
owner: "{{ docker_user }}"
mode: "{{ docker_compose_file_mask }}"
validate: docker-compose -f %s config
become: true
- name: Start docker container
community.docker.docker_compose_v2:
project_src: "{{ install_directory }}/{{ role_name }}"
pull: true
remove_orphans: yes