vyos-conf-builder/main.py
Benjamin Tayehanpour c04a9a752a works enough for now
2026-06-16 22:47:04 +02:00

33 lines
912 B
Python

import argparse
from compiler import (
load_services,
load_globals,
build_nat_rules,
build_firewall_rules,
build_dns,
render_nat,
)
def main():
parser = argparse.ArgumentParser()
parser.add_argument("command", choices=["plan", "render"])
args = parser.parse_args()
services = load_services("config/services.yml")
globals_config = load_globals("config/globals.yml")
nat_rules = build_nat_rules(services, globals_config)
fw_rules = build_firewall_rules(services, globals_config)
dns_entries = build_dns(services, globals_config)
if args.command == "plan":
print("Services:", len(services))
print("NAT rules:", len(nat_rules))
print("Firewall rules:", len(fw_rules))
print("DNS entries:", len(dns_entries))
elif args.command == "render":
print(render_nat(nat_rules))
if __name__ == "__main__":
main()