Solved application generation bugs

This commit is contained in:
Kevin Veen-Birkenbach 2025-05-09 18:03:48 +02:00
parent 5b47333955
commit a2e6c9881a
No known key found for this signature in database
GPG Key ID: 44D8F11FD62F878E
19 changed files with 72 additions and 34 deletions

36
cli/fix_tabs.py Normal file
View File

@ -0,0 +1,36 @@
#!/usr/bin/env python3
import os
from pathlib import Path
ROLES_DIR = Path("roles") # Adjust this if needed
FILES_FIXED = []
def fix_tabs_in_file(file_path):
with open(file_path, "r") as f:
lines = f.readlines()
if any('\t' in line for line in lines):
fixed_lines = [line.replace('\t', ' ') for line in lines]
with open(file_path, "w") as f:
f.writelines(fixed_lines)
FILES_FIXED.append(str(file_path))
def main():
for role_dir in sorted(ROLES_DIR.iterdir()):
if not role_dir.is_dir():
continue
vars_main = role_dir / "vars" / "main.yml"
if vars_main.exists():
fix_tabs_in_file(vars_main)
if FILES_FIXED:
print("✅ Fixed tab characters in the following files:")
for f in FILES_FIXED:
print(f" - {f}")
else:
print("✅ No tabs found in any vars/main.yml files.")
if __name__ == "__main__":
main()

View File

@ -26,7 +26,7 @@ def main():
result = {"default_applications": {}}
for role_dir in sorted(roles_dir.glob("docker-*")):
for role_dir in sorted(roles_dir.iterdir()):
role_name = role_dir.name
vars_main = role_dir / "vars" / "main.yml"
config_file = role_dir / "vars" / "configuration.yml"

View File

@ -1,5 +1,5 @@
application_id: "baserow"
database_password: "{{ baserow_database_password }}"
database_type: "postgres"
domain: "{{ domains[application_id] }}"
http_port: "{{ ports.localhost.http[application_id] }}"
domain: "{{ domains[application_id] }}"
http_port: "{{ ports.localhost.http[application_id] }}"

View File

@ -1,13 +1,13 @@
application_id: "bigbluebutton"
bbb_repository_directory: "{{ docker_compose.directories.services }}"
docker_compose_file_origine: "{{ docker_compose.directories.services }}docker-compose.yml"
docker_compose_file_final: "{{ docker_compose.directories.instance }}docker-compose.yml"
application_id: "bigbluebutton"
bbb_repository_directory: "{{ docker_compose.directories.services }}"
docker_compose_file_origine: "{{ docker_compose.directories.services }}docker-compose.yml"
docker_compose_file_final: "{{ docker_compose.directories.instance }}docker-compose.yml"
# Database configuration
database_type: "postgres"
database_password: "{{ applications.bigbluebutton.credentials.postgresql_secret }}"
database_type: "postgres"
database_password: "{{ applications.bigbluebutton.credentials.postgresql_secret }}"
domain: "{{ domains[application_id] }}"
http_port: "{{ ports.localhost.http[application_id] }}"
bbb_env_file_link: "{{ docker_compose.directories.instance }}.env"
bbb_env_file_origine: "{{ bbb_repository_directory }}.env"
domain: "{{ domains[application_id] }}"
http_port: "{{ ports.localhost.http[application_id] }}"
bbb_env_file_link: "{{ docker_compose.directories.instance }}.env"
bbb_env_file_origine: "{{ bbb_repository_directory }}.env"

View File

@ -1,3 +1,3 @@
application_id: "joomla"
application_id: "joomla"
database_password: "{{joomla_database_password}}"
database_type: "postgres"

View File

@ -1,4 +1,4 @@
application_id: "keycloak"
application_id: "keycloak"
database_type: "postgres"
database_password: "{{applications[application_id].credentials.database_password}}"
container_name: "{{application_id}}_application"

View File

@ -1,4 +1,4 @@
application_id: "listmonk"
application_id: "listmonk"
database_password: "{{applications[application_id].credentials.database_password}}"
database_type: "postgres"

View File

@ -1,7 +1,7 @@
application_id: "mailu"
# Database Configuration
database_password: "{{applications.mailu.credentials.database_password}}"
database_password: "{{applications.mailu.credentials.database_password}}"
database_type: "mariadb"
cert_mount_directory: "{{docker_compose.directories.volumes}}certs/"
@ -11,4 +11,4 @@ cert_mount_directory: "{{docker_compose.directories.volumes}}certs/"
docker_source: "{{ 'ghcr.io/heviat' if applications[application_id].features.oidc | bool else 'ghcr.io/mailu' }}"
domain: "{{ domains[application_id] }}"
http_port: "{{ ports.localhost.http[application_id] }}"
http_port: "{{ ports.localhost.http[application_id] }}"

View File

@ -1 +0,0 @@
version: "latest"

View File

@ -0,0 +1,3 @@
version: "latest"
application_id: "mariadb"
hostname: "central-{{application_id}}"

View File

@ -1,3 +1,3 @@
application_id: "mastodon"
application_id: "mastodon"
database_password: "{{applications[application_id].credentials.database_password}}"
database_type: "postgres"

View File

@ -1,5 +1,5 @@
---
application_id: "matomo"
application_id: "matomo"
database_type: "mariadb"
database_password: "{{applications.matomo.credentials.database_password}}"

View File

@ -1,6 +1,6 @@
---
application_id: "matrix"
database_password: "{{applications[application_id].credentials.database_password}}"
application_id: "matrix"
database_password: "{{applications[application_id].credentials.database_password}}"
database_type: "postgres"
registration_file_folder: "/data/"
well_known_directory: "{{nginx.directories.data.well_known}}/matrix/"

View File

@ -1,5 +1,5 @@
---
application_id: "mybb"
application_id: "mybb"
docker_compose_instance_confd_directory: "{{docker_compose.directories.instance}}conf.d/"
docker_compose_instance_confd_defaultconf_file: "{{docker_compose_instance_confd_directory}}default.conf"
target_mount_conf_d_directory: "{{nginx.directories.http.servers}}"

View File

@ -3,7 +3,7 @@
application_id: "nextcloud" # Application identifier
# Database
database_password: "{{applications.nextcloud.credentials.database_password}}" # Database password
database_password: "{{applications.nextcloud.credentials.database_password}}" # Database password
database_type: "mariadb" # Database flavor
# Networking

View File

@ -1,3 +1,3 @@
application_id: "peertube"
application_id: "peertube"
database_type: "postgres"
database_password: "{{applications[application_id].credentials.database_password}}"

View File

@ -1,7 +1,7 @@
# General Configuration
application_id: syncope
database_type: "postgres"
database_password: {{ domains[application_id].credentials.database_password }}
database_password: "{{ domains[application_id].credentials.database_password }}"
# Application Specific
syncope_keymaster_address: http://localhost:8080/syncope/rest/keymaster
@ -10,8 +10,8 @@ syncope_paths:
console: console
enduser: enduser
syncope_anonymous_user: {{ domains[application_id].users.anonymous.username }}
syncope_anonymous_password: {{ domains[application_id].credentials.anonymous.password }}
syncope_anonymous_user: "{{ domains[application_id].users.anonymous.username }}"
syncope_anonymous_password: "{{ domains[application_id].credentials.anonymous.password }}"
syncope_administrator_user: {{ domains[application_id].users.administrator.username }}
syncope_administrator_password: {{ domains[application_id].credentials.administrator_password }}
syncope_administrator_user: "{{ domains[application_id].users.administrator.username }}"
syncope_administrator_password: "{{ domains[application_id].credentials.administrator_password }}"

View File

@ -1,7 +1,7 @@
application_id: "wordpress"
application_id: "wordpress"
wordpress_max_upload_size: "64M"
database_type: "mariadb"
database_password: "{{applications[application_id].credentials.database_password}}"
database_password: "{{applications[application_id].credentials.database_password}}"
wordpress_custom_image: "wordpress_custom"
wordpress_docker_html_path: "/var/www/html"
host_msmtp_conf: "{{docker_compose.directories.config}}msmtprc.conf"

View File

@ -1,3 +1,3 @@
application_id: "yourls"
application_id: "yourls"
database_type: "mariadb"
database_password: "{{applications[application_id].credentials.database_password}}"