bundles/samba: add code to show up as time machine backup target
This commit is contained in:
parent
91432197e8
commit
ab717f62e7
4 changed files with 102 additions and 0 deletions
|
@ -11,9 +11,14 @@ svc_systemd = {
|
|||
},
|
||||
}
|
||||
|
||||
timemachine_shares = node.metadata.get('samba/timemachine-shares', set())
|
||||
|
||||
files = {
|
||||
'/etc/samba/smb.conf': {
|
||||
'content_type': 'mako',
|
||||
'context': {
|
||||
'timemachine': timemachine_shares,
|
||||
},
|
||||
'triggers': {
|
||||
'svc_systemd:nmbd:restart',
|
||||
'svc_systemd:smbd:restart',
|
||||
|
@ -57,3 +62,24 @@ for user, uconfig in node.metadata.get('users', {}).items():
|
|||
last_action = {
|
||||
f'action:smbpasswd_for_user_{user}',
|
||||
}
|
||||
|
||||
if timemachine_shares:
|
||||
assert node.has_bundle('avahi-daemon'), f'{node.name}: samba needs avahi-daemon to publish time machine shares'
|
||||
|
||||
files['/etc/avahi/services/timemachine.service'] = {
|
||||
'content_type': 'mako',
|
||||
'context': {
|
||||
'shares': timemachine_shares,
|
||||
},
|
||||
}
|
||||
|
||||
for share_name in timemachine_shares:
|
||||
users[f'timemachine-{share_name}'] = {
|
||||
'home': f'/srv/timemachine/{share_name}',
|
||||
}
|
||||
|
||||
directories[f'/srv/timemachine/{share_name}'] = {
|
||||
'owner': f'timemachine-{share_name}',
|
||||
'group': f'timemachine-{share_name}',
|
||||
'mode': '0700',
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue