diff options
author | Vincent Ambo <tazjin@google.com> | 2020-02-11T21·00+0000 |
---|---|---|
committer | Vincent Ambo <tazjin@google.com> | 2020-02-11T21·00+0000 |
commit | b4c0292753bf06663ea5a10b3575817b0077c02e (patch) | |
tree | f255792d36683868b5c16f91ec40768ce3c4de19 /nix | |
parent | 675fed2dcada78613d5cfad036f1bebd65dd542c (diff) |
fix(nix/tailscale): Fix incorrect Tailscale ACL config type r/543
Diffstat (limited to 'nix')
-rw-r--r-- | nix/tailscale/default.nix | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/nix/tailscale/default.nix b/nix/tailscale/default.nix index 4f533f6d61d2..d836850aa112 100644 --- a/nix/tailscale/default.nix +++ b/nix/tailscale/default.nix @@ -9,11 +9,22 @@ with pkgs.nix.yants; let inherit (builtins) toFile toJSON; - entry = struct "aclEntry" { + acl = struct "acl" { Action = enum [ "accept" "reject" ]; Users = list string; Ports = list string; }; - acl = list entry; -in entries: toFile "tailscale-acl.json" (toJSON (acl entries)) + acls = list entry; + + aclConfig = struct "aclConfig" { + # Static group mappings from group names to lists of users + Groups = option (attrs (list string)); + + # Hostname aliases to use in place of IPs + Hosts = option (attrs string); + + # Actual ACL entries + ACLs = list acl; + }; +in config: toFile "tailscale-acl.json" (toJSON (aclConfig config)) |