From 387658de9183229089cd935551e5914bb1e3650e Mon Sep 17 00:00:00 2001 From: vvzvlad Date: Mon, 17 Apr 2023 22:18:35 +0700 Subject: [PATCH] add arg user_cmd --- README.md | 2 +- user_cmd.sh => files/user_cmd.sh | 0 vestasync.py | 10 ++++++---- 3 files changed, 7 insertions(+), 5 deletions(-) rename user_cmd.sh => files/user_cmd.sh (100%) diff --git a/README.md b/README.md index 424684d..9d54d2e 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,7 @@ pip3 install -r requirements.txt ```--gitea_address``` адрес Gitea-сервера в виде "http://192.168.1.101:3001/", куда будет загружаться бекапы конфигов ```--device_new_name``` имя контроллера, из которого вместе с SN будет сформировано название контроллера, которое запишется в хостнейм и будет служить именем репозитария с конфигами ```--gitea_token``` токен для авторизации на Gitea-сервере (получается в интерфейсе Gitea) -```--user_cmd``` файл sh с командами, которые надо выполняить на контроллере для его настройки под ваши задачи (указывать необязательно). В нем можно описать любые команды, которыми вам надо конфигурировать контроллер: например, установка ключа SSH, установка таймзоны и локали, и так далее. Пример файла — ```user_cmd.sh```: +```--user_cmd``` файл sh с командами, которые надо выполняить на контроллере для его настройки под ваши задачи (указывать необязательно). В нем можно описать любые команды, которыми вам надо конфигурировать контроллер: например, установка ключа SSH, установка таймзоны и локали, и так далее. Пример файла — ```files/user_cmd.sh```: ``` #!/usr/bin/env sh diff --git a/user_cmd.sh b/files/user_cmd.sh similarity index 100% rename from user_cmd.sh rename to files/user_cmd.sh diff --git a/vestasync.py b/vestasync.py index 272e40b..9b880a3 100755 --- a/vestasync.py +++ b/vestasync.py @@ -221,9 +221,9 @@ def ppush_the_repo(c): print(f"Error: {e.result.stderr}") c.run('cd /mnt/data/etc/ && git push -u origin master', hide=True) -def run_user_cmd(c): +def run_user_cmd(c, file): user_cmd_file = "/tmp/user_cmd.sh" - c.put("user_cmd.sh", user_cmd_file) + c.put(file, user_cmd_file) c.run(f"chmod +x {user_cmd_file}") c.run(f"{user_cmd_file}") c.run(f"rm {user_cmd_file}") @@ -249,7 +249,8 @@ def device_install(c): copy_wb_rule(c) create_automac_systemd(c) create_autogit_systemd(c) - run_user_cmd(c) + if args.user_cmd is not None: + run_user_cmd(c, args.user_cmd_file) print("Update vestasync complete\n") def device_update(c): @@ -300,7 +301,8 @@ def device_restore(): ppush_the_repo(c) create_autogit_systemd(c) create_automac_systemd(c) - run_user_cmd(c) + if args.user_cmd is not None: + run_user_cmd(c, args.user_cmd_file) reboot(c) print(f"Restore backup complete (hostname {hostname}), rebooting target device..\n") except socket.timeout: