defaults = { 'apt': { 'packages': { 'miniflux': {}, }, 'repos': { 'miniflux': { 'items': { 'deb [trusted=yes] https://repo.miniflux.app/apt/ /', }, }, }, }, 'icinga2_api': { 'miniflux': { 'services': { 'MINIFLUX PROCESS': { 'command_on_monitored_host': '/usr/local/share/icinga/plugins/check_systemd_unit miniflux', }, }, }, }, 'postgresql': { 'roles': { 'miniflux': { 'password': repo.vault.password_for('{} postgresql miniflux'.format(node.name)), }, }, 'databases': { 'miniflux': { 'owner': 'miniflux', }, }, }, } @metadata_reactor.provides( 'nginx/vhosts/miniflux', ) def nginx(metadata): if not node.has_bundle('nginx'): raise DoNotRunAgain return { 'nginx': { 'vhosts': { 'miniflux': { 'domain': metadata.get('miniflux/domain'), 'locations': { '/': { 'target': 'http://127.0.0.1:22040', }, }, 'website_check_path': '/healthcheck', 'website_check_string': 'OK', }, }, }, }