46 lines
1.1 KiB
Python
46 lines
1.1 KiB
Python
@metadata_processor
|
|
def defaults(metadata):
|
|
return {
|
|
'apt': {
|
|
'repos': {
|
|
'nginx': {
|
|
'key': '573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62',
|
|
'items': [
|
|
'deb http://nginx.org/packages/debian buster nginx',
|
|
],
|
|
},
|
|
},
|
|
'unattended-upgrades': {
|
|
'origins': {
|
|
'o=nginx,a=stable,n=buster,l=nginx,c=nginx',
|
|
},
|
|
},
|
|
'packages': {
|
|
'nginx': {},
|
|
},
|
|
},
|
|
'nginx': {
|
|
'worker_processes': 4,
|
|
'worker_connections': 1000,
|
|
},
|
|
}, DEFAULTS, DONE
|
|
|
|
|
|
@metadata_processor
|
|
def letsencrypt(metadata):
|
|
if not node.has_bundle('letsencrypt'):
|
|
return metadata, DONE
|
|
|
|
domains = {}
|
|
|
|
for domain in metadata.get('nginx', {}).get('vhosts', {}).keys():
|
|
domains[domain] = set()
|
|
|
|
return {
|
|
'letsencrypt': {
|
|
'domains': domains,
|
|
'reload_after': {
|
|
'nginx',
|
|
},
|
|
},
|
|
}, DEFAULTS, RUN_ME_AGAIN
|