mirror of
https://github.com/vvzvlad/vestasync.git
synced 2024-12-26 04:01:00 +03:00
add arg user_cmd
This commit is contained in:
parent
631b5a69b0
commit
387658de91
@ -67,7 +67,7 @@ pip3 install -r requirements.txt
|
|||||||
```--gitea_address``` адрес Gitea-сервера в виде "http://192.168.1.101:3001/", куда будет загружаться бекапы конфигов
|
```--gitea_address``` адрес Gitea-сервера в виде "http://192.168.1.101:3001/", куда будет загружаться бекапы конфигов
|
||||||
```--device_new_name``` имя контроллера, из которого вместе с SN будет сформировано название контроллера, которое запишется в хостнейм и будет служить именем репозитария с конфигами
|
```--device_new_name``` имя контроллера, из которого вместе с SN будет сформировано название контроллера, которое запишется в хостнейм и будет служить именем репозитария с конфигами
|
||||||
```--gitea_token``` токен для авторизации на Gitea-сервере (получается в интерфейсе Gitea)
|
```--gitea_token``` токен для авторизации на Gitea-сервере (получается в интерфейсе Gitea)
|
||||||
```--user_cmd``` файл sh с командами, которые надо выполняить на контроллере для его настройки под ваши задачи (указывать необязательно). В нем можно описать любые команды, которыми вам надо конфигурировать контроллер: например, установка ключа SSH, установка таймзоны и локали, и так далее. Пример файла — ```user_cmd.sh```:
|
```--user_cmd``` файл sh с командами, которые надо выполняить на контроллере для его настройки под ваши задачи (указывать необязательно). В нем можно описать любые команды, которыми вам надо конфигурировать контроллер: например, установка ключа SSH, установка таймзоны и локали, и так далее. Пример файла — ```files/user_cmd.sh```:
|
||||||
|
|
||||||
```
|
```
|
||||||
#!/usr/bin/env sh
|
#!/usr/bin/env sh
|
||||||
|
10
vestasync.py
10
vestasync.py
@ -221,9 +221,9 @@ def ppush_the_repo(c):
|
|||||||
print(f"Error: {e.result.stderr}")
|
print(f"Error: {e.result.stderr}")
|
||||||
c.run('cd /mnt/data/etc/ && git push -u origin master', hide=True)
|
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"
|
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"chmod +x {user_cmd_file}")
|
||||||
c.run(f"{user_cmd_file}")
|
c.run(f"{user_cmd_file}")
|
||||||
c.run(f"rm {user_cmd_file}")
|
c.run(f"rm {user_cmd_file}")
|
||||||
@ -249,7 +249,8 @@ def device_install(c):
|
|||||||
copy_wb_rule(c)
|
copy_wb_rule(c)
|
||||||
create_automac_systemd(c)
|
create_automac_systemd(c)
|
||||||
create_autogit_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")
|
print("Update vestasync complete\n")
|
||||||
|
|
||||||
def device_update(c):
|
def device_update(c):
|
||||||
@ -300,7 +301,8 @@ def device_restore():
|
|||||||
ppush_the_repo(c)
|
ppush_the_repo(c)
|
||||||
create_autogit_systemd(c)
|
create_autogit_systemd(c)
|
||||||
create_automac_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)
|
reboot(c)
|
||||||
print(f"Restore backup complete (hostname {hostname}), rebooting target device..\n")
|
print(f"Restore backup complete (hostname {hostname}), rebooting target device..\n")
|
||||||
except socket.timeout:
|
except socket.timeout:
|
||||||
|
Loading…
Reference in New Issue
Block a user