bundlewrap/bundles/infobeamer-cms/metadata.py

223 lines
7.3 KiB
Python
Raw Normal View History

2021-12-23 12:48:44 +00:00
defaults = {
'apt': {
'packages': {
'gunicorn': {},
'python3-gevent': {},
'python3-flask': {},
2021-12-23 18:36:50 +00:00
'python3-jinja2': {},
2021-12-23 12:48:44 +00:00
'python3-redis': {},
2021-12-23 18:36:50 +00:00
'python3-oauth2client': {},
2021-12-23 12:48:44 +00:00
'python3-virtualenv': {},
'python3-requests': {},
'python3-iso8601': {},
},
},
'infobeamer-cms': {
'config': {
2021-12-23 18:36:50 +00:00
'GITHUB_CLIENT_ID': repo.vault.decrypt('encrypt$gAAAAABhxJT3JG3Qb1X-gjtBxwOXZmF-GVPjNbDkYo0Eke5Ly4CAKiussQ8Lld-4zoIWnIVBgndfPPGFDV2RlAHgb-_RY5r7jQcAlgsR0RUw4as0jEhiKlQ='),
'GITHUB_CLIENT_SECRET': repo.vault.decrypt('encrypt$gAAAAABhxJUgYzLIm5Efbn9-sEPpQRRiskHKa7fSqNoUxgonpcn7b9e6S_WbNHH_CLGrkKi7oE3pYUticDaLLLSM0bv74lswwElNvkhUuOM-RSeEuyKEhPP-fX-NXIa_AkRkFPVVBLnw'),
2021-12-23 12:48:44 +00:00
'SESSION_COOKIE_NAME': '__Host-sess',
'PREFERRED_URL_SCHEME': 'https',
2021-12-23 18:36:50 +00:00
'HOSTED_API_KEY': repo.vault.decrypt('encrypt$gAAAAABhxJPH2sIGMAibU2Us1HoCVlNfF0SQQnVl0eiod48Zu8webL_-xk3wDw3yXw1Hkglj-2usl-D3Yd095yTSq0vZMCv2fh-JWwSPdJewQ45x9Ai4vXVD4CNz5vuJBESKS9xQWXTc'),
2021-12-23 12:48:44 +00:00
'MAX_UPLOADS': 5,
2021-12-23 18:36:50 +00:00
'SETUP_IDS': '[212947]',
'URL_KEY': repo.vault.password_for(f'{node.name} infobeamer-cms url key'),
'MQTT_USERNAME': repo.vault.decrypt('encrypt$gAAAAABhxakKHC_kHmHP2mFHorb4niuNTH4F24w1D6m5JUxl117N7znlZA6fpMmY3_NcmBr2Ihw4hL3FjZr9Fm_1oUZ1ZQdADA=='),
'MQTT_PASSWORD': repo.vault.decrypt('encrypt$gAAAAABhxakfhhwWn0vxhoO1FiMEpdCkomWvo0dHIuBrqDKav8WDpI6dXpb0hoXiWRsPV6p5m-8RlbfFbjPhz47AY-nFOOAAW6Yis3-IVD-U-InKJo9dvms='),
'TIME_MIN': 1640559600,
2021-12-23 12:48:44 +00:00
'TIME_MAX': 1640905200,
'VERSION': 1,
'ROOMS': [
{
2021-12-23 18:36:50 +00:00
'name': 'Chaos-West TV',
2021-12-23 18:45:24 +00:00
'device_id': 17968,
2021-12-23 12:48:44 +00:00
'interrupts': [
{
'name': 'Signal',
'data': 'signal',
},
2021-12-23 18:45:24 +00:00
],
2021-12-23 12:48:44 +00:00
},
{
2021-12-23 18:36:50 +00:00
'name': 'Chaosstudio Hamburg',
2021-12-23 18:45:24 +00:00
'device_id': 3284,
2021-12-23 12:48:44 +00:00
'interrupts': [
{
'name': 'Signal',
'data': 'signal',
},
2021-12-23 18:45:24 +00:00
],
2021-12-23 12:48:44 +00:00
},
2021-12-23 18:36:50 +00:00
{
'name': 'ChaosZone TV',
'device_id': 3,
'interrupts': [
{
'name': 'Signal',
'data': 'signal',
},
2021-12-23 18:45:24 +00:00
],
2021-12-23 18:36:50 +00:00
},
{
'name': 'r3s - Monheim/Rhein',
2021-12-23 18:45:24 +00:00
'device_id': 22460,
2021-12-23 18:36:50 +00:00
'interrupts': [
{
'name': 'Signal',
'data': 'signal',
},
2021-12-23 18:45:24 +00:00
],
2021-12-23 18:36:50 +00:00
},
{
'name': 'franconian.net Livestream',
'device_id': 246100657,
'interrupts': [
{
'name': 'Signal',
'data': 'signal',
},
2021-12-23 18:45:24 +00:00
],
2021-12-23 18:36:50 +00:00
},
{
'name': 'about:future stage',
'device_id': 246100658,
'interrupts': [
{
'name': 'Signal',
'data': 'signal',
},
2021-12-23 18:45:24 +00:00
],
2021-12-23 18:36:50 +00:00
},
{
'name': 'Sendezentrum Bühne',
'device_id': 246100659,
'interrupts': [
{
'name': 'Signal',
'data': 'signal',
},
2021-12-23 18:45:24 +00:00
],
2021-12-23 18:36:50 +00:00
},
{
'name': 'Haecksen Stream',
'device_id': 246100660,
'interrupts': [
{
'name': 'Signal',
'data': 'signal',
},
2021-12-23 18:45:24 +00:00
],
2021-12-23 18:36:50 +00:00
},
{
'name': 'xHain Mainhall',
'device_id': 246100661,
'interrupts': [
{
'name': 'Signal',
'data': 'signal',
},
2021-12-23 18:45:24 +00:00
],
2021-12-23 18:36:50 +00:00
},
{
'name': 'xHain Workshop-Area',
'device_id': 246100662,
'interrupts': [
{
'name': 'Signal',
'data': 'signal',
},
2021-12-23 18:45:24 +00:00
],
2021-12-23 18:36:50 +00:00
},
{
'name': 'c-base',
'device_id': 246100663,
'interrupts': [
{
'name': 'Signal',
'data': 'signal',
},
2021-12-23 18:45:24 +00:00
],
2021-12-23 18:36:50 +00:00
},
{
'name': 'about:future Kitchen',
'device_id': 246100664,
'interrupts': [
{
'name': 'Signal',
'data': 'signal',
},
2021-12-23 18:45:24 +00:00
],
2021-12-23 18:36:50 +00:00
},
{
'name': 'Haecksen Zur schönen Mary',
'device_id': 246100665,
'interrupts': [
{
'name': 'Signal',
'data': 'signal',
},
2021-12-23 18:45:24 +00:00
],
2021-12-23 18:36:50 +00:00
},
{
'name': 'Haecksen Zur magischen Margaret',
'device_id': 246100666,
'interrupts': [
{
'name': 'Signal',
'data': 'signal',
},
2021-12-23 18:45:24 +00:00
],
},
{
'name': 'infobeamer stream',
'device_id': 15586,
'interrupts': [
{
'name': 'Signal',
'data': 'signal',
},
],
2021-12-23 18:36:50 +00:00
},
2021-12-23 12:48:44 +00:00
],
2021-12-23 18:36:50 +00:00
'PORT': 8000,
'WORKERS': 4,
2021-12-23 12:48:44 +00:00
'unused': 'foobar',
},
},
}
@metadata_reactor.provides(
'nginx/vhosts',
)
def nginx(metadata):
if not node.has_bundle('nginx'):
raise DoNotRunAgain
locations = {
'/': {
'target': 'http://127.0.0.1:8000',
},
2021-12-23 18:36:50 +00:00
'/sync': {
'return': 'forbidden',
'mode': 403,
2021-12-23 12:48:44 +00:00
},
2021-12-23 18:36:50 +00:00
'/static': {
2021-12-23 12:48:44 +00:00
'alias': '/opt/infobeamer-cms/static',
},
}
vhosts = {
'infobeamer-cms': {
'locations': locations,
'website_check_path': '/',
'website_check_string': '',
},
}
return {
'nginx': {
'vhosts': vhosts
},
}