97 lines
2.3 KiB
Plaintext
97 lines
2.3 KiB
Plaintext
package prod
|
|
|
|
import "du5t1n.me/cfg/app/nut/schema"
|
|
|
|
ups_server: "nut.pyrocufflink.blue"
|
|
|
|
nut: schema.#Nut & {
|
|
listen: {
|
|
address: "::"
|
|
port: 3493
|
|
}
|
|
|
|
ups: {
|
|
apc1500: {
|
|
driver: "usbhid-ups"
|
|
port: "auto"
|
|
desc: "Back-UPS XS 1500G"
|
|
vendorid: "051d"
|
|
product: ".*1500M.*"
|
|
pollonly: "enabled"
|
|
pollinterval: 1
|
|
}
|
|
apc1300: {
|
|
driver: "usbhid-ups"
|
|
port: "auto"
|
|
desc: "Back-UPS XS 1300G"
|
|
vendorid: "051d"
|
|
product: ".*1300G.*"
|
|
pollonly: "enabled"
|
|
pollinterval: 1
|
|
}
|
|
}
|
|
|
|
users: {
|
|
homeassistant: {
|
|
password: """
|
|
-----BEGIN AGE ENCRYPTED FILE-----
|
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAxZUZleGt3emxXdDFtcEtN
|
|
Wll3K0hrS2c2M1oyMWh2VlBnMER0bkZOb1VVCnU3aTI2eVJoV1dKNWxEd0VnbVNa
|
|
NlMxVWRuZWpNbTJRVUhWR2w3bUlwaEUKLS0tIGZLcGNQRy9LNUF1Y0JzZEZGdXBn
|
|
bUJjYlBSSEYwRUpwemlMZ0xCZnpTS2cKUFke27YDeTME9OBgEcQdbJ3jsDZS43km
|
|
tK61kLMcexq3lXQb30gx4fzMuYa0MXFygawscTnxTrOrXUd36Iga4A==
|
|
-----END AGE ENCRYPTED FILE-----
|
|
"""
|
|
}
|
|
nvr1: {
|
|
upsmon: "secondary"
|
|
password: """
|
|
-----BEGIN AGE ENCRYPTED FILE-----
|
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAwRlhYRlVlR28zMk4vL0J5
|
|
T3NnMi9mQWFCb1FkeWxQR2h2NGFqWHBtYlRZCmYrZG1CZ2lrU3pmMW5odUFPSGll
|
|
TXFHZzZNTER4R1BrYUI1T0Y3YVo4SEEKLS0tIDVEQTg5czRuMUJXcUJNbWpYRnox
|
|
emdFS01RYkxLekQ1TkJ0MGRuQ2Vsbk0KfRc5sHRfvc9F4Fh6wXI/cqeUc7/NRbP0
|
|
bquJacJZGL1JkN06lK5d12d39Ud6j6/uZ7StCAyfG53Ol6HLThQtZw==
|
|
-----END AGE ENCRYPTED FILE-----
|
|
"""
|
|
}
|
|
upsmon: {
|
|
upsmon: "primary"
|
|
password: """
|
|
-----BEGIN AGE ENCRYPTED FILE-----
|
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBzdnZMZ1F1d05RRi84ZENT
|
|
SmdRNkFLWDRPMTBFTkdOdFRBMC8xK0gvUVV3CjRhWVljR3ZiU1hwWEJBN2hCcTM1
|
|
NWFQWWdmVm1XK1pKUHFnRjJjYXdDNjgKLS0tIERvOU44ellHdGZYVXRDMHN4NkpV
|
|
QkhtVlVQUS96UStlQWo2QWJISUlGL2cKc8AC3UujJMIafbV31pjAzniqSHBNwYDw
|
|
zhh094auKibUcg6Tbyc=
|
|
-----END AGE ENCRYPTED FILE-----
|
|
"""
|
|
}
|
|
}
|
|
}
|
|
|
|
#nut_monitor: {
|
|
#server: string | *ups_server
|
|
#username: string
|
|
#role: "primary" | *"secondary"
|
|
|
|
monitor: [
|
|
for k, v in nut.ups {
|
|
{
|
|
system: k + "@" + #server
|
|
powervalue: 1
|
|
username: #username
|
|
password: nut.users[#username].password
|
|
role: #role
|
|
}
|
|
},
|
|
]
|
|
minsupplies: 1
|
|
}
|
|
|
|
let _nut = nut
|
|
|
|
collectd: nut: schema.#CollectdNut & {
|
|
ups: [for k, v in _nut.ups {k + "@localhost"}]
|
|
}
|