-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpolicy.dhall
More file actions
68 lines (54 loc) · 1.69 KB
/
Copy pathpolicy.dhall
File metadata and controls
68 lines (54 loc) · 1.69 KB
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
-- Tailscale ACL Policy for tailnet taila4c78d.ts.net (sulliwood.org)
--
-- This file merges all fragments and adds top-level config (autoApprovers, nodeAttrs).
-- Grants are NOT included here; they live in grants.json and are merged by build.py.
--
-- To build: just build
-- To verify: just validate
let T = ./types/ACL.dhall
let C = ./constants.dhall
let core = ./fragments/core.dhall
let dollhouse = ./fragments/dollhouse.dhall
let kubernetes = ./fragments/kubernetes.dhall
let devEnvs = ./fragments/dev-envs.dhall
let lab = ./fragments/lab.dhall
let network = ./fragments/network.dhall
let remotejuggler = ./fragments/remotejuggler.dhall
let aperture = ./fragments/aperture.dhall
let ssh = ./fragments/ssh.dhall
let allACLs =
core.acls
# devEnvs.aclsEarly
# dollhouse.acls
# kubernetes.aclsEarly
# network.aclsEarly
# kubernetes.aclsLate
# devEnvs.aclsLate
# lab.acls
# network.aclsLate
# remotejuggler.aclsEarly
# aperture.acls
# remotejuggler.aclsLate
let allNodeAttrs
: List T.NodeAttr
= [ { target = [ C.tag.dollhouse ], attr = [ "funnel" ] }
, { target = [ C.tag.anon_gateway ], attr = [ "mullvad" ] }
]
let autoApprovers
: T.AutoApprovers
= { routes =
[ { mapKey = "10.0.0.0/8", mapValue = [ C.tag.dollhouse, C.tag.k8s ] }
, { mapKey = "192.168.0.0/16"
, mapValue = [ C.tag.subnet_router, C.tag.dollhouse ]
}
]
, exitNode = [ C.tag.exit_node ]
}
in { groups = core.groups
, tagOwners = core.tagOwners
, acls = allACLs
, ssh = ssh.ssh
, nodeAttrs = allNodeAttrs
, autoApprovers
, hosts = aperture.hosts # kubernetes.hosts
}