mirror of
https://gitlab.com/fabinfra/fabaccess/bffh.git
synced 2024-11-23 23:27:57 +01:00
split cfg
This commit is contained in:
parent
0abf8278d3
commit
7d19bc6a03
11
examples/actors.dhall
Normal file
11
examples/actors.dhall
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
{ Shelly_1234 = { module = "Shelly", params = {=} }
|
||||||
|
, Bash =
|
||||||
|
{ module = "Process"
|
||||||
|
, params = { cmd = "./examples/actor.sh", args = "your ad could be here" }
|
||||||
|
}
|
||||||
|
, Bash2 =
|
||||||
|
{ module = "Process"
|
||||||
|
, params = { cmd = "./examples/actor.sh", args = "this is a different one" }
|
||||||
|
}
|
||||||
|
, FailBash = { module = "Process", params.cmd = "./examples/fail-actor.sh" }
|
||||||
|
}
|
@ -1,76 +1,20 @@
|
|||||||
-- { actor_connections = [] : List { _1 : Text, _2 : Text }
|
|
||||||
{ actor_connections =
|
{ actor_connections =
|
||||||
-- Link up machines to actors
|
-- Link up machines to actors
|
||||||
[ { _1 = "Testmachine", _2 = "Shelly_1234" }
|
[ { _1 = "Testmachine", _2 = "Shelly_1234" }
|
||||||
, { _1 = "Another", _2 = "Bash" }
|
, { _1 = "Another", _2 = "Bash" }
|
||||||
-- One machine can have as many actors as it wants
|
|
||||||
, { _1 = "Yetmore", _2 = "Bash2" }
|
, { _1 = "Yetmore", _2 = "Bash2" }
|
||||||
, { _1 = "Yetmore", _2 = "FailBash" }
|
, { _1 = "Yetmore", _2 = "FailBash" }
|
||||||
]
|
]
|
||||||
, actors =
|
, actors = ./actors.dhall
|
||||||
{ Shelly_1234 = { module = "Shelly", params = {=} }
|
|
||||||
, Bash = { module = "Process", params =
|
|
||||||
{ cmd = "./examples/actor.sh"
|
|
||||||
, args = "your ad could be here"
|
|
||||||
}}
|
|
||||||
, Bash2 = { module = "Process", params =
|
|
||||||
{ cmd = "./examples/actor.sh"
|
|
||||||
, args = "this is a different one"
|
|
||||||
}}
|
|
||||||
, FailBash = { module = "Process", params =
|
|
||||||
{ cmd = "./examples/fail-actor.sh"
|
|
||||||
}}
|
|
||||||
}
|
|
||||||
, init_connections = [] : List { _1 : Text, _2 : Text }
|
, init_connections = [] : List { _1 : Text, _2 : Text }
|
||||||
--, init_connections = [{ _1 = "Initiator", _2 = "Testmachine" }]
|
, initiators = ./initiators.dhall
|
||||||
, initiators = {=}
|
|
||||||
--{ Initiator = { module = "Dummy", params = {=} } }
|
|
||||||
, listens =
|
, listens =
|
||||||
[ { address = "127.0.0.1", port = Some 59661 }
|
[ { address = "127.0.0.1", port = Some 59661 }
|
||||||
, { address = "::1", port = Some 59661 }
|
, { address = "::1", port = Some 59661 }
|
||||||
, { address = "192.168.0.114", port = Some 59661 }
|
, { address = "192.168.0.114", port = Some 59661 }
|
||||||
]
|
]
|
||||||
, machines =
|
, machines = ./machines.dhall
|
||||||
{ Testmachine =
|
|
||||||
{ description = Some "A test machine"
|
|
||||||
, disclose = "lab.test.read"
|
|
||||||
, manage = "lab.test.admin"
|
|
||||||
, name = "Testmachine"
|
|
||||||
, read = "lab.test.read"
|
|
||||||
, write = "lab.test.write"
|
|
||||||
},
|
|
||||||
Another =
|
|
||||||
{ description = Some "Another test machine"
|
|
||||||
, disclose = "lab.test.read"
|
|
||||||
, manage = "lab.test.admin"
|
|
||||||
, name = "Another"
|
|
||||||
, read = "lab.test.read"
|
|
||||||
, write = "lab.test.write"
|
|
||||||
},
|
|
||||||
Yetmore =
|
|
||||||
{ description = Some "Yet more test machines"
|
|
||||||
, disclose = "lab.test.read"
|
|
||||||
, manage = "lab.test.admin"
|
|
||||||
, name = "Yetmore"
|
|
||||||
, read = "lab.test.read"
|
|
||||||
, write = "lab.test.write"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
, mqtt_url = "tcp://localhost:1883"
|
|
||||||
, db_path = "/tmp/bffh"
|
, db_path = "/tmp/bffh"
|
||||||
, roles =
|
, roles = ./roles.dhall
|
||||||
{ testrole =
|
, mqtt_url = "tcp://localhost:1883"
|
||||||
{ permissions = [ "lab.test.*" ] }
|
|
||||||
, somerole =
|
|
||||||
{ parents = ["testparent"]
|
|
||||||
, permissions = [ "lab.some.admin" ]
|
|
||||||
}
|
|
||||||
, testparent =
|
|
||||||
{ permissions =
|
|
||||||
[ "lab.some.write"
|
|
||||||
, "lab.some.read"
|
|
||||||
, "lab.some.disclose"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
1
examples/initiators.dhall
Normal file
1
examples/initiators.dhall
Normal file
@ -0,0 +1 @@
|
|||||||
|
{=}
|
28
examples/machines.dhall
Normal file
28
examples/machines.dhall
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
{ Testmachine =
|
||||||
|
{ description = Some "A test machine"
|
||||||
|
, name = "Textmachine"
|
||||||
|
|
||||||
|
, manage = "lab.test.admin"
|
||||||
|
, read = "lab.test.read"
|
||||||
|
, write = "lab.test.write"
|
||||||
|
, disclose = "lab.test.read"
|
||||||
|
}
|
||||||
|
, Another =
|
||||||
|
{ description = Some "Another test machine"
|
||||||
|
, name = "Another"
|
||||||
|
|
||||||
|
, disclose = "lab.test.read"
|
||||||
|
, manage = "lab.test.admin"
|
||||||
|
, read = "lab.test.read"
|
||||||
|
, write = "lab.test.write"
|
||||||
|
},
|
||||||
|
Yetmore =
|
||||||
|
{ description = Some "Yet more test machines"
|
||||||
|
, name = "Yetmore"
|
||||||
|
|
||||||
|
, disclose = "lab.test.read"
|
||||||
|
, manage = "lab.test.admin"
|
||||||
|
, read = "lab.test.read"
|
||||||
|
, write = "lab.test.write"
|
||||||
|
}
|
||||||
|
}
|
14
examples/roles.dhall
Normal file
14
examples/roles.dhall
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
{ testrole =
|
||||||
|
{ permissions = [ "lab.test.*" ] }
|
||||||
|
, somerole =
|
||||||
|
{ parents = ["testparent"]
|
||||||
|
, permissions = [ "lab.some.admin" ]
|
||||||
|
}
|
||||||
|
, testparent =
|
||||||
|
{ permissions =
|
||||||
|
[ "lab.some.write"
|
||||||
|
, "lab.some.read"
|
||||||
|
, "lab.some.disclose"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
15
examples/types/Machine.dhall
Normal file
15
examples/types/Machine.dhall
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
let Map = https://prelude.dhall-lang.org/v20.2.0/Map/Type
|
||||||
|
sha256:210c7a9eba71efbb0f7a66b3dcf8b9d3976ffc2bc0e907aadfb6aa29c333e8ed
|
||||||
|
|
||||||
|
let Machine =
|
||||||
|
{ Type =
|
||||||
|
{ description : Optional Text
|
||||||
|
, manage : Text
|
||||||
|
, write : Text
|
||||||
|
, read : Text
|
||||||
|
, disclose : Text
|
||||||
|
}
|
||||||
|
, default = { description = None }
|
||||||
|
}
|
||||||
|
|
||||||
|
in Machine
|
Loading…
Reference in New Issue
Block a user