Adding template overrides
All checks were successful
HAProxy Manager Build and Push / Build-and-Push (push) Successful in 38s
All checks were successful
HAProxy Manager Build and Push / Build-and-Push (push) Successful in 38s
This commit is contained in:
parent
c47118729f
commit
6b28c118de
@ -24,7 +24,8 @@ def init_db():
|
|||||||
id INTEGER PRIMARY KEY,
|
id INTEGER PRIMARY KEY,
|
||||||
domain TEXT UNIQUE NOT NULL,
|
domain TEXT UNIQUE NOT NULL,
|
||||||
ssl_enabled BOOLEAN DEFAULT 0,
|
ssl_enabled BOOLEAN DEFAULT 0,
|
||||||
ssl_cert_path TEXT
|
ssl_cert_path TEXT,
|
||||||
|
template_override TEXT
|
||||||
)
|
)
|
||||||
''')
|
''')
|
||||||
|
|
||||||
@ -138,6 +139,7 @@ def regenerate_conf():
|
|||||||
def add_domain():
|
def add_domain():
|
||||||
data = request.get_json()
|
data = request.get_json()
|
||||||
domain = data.get('domain')
|
domain = data.get('domain')
|
||||||
|
template_override = data.get('template_override')
|
||||||
backend_name = data.get('backend_name')
|
backend_name = data.get('backend_name')
|
||||||
servers = data.get('servers', [])
|
servers = data.get('servers', [])
|
||||||
|
|
||||||
@ -145,7 +147,7 @@ def add_domain():
|
|||||||
cursor = conn.cursor()
|
cursor = conn.cursor()
|
||||||
|
|
||||||
# Add domain
|
# Add domain
|
||||||
cursor.execute('INSERT INTO domains (domain) VALUES (?)', (domain,))
|
cursor.execute('INSERT INTO domains (domain, template_override) VALUES (?, ?)', (domain, template_override or None))
|
||||||
domain_id = cursor.lastrowid
|
domain_id = cursor.lastrowid
|
||||||
|
|
||||||
# Add backend
|
# Add backend
|
||||||
@ -158,7 +160,7 @@ def add_domain():
|
|||||||
cursor.execute('''
|
cursor.execute('''
|
||||||
INSERT INTO backend_servers
|
INSERT INTO backend_servers
|
||||||
(backend_id, server_name, server_address, server_port, server_options)
|
(backend_id, server_name, server_address, server_port, server_options)
|
||||||
VALUES (?, ?, ?, ?, ?)
|
VALUES (?, ?, ?, ?, ?, ?)
|
||||||
''', (backend_id, server['name'], server['address'],
|
''', (backend_id, server['name'], server['address'],
|
||||||
server['port'], server.get('options')))
|
server['port'], server.get('options')))
|
||||||
# Close cursor and connection
|
# Close cursor and connection
|
||||||
@ -323,11 +325,17 @@ def generate_config():
|
|||||||
print(f"No servers found for backend {domain['backend_name']}") # Debug log
|
print(f"No servers found for backend {domain['backend_name']}") # Debug log
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
if domain['template_override'] is None:
|
||||||
backend_block = template_env.get_template('hap_backend.tpl').render(
|
backend_block = template_env.get_template('hap_backend.tpl').render(
|
||||||
name=domain['backend_name'],
|
name=domain['backend_name'],
|
||||||
ssl_enabled=domain['ssl_enabled'],
|
ssl_enabled=domain['ssl_enabled'],
|
||||||
servers=servers
|
servers=servers
|
||||||
)
|
)
|
||||||
|
else:
|
||||||
|
backend_block = template_env.get_template(domain['template_override' + '.tpl']).render(
|
||||||
|
name=domain['backend_name'],
|
||||||
|
servers=servers
|
||||||
|
)
|
||||||
config_backends.append(backend_block)
|
config_backends.append(backend_block)
|
||||||
print(f"Added backend block for: {domain['backend_name']}") # Debug log
|
print(f"Added backend block for: {domain['backend_name']}") # Debug log
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
|
4
templates/hap_backend_basic.tpl
Normal file
4
templates/hap_backend_basic.tpl
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
|
||||||
|
backend {{ name }}-backend
|
||||||
|
{% for server in servers %}server {{ server.server_name }} {{ server.server_address }}:{{ server.server_port }} {{ server.server_options }}{% endfor %}
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user