From 96f38363eac30aff71b62972f23553f553f9684f Mon Sep 17 00:00:00 2001 From: bigeagle Date: Thu, 21 Apr 2016 19:38:37 +0800 Subject: [PATCH] refactor: remove part of unneeded files --- examples/shell_provider.sh | 7 --- examples/tunasync.conf | 75 ---------------------------- requirements.txt | 3 -- systemd/tunasync-snapshot-gc.service | 11 ---- systemd/tunasync-snapshot-gc.timer | 8 --- systemd/tunasync.service | 13 ----- tunasync.py | 28 ----------- tunasync_snapshot_gc.py | 43 ---------------- tunasynctl.py | 64 ------------------------ 9 files changed, 252 deletions(-) delete mode 100755 examples/shell_provider.sh delete mode 100644 examples/tunasync.conf delete mode 100644 requirements.txt delete mode 100644 systemd/tunasync-snapshot-gc.service delete mode 100644 systemd/tunasync-snapshot-gc.timer delete mode 100644 systemd/tunasync.service delete mode 100644 tunasync.py delete mode 100644 tunasync_snapshot_gc.py delete mode 100755 tunasynctl.py diff --git a/examples/shell_provider.sh b/examples/shell_provider.sh deleted file mode 100755 index 4ffbd4b..0000000 --- a/examples/shell_provider.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -echo $TUNASYNC_WORKING_DIR -echo $TUNASYNC_LOG_FILE -echo $TUNASYNC_UPSTREAM_URL -echo $REPO -sleep 5 -exit 1 diff --git a/examples/tunasync.conf b/examples/tunasync.conf deleted file mode 100644 index 6db68c5..0000000 --- a/examples/tunasync.conf +++ /dev/null @@ -1,75 +0,0 @@ -[global] -log_dir = "/var/log/tunasync" -# mirror_root = /srv/mirror_disk -mirror_root = "/mnt/sdb1/mirror" -use_btrfs = false -local_dir = "{mirror_root}/_working/{mirror_name}/" -status_file = "/tmp/tunasync.json" -# maximum numbers of running jobs -concurrent = 2 -# interval in minutes -interval = 1 -max_retry = 2 -ctrl_addr = "/tmp/tunasync.sock" - -[btrfs] -service_dir = "{mirror_root}/_current/{mirror_name}" -working_dir = "{mirror_root}/_working/{mirror_name}" -gc_root = "{mirror_root}/_garbage/" -gc_dir = "{mirror_root}/_garbage/_gc_{mirror_name}_{{timestamp}}" - -# [[mirrors]] -# name = "archlinux" -# provider = "rsync" -# upstream = "rsync://mirror.us.leaseweb.net/archlinux/" -# log_file = "/tmp/archlinux-{date}.log" -# use_ipv6 = true - -[[mirrors]] -name = "arch1" -provider = "shell" -command = "sleep 10" -local_dir = "/mnt/sdb1/mirror/archlinux/current/" -# log_file = "/dev/null" -exec_post_sync = "/bin/bash -c 'date --utc \"+%s\" > ${TUNASYNC_WORKING_DIR}/.timestamp'" - -[[mirrors]] -name = "arch2" -provider = "shell" -command = "sleep 20" -local_dir = "/mnt/sdb1/mirror/archlinux/current/" -# log_file = "/dev/null" - - -[[mirrors]] -name = "arch3" -provider = "two-stage-rsync" -stage1_profile = "debian" -upstream = "/tmp/rsync_test/src/" -local_dir = "/tmp/rsync_test/dst/" -log_file = "/tmp/rsync_test/log" -# log_file = "/dev/null" -no_delay = true - -[[mirrors]] -name = "arch4" -provider = "shell" -command = "./shell_provider.sh" -upstream = "https://pypi.python.org/" -# log_file = "/tmp/arch4-{date}.log" -use_btrfs = false - # set environment varialbes - [mirrors.env] - REPO = "/usr/local/bin/repo" - -[[mirrors]] -name = "arch5" -provider = "shell" -command = "./shell_provider.sh" -upstream = "https://pypi.python.org/" -# log_file = "/tmp/arch4-{date}.log" -use_btrfs = false - [mirrors.env] - REPO = "/usr/local/bin/repo2" - -# vim: ft=toml ts=2 sts=2 sw=2 diff --git a/requirements.txt b/requirements.txt deleted file mode 100644 index 9787eee..0000000 --- a/requirements.txt +++ /dev/null @@ -1,3 +0,0 @@ -setproctitle==1.1.9 -sh==1.11 -toml==0.9.1 diff --git a/systemd/tunasync-snapshot-gc.service b/systemd/tunasync-snapshot-gc.service deleted file mode 100644 index 0dc3f91..0000000 --- a/systemd/tunasync-snapshot-gc.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=Delete garbage subvolumes generated by tunasync -Requires = network.target -After = network.target - -[Service] -Type=oneshot -ExecStart=/home/tuna/.virtualenvs/tunasync/bin/python -u /home/tuna/tunasync/tunasync_snapshot_gc.py -c /etc/tunasync.ini - -[Install] -WantedBy = multi-user.target diff --git a/systemd/tunasync-snapshot-gc.timer b/systemd/tunasync-snapshot-gc.timer deleted file mode 100644 index 674e6a1..0000000 --- a/systemd/tunasync-snapshot-gc.timer +++ /dev/null @@ -1,8 +0,0 @@ -[Unit] -Description=TUNAsync GC every 10 minutes - -[Timer] -OnUnitActiveSec=10min - -[Install] -WantedBy=multi-user.target diff --git a/systemd/tunasync.service b/systemd/tunasync.service deleted file mode 100644 index df5e902..0000000 --- a/systemd/tunasync.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description = TUNA mirrors sync daemon -Requires = network.target -After = network.target - -[Service] -ExecStart = /home/tuna/.virtualenvs/tunasync/bin/python -u /home/tuna/tunasync/tunasync.py -c /etc/tunasync.ini -KillSignal = SIGTERM -ExecReload = /bin/kill -SIGUSR1 $MAINPID -Environment = "HOME=/home/tuna" - -[Install] -WantedBy = multi-user.target diff --git a/tunasync.py b/tunasync.py deleted file mode 100644 index 4f1ce8f..0000000 --- a/tunasync.py +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env python2 -# -*- coding:utf-8 -*- -import os -import argparse - -from tunasync import TUNASync - - -if __name__ == "__main__": - here = os.path.abspath(os.path.dirname(__file__)) - - parser = argparse.ArgumentParser(prog="tunasync") - parser.add_argument("-c", "--config", - default="tunasync.ini", help="config file") - parser.add_argument("--pidfile", default="/run/tunasync/tunasync.pid", - help="pidfile") - - args = parser.parse_args() - - with open(args.pidfile, 'w') as f: - f.write("{}".format(os.getpid())) - - tunaSync = TUNASync() - tunaSync.read_config(args.config) - - tunaSync.run_jobs() - -# vim: ts=4 sw=4 sts=4 expandtab diff --git a/tunasync_snapshot_gc.py b/tunasync_snapshot_gc.py deleted file mode 100644 index 0bab1bd..0000000 --- a/tunasync_snapshot_gc.py +++ /dev/null @@ -1,43 +0,0 @@ -#!/usr/bin/env python2 -# -*- coding:utf-8 -*- -import re -import sh -import os -import argparse -import toml - -if __name__ == "__main__": - parser = argparse.ArgumentParser(prog="tunasync_snapshot_gc") - parser.add_argument("--max-level", type=int, default=1, help="max walk level to find garbage snapshots") - parser.add_argument("--pattern", default=r"^_gc_.+_\d+", help="pattern to match garbage snapshots") - parser.add_argument("-c", "--config", help="tunasync config file") - - args = parser.parse_args() - - pattern = re.compile(args.pattern) - - def walk(_dir, level=1): - if level > args.max_level: - return - - for fname in os.listdir(_dir): - abs_fname = os.path.join(_dir, fname) - if os.path.isdir(abs_fname): - if pattern.match(fname): - print("GC: {}".format(abs_fname)) - try: - sh.btrfs("subvolume", "delete", abs_fname) - except sh.ErrorReturnCode as e: - print("Error: {}".format(e.stderr)) - else: - walk(abs_fname, level+1) - - with open(args.config) as f: - settings = toml.loads(f.read()) - - mirror_root = settings["global"]["mirror_root"] - gc_root = settings["btrfs"]["gc_root"].format(mirror_root=mirror_root) - - walk(gc_root) - -# vim: ts=4 sw=4 sts=4 expandtab diff --git a/tunasynctl.py b/tunasynctl.py deleted file mode 100755 index 14621d8..0000000 --- a/tunasynctl.py +++ /dev/null @@ -1,64 +0,0 @@ -#!/usr/bin/env python2 -# -*- coding:utf-8 -*- -import sys -import socket -import argparse -import json -import struct - -if __name__ == "__main__": - parser = argparse.ArgumentParser(prog="tunasynctl") - parser.add_argument("-s", "--socket", - default="/run/tunasync/tunasync.sock", help="socket file") - - subparsers = parser.add_subparsers(dest="command", help='sub-command help') - - sp = subparsers.add_parser('start', help="start job") - sp.add_argument("target", help="mirror job name") - - sp = subparsers.add_parser('stop', help="stop job") - sp.add_argument("target", help="mirror job name") - - sp = subparsers.add_parser('restart', help="restart job") - sp.add_argument("target", help="mirror job name") - - sp = subparsers.add_parser('status', help="show mirror status") - sp.add_argument("target", nargs="?", default="__ALL__", help="mirror job name") - - sp = subparsers.add_parser('log', help="return log file path") - sp.add_argument("-n", type=int, default=0, help="last n-th log, default 0 (latest)") - sp.add_argument("target", help="mirror job name") - - sp = subparsers.add_parser('help', help="show help message") - - args = vars(parser.parse_args()) - - if args['command'] == "help": - parser.print_help() - sys.exit(0) - - sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) - - try: - sock.connect(args.pop("socket")) - except socket.error as msg: - print(msg) - sys.exit(1) - - pack = json.dumps({ - "cmd": args.pop("command"), - "target": args.pop("target"), - "kwargs": args, - }) - - try: - sock.sendall(struct.pack('!H', len(pack)) + pack) - length = struct.unpack('!H', sock.recv(2))[0] - print(sock.recv(length)) - - except Exception as e: - print(e) - finally: - sock.close() - -# vim: ts=4 sw=4 sts=4 expandtab