bw/phanpy add fediverse interface
This commit is contained in:
parent
3c77ff530d
commit
34428034dc
3 changed files with 80 additions and 0 deletions
29
bundles/phanpy/items.py
Normal file
29
bundles/phanpy/items.py
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
repo.libs.tools.require_bundle(node, 'nodejs')
|
||||||
|
|
||||||
|
directories = {
|
||||||
|
'/opt/phanpy': {}
|
||||||
|
}
|
||||||
|
|
||||||
|
git_deploy = {
|
||||||
|
'/opt/phanpy': {
|
||||||
|
'rev': node.metadata.get('phanpy/version'),
|
||||||
|
'repo': 'https://github.com/cheeaun/phanpy.git',
|
||||||
|
'triggers': {
|
||||||
|
'action:phanpy_build',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
actions = {
|
||||||
|
'phanpy_build': {
|
||||||
|
'command': ' && '.join([
|
||||||
|
'cd /opt/phanpy',
|
||||||
|
'npm install ',
|
||||||
|
'npm run build',
|
||||||
|
]),
|
||||||
|
'needs': {
|
||||||
|
'pkg_apt:nodejs',
|
||||||
|
},
|
||||||
|
'triggered': True,
|
||||||
|
},
|
||||||
|
}
|
46
bundles/phanpy/metadata.py
Normal file
46
bundles/phanpy/metadata.py
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
defaults = {
|
||||||
|
'zfs': {
|
||||||
|
'datasets': {
|
||||||
|
'tank/phanpy': {
|
||||||
|
'mountpoint': '/opt/phanpy',
|
||||||
|
'needed_by': {
|
||||||
|
'directory:/opt/phanpy',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
@metadata_reactor.provides(
|
||||||
|
'nginx/vhosts/phanpy',
|
||||||
|
)
|
||||||
|
def nginx_config(metadata):
|
||||||
|
return {
|
||||||
|
'nginx': {
|
||||||
|
'vhosts': {
|
||||||
|
'phanpy': {
|
||||||
|
'domain': metadata.get('phanpy/url'),
|
||||||
|
'webroot': '/opt/phanpy/dist/',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@metadata_reactor.provides(
|
||||||
|
'icinga2_api/phanpy/services',
|
||||||
|
)
|
||||||
|
def icinga_check_for_new_release(metadata):
|
||||||
|
return {
|
||||||
|
'icinga2_api': {
|
||||||
|
'phanpy': {
|
||||||
|
'services': {
|
||||||
|
'PHANPY UPDATE': {
|
||||||
|
'command_on_monitored_host': '/usr/local/share/icinga/plugins/check_github_for_new_release cheeaun/phanpy {}'.format(metadata.get('phanpy/version')),
|
||||||
|
'vars.notification.mail': True,
|
||||||
|
'check_interval': '60m',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
|
@ -9,6 +9,7 @@ nodes['htz-cloud.miniserver'] = {
|
||||||
'nodejs',
|
'nodejs',
|
||||||
'ntfy',
|
'ntfy',
|
||||||
'mautrix-telegram',
|
'mautrix-telegram',
|
||||||
|
'phanpy',
|
||||||
'postgresql',
|
'postgresql',
|
||||||
'zfs',
|
'zfs',
|
||||||
},
|
},
|
||||||
|
@ -204,6 +205,10 @@ nodes['htz-cloud.miniserver'] = {
|
||||||
'domain': 'ntfy.sophies-kitchen.eu',
|
'domain': 'ntfy.sophies-kitchen.eu',
|
||||||
'allow_unauthorized_write': True,
|
'allow_unauthorized_write': True,
|
||||||
},
|
},
|
||||||
|
'phanpy': {
|
||||||
|
'url': 'phanpy.sophies-kitchen.eu',
|
||||||
|
'version': '2023.10.07.9b1800d',
|
||||||
|
},
|
||||||
'postgresql': {
|
'postgresql': {
|
||||||
'version': '11',
|
'version': '11',
|
||||||
},
|
},
|
||||||
|
|
Loading…
Reference in a new issue