|
16 | 16 | parser.add_argument("--domain", help="The domain to be updated", required=True) |
17 | 17 | parser.add_argument("--zone", help="The zone to be updated (default to the domain)") |
18 | 18 | parser.add_argument("--log-level", help="Log level to display", default="INFO") |
| 19 | +parser.add_argument("--log-file", help="Where to put the logs", default="/var/log/docker-ddns.log") |
19 | 20 |
|
20 | 21 | args = parser.parse_args() |
21 | 22 |
|
22 | | -logging.basicConfig(level=getattr(logging,args.log_level.upper())) |
| 23 | +if args.log_file == '-': |
| 24 | + logging.basicConfig(level=getattr(logging,args.log_level.upper())) |
| 25 | +else: |
| 26 | + logging.basicConfig(level=getattr(logging,args.log_level.upper()), filename=args.log_file) |
23 | 27 |
|
24 | 28 | if args.zone is None: |
25 | 29 | args.zone = args.domain |
|
49 | 53 | event = m.group(2) |
50 | 54 | container_id = m.group(1) |
51 | 55 | logging.info("Got event %s for container %s", event, container_id) |
| 56 | + |
52 | 57 | if event == "start": |
53 | 58 | logging.info("Starting %s", container_id) |
54 | 59 | detail = c.inspect_container(container_id) |
|
61 | 66 | nsupdate.stdin.write(bytes(zone_update_add_alias_template.format(container_name, args.domain, container_hostname), "UTF-8")) |
62 | 67 | nsupdate.stdin.write(bytes("send\n", "UTF-8")) |
63 | 68 | nsupdate.stdin.close() |
64 | | - elif event == "destroy": |
65 | | - logging.info("Destroying %s", container_id) |
66 | | - else: |
67 | | - logging.warning("Couldn't match RE in line %s", text_line) |
| 69 | + elif event == "destroy": |
| 70 | + logging.info("Destroying %s", container_id) |
| 71 | + else: |
| 72 | + logging.warning("Couldn't match RE in line %s", text_line) |
68 | 73 | else: |
69 | 74 | print("Done return code: ", p.returncode) |
70 | 75 | break |
|
0 commit comments