paulbsd-salt/states/apt/apt.py.j2
2022-10-01 20:13:01 +02:00

25 lines
688 B
Django/Jinja
Executable File

{%- from "apt/map.jinja" import apt with context -%}
#!/usr/bin/env python3
import subprocess
import re
SCHEME = "{{ apt.proxy.scheme }}"
HOSTNAME = "{{ apt.proxy.hostname }}"
PORT = "{{ apt.proxy.port }}"
def main():
regex = re.compile(f".*{HOSTNAME}.*")
cmd = subprocess.Popen(f"getent hosts {HOSTNAME}",
shell=True,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
result = cmd.stdout.read().decode().splitlines()
if len(result) > 0:
if regex.match(result[0]):
return f"{SCHEME}://{HOSTNAME}:{PORT}"
return "DIRECT"
if __name__ == "__main__":
print(main())