# vim: ft=sls
---
{% from "forgejo/map.jinja" import forgejo with context %}

git:
  group.present:
    - system: true
  user.present:
    - system: true
    - home: {{ forgejo.workingdir }}
    - shell: /usr/sbin/nologin
    - groups:
      - {{ forgejo.group }}
    - require:
      - group: {{ forgejo.group }}
  pkg.installed: []

forgejo-bin:
  file.managed:
    - name: {{ forgejo.workingdir }}/forgejo
    - source: "{{ forgejo.release_url }}/v{{ forgejo.version }}/forgejo-{{ forgejo.version }}-{{ forgejo.os }}-{{ forgejo.arch }}"
    - source_hash: "{{ forgejo.release_url }}/v{{ forgejo.version }}/forgejo-{{ forgejo.version }}-{{ forgejo.os }}-{{ forgejo.arch }}.sha256"
    - user: {{ forgejo.user }}
    - group: {{ forgejo.group }}
    - mode: 750
    - require:
      - git

forgejo-log-dir:
  file.directory:
    - name: {{ forgejo.config.log.root_path }}
    - user: {{ forgejo.user }}
    - group: {{ forgejo.group }}
    - require:
      - file: forgejo-bin