---
- name: Install GPG and apt-transport-https
  apt:
    update_cache: true
    install_recommends: false
    name:
      - apt-transport-https
      - gnupg
  register: apt_result
  retries: 3
  until: apt_result is succeeded

- name: Import Gitlab public key
  apt_key:
    url: https://packages.gitlab.com/gitlab/gitlab-ee/gpgkey

- name: Configure Gitlab repository
  template:
    src: apt/sources.list.d/gitlab_gitlab-ce.list.j2
    dest: /etc/apt/sources.list.d/gitlab_gitlab-ce.list
    mode: 0644
    owner: root
    group: root

- name: Install Gitlab
  apt:
    update_cache: true
    install_recommends: false
    name:
      - gitlab-ce
  register: apt_result
  retries: 3
  until: apt_result is succeeded

- name: Add Gitlab configuration
  template:
    src: gitlab.rb.j2
    dest: /etc/gitlab/gitlab.rb
    mode: 0600
    owner: root
    group: root
  notify: Reconfigure Gitlab