summaryrefslogtreecommitdiffstats
path: root/modules/headscale/manifests/init.pp
blob: 7fd0b39c0e37b7229fd334bb5e30528663e1190a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
class headscale($data_dir) {
  package { "headscale":
    ensure => installed;
  }

  file {
    [$data_dir, "/var/run/headscale"]:
      owner => 'headscale',
      group => 'headscale',
      ensure => directory,
      require => Package['headscale'];
    "/etc/headscale/config.yaml":
      content => template("headscale/config.yaml"),
      require => Package['headscale'],
      notify => Service["headscale"];
  }

  systemd::override { "headscale":
      content => template("headscale/override.conf");
  }

  service { "headscale":
    ensure => running,
    enable => true,
    require => [
      File[$data_dir],
      File["/var/run/headscale"],
      File['/etc/headscale/config.yaml'],
      Systemd::Override["headscale"],
      Package['headscale'],
    ];
  }
}