works enough for now
This commit is contained in:
commit
c04a9a752a
12 changed files with 178 additions and 0 deletions
33
main.py
Normal file
33
main.py
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
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()
|
||||
Loading…
Add table
Add a link
Reference in a new issue