zrb 0.26.0__py3-none-any.whl → 0.28.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- zrb/__init__.py +0 -3
- zrb/action/runner.py +0 -2
- zrb/builtin/devtool/install/zsh/install.sh +1 -1
- zrb/builtin/monorepo/_common.sh +15 -0
- zrb/builtin/monorepo/_config.py +2 -2
- zrb/builtin/monorepo/_helper.py +140 -0
- zrb/builtin/monorepo/_task.py +98 -71
- zrb/builtin/monorepo/add-subrepo.sh +22 -0
- zrb/builtin/monorepo/add.py +9 -1
- zrb/builtin/monorepo/pull-monorepo.sh +18 -0
- zrb/builtin/monorepo/pull-subrepo.sh +18 -0
- zrb/builtin/monorepo/pull.py +2 -1
- zrb/builtin/monorepo/push-monorepo.sh +18 -0
- zrb/builtin/monorepo/push-subrepo.sh +18 -0
- zrb/builtin/monorepo/push.py +3 -14
- zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/microservices/start.py +7 -2
- zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/monolith/start.py +7 -2
- zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/remove.py +8 -2
- zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/stop.py +8 -2
- zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/support/start.py +15 -3
- zrb/config/config.py +0 -9
- zrb/helper/asyncio_task.py +19 -6
- zrb/helper/cli.py +0 -1
- zrb/task/base_task/base_task.py +39 -9
- zrb/task/cmd_task.py +9 -10
- zrb/task/docker_compose_start_task.py +30 -27
- zrb/task/docker_compose_task.py +64 -33
- zrb/task/flow_task.py +0 -1
- zrb/task/looper.py +1 -1
- zrb/task/remote_cmd_task.py +55 -18
- zrb/task/rsync_task.py +57 -23
- {zrb-0.26.0.dist-info → zrb-0.28.0.dist-info}/METADATA +2 -2
- {zrb-0.26.0.dist-info → zrb-0.28.0.dist-info}/RECORD +36 -38
- zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/_helper.py +0 -8
- zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/microservices/_helper.py +0 -24
- zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/monolith/_helper.py +0 -22
- zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/support/_helper.py +0 -30
- zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/.generator-version +0 -1
- zrb/shell-scripts/ensure-podman-is-installed.sh +0 -55
- zrb/shell-scripts/rsync-util.sh +0 -12
- zrb/shell-scripts/ssh-util.sh +0 -12
- zrb/task/base_remote_cmd_task.py +0 -354
- {zrb-0.26.0.dist-info → zrb-0.28.0.dist-info}/LICENSE +0 -0
- {zrb-0.26.0.dist-info → zrb-0.28.0.dist-info}/WHEEL +0 -0
- {zrb-0.26.0.dist-info → zrb-0.28.0.dist-info}/entry_points.txt +0 -0
zrb/task/rsync_task.py
CHANGED
@@ -17,9 +17,8 @@ from zrb.task.any_task_event_handler import (
|
|
17
17
|
OnTriggered,
|
18
18
|
OnWaiting,
|
19
19
|
)
|
20
|
-
from zrb.task.base_remote_cmd_task import BaseRemoteCmdTask, RemoteConfig
|
21
20
|
from zrb.task.cmd_task import CmdTask
|
22
|
-
from zrb.task_env.env import Env
|
21
|
+
from zrb.task_env.env import Env, PrivateEnv
|
23
22
|
from zrb.task_env.env_file import EnvFile
|
24
23
|
from zrb.task_group.group import Group
|
25
24
|
from zrb.task_input.any_input import AnyInput
|
@@ -28,8 +27,6 @@ logger.debug(colored("Loading zrb.task.rsync_task", attrs=["dark"]))
|
|
28
27
|
|
29
28
|
_CURRENT_DIR = os.path.dirname(__file__)
|
30
29
|
_SHELL_SCRIPT_DIR = os.path.join(_CURRENT_DIR, "..", "shell-scripts")
|
31
|
-
with open(os.path.join(_SHELL_SCRIPT_DIR, "rsync-util.sh")) as file:
|
32
|
-
_RSYNC_UTIL_SCRIPT = file.read()
|
33
30
|
|
34
31
|
ensure_rsync_is_installed = CmdTask(
|
35
32
|
name="ensure-ssh-is-installed",
|
@@ -39,19 +36,17 @@ ensure_rsync_is_installed = CmdTask(
|
|
39
36
|
os.path.join(_SHELL_SCRIPT_DIR, "ensure-rsync-is-installed.sh"),
|
40
37
|
],
|
41
38
|
preexec_fn=None,
|
39
|
+
should_print_cmd_result=False,
|
40
|
+
should_show_cmd=False,
|
41
|
+
should_show_working_directory=False,
|
42
42
|
)
|
43
43
|
|
44
44
|
|
45
45
|
@typechecked
|
46
|
-
class RsyncTask(
|
46
|
+
class RsyncTask(CmdTask):
|
47
47
|
def __init__(
|
48
48
|
self,
|
49
49
|
name: str,
|
50
|
-
remote_configs: Iterable[RemoteConfig],
|
51
|
-
src: JinjaTemplate,
|
52
|
-
dst: JinjaTemplate,
|
53
|
-
src_is_remote: bool = False,
|
54
|
-
dst_is_remote: bool = True,
|
55
50
|
group: Optional[Group] = None,
|
56
51
|
inputs: Iterable[AnyInput] = [],
|
57
52
|
envs: Iterable[Env] = [],
|
@@ -60,7 +55,17 @@ class RsyncTask(BaseRemoteCmdTask):
|
|
60
55
|
color: Optional[str] = None,
|
61
56
|
description: str = "",
|
62
57
|
executable: Optional[str] = None,
|
63
|
-
|
58
|
+
remote_host: JinjaTemplate = "localhost",
|
59
|
+
remote_port: Union[JinjaTemplate, int] = 22,
|
60
|
+
remote_user: JinjaTemplate = "root",
|
61
|
+
remote_password: JinjaTemplate = "",
|
62
|
+
remote_ssh_key: JinjaTemplate = "",
|
63
|
+
src_path: JinjaTemplate = ".",
|
64
|
+
src_is_remote: bool = False,
|
65
|
+
dst_path: JinjaTemplate = ".",
|
66
|
+
dst_is_remote: bool = True,
|
67
|
+
cwd: Optional[Union[JinjaTemplate, pathlib.Path]] = None,
|
68
|
+
should_render_cwd: bool = True,
|
64
69
|
upstreams: Iterable[AnyTask] = [],
|
65
70
|
fallbacks: Iterable[AnyTask] = [],
|
66
71
|
on_triggered: Optional[OnTriggered] = None,
|
@@ -78,25 +83,24 @@ class RsyncTask(BaseRemoteCmdTask):
|
|
78
83
|
max_error_line: int = 1000,
|
79
84
|
preexec_fn: Optional[Callable[[], Any]] = os.setsid,
|
80
85
|
should_execute: Union[bool, str, Callable[..., bool]] = True,
|
86
|
+
return_upstream_result: bool = False,
|
87
|
+
should_print_cmd_result: bool = True,
|
88
|
+
should_show_cmd: bool = True,
|
89
|
+
should_show_working_directory: bool = True,
|
81
90
|
):
|
82
|
-
|
83
|
-
parsed_dst = self._get_parsed_path(dst_is_remote, dst)
|
84
|
-
cmd = f'auth_rsync "{parsed_src}" "{parsed_dst}"'
|
85
|
-
BaseRemoteCmdTask.__init__(
|
91
|
+
CmdTask.__init__(
|
86
92
|
self,
|
87
93
|
name=name,
|
88
|
-
remote_configs=remote_configs,
|
89
94
|
group=group,
|
90
95
|
inputs=inputs,
|
91
|
-
envs=envs,
|
96
|
+
envs=envs + [PrivateEnv(name="_ZRB_SSH_PASSWORD", default=remote_password)],
|
92
97
|
env_files=env_files,
|
93
98
|
icon=icon,
|
94
99
|
color=color,
|
95
100
|
description=description,
|
96
101
|
executable=executable,
|
97
|
-
pre_cmd=_RSYNC_UTIL_SCRIPT,
|
98
|
-
cmd=cmd,
|
99
102
|
cwd=cwd,
|
103
|
+
should_render_cwd=should_render_cwd,
|
100
104
|
upstreams=[ensure_rsync_is_installed] + upstreams,
|
101
105
|
fallbacks=fallbacks,
|
102
106
|
on_triggered=on_triggered,
|
@@ -114,9 +118,39 @@ class RsyncTask(BaseRemoteCmdTask):
|
|
114
118
|
max_error_line=max_error_line,
|
115
119
|
preexec_fn=preexec_fn,
|
116
120
|
should_execute=should_execute,
|
121
|
+
return_upstream_result=return_upstream_result,
|
122
|
+
should_print_cmd_result=should_print_cmd_result,
|
123
|
+
should_show_cmd=should_show_cmd,
|
124
|
+
should_show_working_directory=should_show_working_directory,
|
117
125
|
)
|
126
|
+
self._remote_host = remote_host
|
127
|
+
self._remote_port = remote_port
|
128
|
+
self._remote_user = remote_user
|
129
|
+
self._remote_password = remote_password
|
130
|
+
self._remote_ssh_key = remote_ssh_key
|
131
|
+
self._src_path = src_path
|
132
|
+
self._src_is_remote = src_is_remote
|
133
|
+
self._dst_path = dst_path
|
134
|
+
self._dst_is_remote = dst_is_remote
|
135
|
+
|
136
|
+
def get_cmd_script(self, *args: Any, **kwargs: Any) -> str:
|
137
|
+
port = self.render_str(self._remote_port)
|
138
|
+
password = self.render_str(self._remote_password)
|
139
|
+
key = self.render_str(self._remote_ssh_key)
|
140
|
+
src = self._get_path(self._src_path, self._src_is_remote)
|
141
|
+
dst = self._get_path(self._dst_path, self._dst_is_remote)
|
142
|
+
if key != "" and password != "":
|
143
|
+
return f'sshpass -p "$_ZRB_SSH_PASSWORD" rsync --mkpath -avz -e "ssh -i {key} -p {port}" {src} {dst}' # noqa
|
144
|
+
if key != "":
|
145
|
+
return f'rsync --mkpath -avz -e "ssh -i {key} -p {port}" {src} {dst}'
|
146
|
+
if password != "":
|
147
|
+
return f'sshpass -p "$_ZRB_SSH_PASSWORD" rsync --mkpath -avz -e "ssh -p {port}" {src} {dst}' # noqa
|
148
|
+
return f'rsync --mkpath -avz -e "ssh -p {port}" {src} {dst}'
|
118
149
|
|
119
|
-
def
|
120
|
-
|
121
|
-
|
122
|
-
|
150
|
+
def _get_path(self, resource_path: str, is_remote: bool) -> str:
|
151
|
+
rendered_path = self.render_str(resource_path)
|
152
|
+
if is_remote:
|
153
|
+
host = self.render_str(self._remote_host)
|
154
|
+
user = self.render_str(self._remote_user)
|
155
|
+
return f"{user}@{host}:{rendered_path}"
|
156
|
+
return rendered_path
|
@@ -1,10 +1,10 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: zrb
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.28.0
|
4
4
|
Summary: A Framework to Enhance Your Workflow
|
5
5
|
Home-page: https://github.com/state-alchemists/zrb
|
6
6
|
License: AGPL-3.0-or-later
|
7
|
-
Keywords: Automation,Task Runner,Code Generator,Low Code
|
7
|
+
Keywords: Automation,Task Runner,Code Generator,Monorepo,Low Code
|
8
8
|
Author: Go Frendi Gunawan
|
9
9
|
Author-email: gofrendiasgard@gmail.com
|
10
10
|
Requires-Python: >=3.10.0,<4.0.0
|
@@ -1,7 +1,7 @@
|
|
1
|
-
zrb/__init__.py,sha256=
|
1
|
+
zrb/__init__.py,sha256=dQs1S6z3XbG1BeQ62YYxc6cUs5ejw9T9ajkPgNVEs34,2875
|
2
2
|
zrb/__main__.py,sha256=-_k0XOahDF-06n41Uly-oUMkZ8XDSxO-WUUImWz6GiA,171
|
3
3
|
zrb/action/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
4
|
-
zrb/action/runner.py,sha256=
|
4
|
+
zrb/action/runner.py,sha256=pSQMtJKP7xb0IZ1X5iGPX0y4ZA8COO7gGQGfjlVKKtc,5140
|
5
5
|
zrb/advertisement.py,sha256=E-8Dv0oPhw0j-bKEc_IsWV9NPUIs24r1Jgp0p0exAMU,664
|
6
6
|
zrb/builtin/__init__.py,sha256=Nw3gZS1S-HKt_LTQuhffZT4NcZAdelJabCSFdkm6E8g,3407
|
7
7
|
zrb/builtin/_helper/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -59,7 +59,7 @@ zrb/builtin/devtool/install/terraform/terraform.py,sha256=jBtBFoSEh6jrDV2_mUOqty
|
|
59
59
|
zrb/builtin/devtool/install/tmux/install.sh,sha256=RsmLzKVzY9O7wBNMc-xE7S1sH0aJDsCiVgEXsRXqQ8w,1229
|
60
60
|
zrb/builtin/devtool/install/tmux/resource/config.sh,sha256=wQCb4Q-mNkxIPOcvpN84X9RUWkGY16u3Vd-pOhVidgg,416
|
61
61
|
zrb/builtin/devtool/install/tmux/tmux.py,sha256=Qvv9mSZhzBtoPRL5zs49G2GdJpY674s8Bt4nFWbIF-o,1322
|
62
|
-
zrb/builtin/devtool/install/zsh/install.sh,sha256=
|
62
|
+
zrb/builtin/devtool/install/zsh/install.sh,sha256=J2GdFuTRo8s33LcFmjKMYpCZ_wZB4iK0aEeL7XtcYyE,1719
|
63
63
|
zrb/builtin/devtool/install/zsh/resource/config.sh,sha256=2ZEmmiu5KS-FSMlj48IDPh5dhx5fnbzri86CtzI5Np0,5068
|
64
64
|
zrb/builtin/devtool/install/zsh/zsh.py,sha256=JJMyNSDt0uMTJppYRT2bWy446D8ArQ8ZRPZLV117s7g,1325
|
65
65
|
zrb/builtin/docker/__init__.py,sha256=H6mkl7hojJYiHArn2Q1ppw9yZC8TxTRnrYajRJcR77Y,142
|
@@ -87,12 +87,19 @@ zrb/builtin/md5/_group.py,sha256=dimqCmJItc7qx7yRm64tL608oMAjOVXRycP7NTSSFi0,100
|
|
87
87
|
zrb/builtin/md5/hash.py,sha256=futO_5AsXHdS5a7vuBLcgnKCpfEO9UeM-EqaIIBPCZE,572
|
88
88
|
zrb/builtin/md5/sum.py,sha256=KZLsXIJrVxvbjyAiVv27-Y2ty-nBRRojsGxXyzQZaYE,688
|
89
89
|
zrb/builtin/monorepo/__init__.py,sha256=AgzIDOcrW4FXxly5SqExyGRo-fIo0ocX_fCScLPDuR0,239
|
90
|
-
zrb/builtin/monorepo/
|
90
|
+
zrb/builtin/monorepo/_common.sh,sha256=HfSIyw_OYGXx0TZzwdLB21fX6sTnZ_45Vf6YXVxxU-k,336
|
91
|
+
zrb/builtin/monorepo/_config.py,sha256=cTKOoDonkVXR-1SGUYtA8d5aUpDkhN4olhPQwfJhV4U,365
|
91
92
|
zrb/builtin/monorepo/_group.py,sha256=idv_8MIE-TCNAvhE0urh7OxTx3qNZbBlE9wYJ-teqa8,115
|
92
|
-
zrb/builtin/monorepo/
|
93
|
-
zrb/builtin/monorepo/
|
94
|
-
zrb/builtin/monorepo/
|
95
|
-
zrb/builtin/monorepo/
|
93
|
+
zrb/builtin/monorepo/_helper.py,sha256=RuK0mkQI73ryixD_iYfp8lxJmrFxkHyFvDThW2fsrF8,4057
|
94
|
+
zrb/builtin/monorepo/_task.py,sha256=1UY8eErrjpykK51UjjIu74lH25jMW8l3k36-eyYk9KI,3869
|
95
|
+
zrb/builtin/monorepo/add-subrepo.sh,sha256=LWyie9_3aCA7OarzDl7HedJnV7OpkkSHUHHPDcToNQ8,426
|
96
|
+
zrb/builtin/monorepo/add.py,sha256=MtPhTEJEdpfRsbdB-hln4hyGzPVWu9kdrmiCxqu0dTs,1580
|
97
|
+
zrb/builtin/monorepo/pull-monorepo.sh,sha256=80mC-FOmIFjhgeGe_s6SzKgf5ZyUwrUsz8O1huTP3Ww,377
|
98
|
+
zrb/builtin/monorepo/pull-subrepo.sh,sha256=7M6haXVkApuS3F1Ndp-jrdRMLbPbSYZUo7ckVAffypI,365
|
99
|
+
zrb/builtin/monorepo/pull.py,sha256=6W9w2QJipn9TYIqaE-tzW_KK1hxPU7oJW0IlH_yPwJA,676
|
100
|
+
zrb/builtin/monorepo/push-monorepo.sh,sha256=qkr6vfIvIKSKCiE1rartU5vahcjP7Ocvrt-zhgc1ZSo,346
|
101
|
+
zrb/builtin/monorepo/push-subrepo.sh,sha256=k-9ZbEEwDOgHn9Jo_CSkZwk4-bkcZm4TUc-e6j8Kvlk,353
|
102
|
+
zrb/builtin/monorepo/push.py,sha256=snKu4ravGFBBxHwLegI_kg65a9sG8bpf7t2T2CanNcE,668
|
96
103
|
zrb/builtin/process/__init__.py,sha256=dWM1zIehY65rkJvEAFvX6HGJHL8kb1gkzaSz0Woay8M,283
|
97
104
|
zrb/builtin/process/_group.py,sha256=KY7iQ_pvqe5iVsRFeLWs-O-xuSyqlTXVj47_TCnu7zQ,118
|
98
105
|
zrb/builtin/process/pid/__init__.py,sha256=Rcb3bYgR_oVNOlaggYjcRipHRehrumZuQyadrguXdR0,293
|
@@ -219,23 +226,19 @@ zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/config
|
|
219
226
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/__init__.py,sha256=UllmGaHqIT4JrsyVN6kQAcSVA32sUdYpBpOQpxmLQ_M,988
|
220
227
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/_env.py,sha256=2ysgQ6yJWb6h3u0tMvNXFgXwbUEE7CJX6k_8VxOOnNg,333
|
221
228
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/_group.py,sha256=WbQq0AprHwudJPP38VpDB0cTnQP1HCZK_xVJY8_D1n0,240
|
222
|
-
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/_helper.py,sha256=uXHHTi3qjmgPd-hBsXdbCjyXHVxl84nZQao1eaQb5xk,280
|
223
229
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/_input.py,sha256=uBXfLqOQxiVn8UGfGhgTbUV_1Se6nNVQZKxF9mpTW6k,246
|
224
230
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/_service_config.py,sha256=lOvwhfIbdMuQ-QYoibG5FMW2U-ZuOWcLd-puWAVcj-A,2048
|
225
231
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/microservices/__init__.py,sha256=ftU92OGyRh2VZr-fkR1rJA-VLxevBlIypHqrlNW3OMc,250
|
226
232
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/microservices/_group.py,sha256=PI6pgBfZRyG6YQqLoEZQLD9TKVZcrn2Yx8wqpunROwo,292
|
227
|
-
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/microservices/
|
228
|
-
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/microservices/start.py,sha256=NHvC5A1A--bM0hQ53Zu1rJMtFUm5UVBwhD4-SJ67L0Y,2216
|
233
|
+
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/microservices/start.py,sha256=h-a72rEk0ZwSVwZ_xXBAqe0Y280ieLUKfxS9yZHXumw,2459
|
229
234
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/monolith/__init__.py,sha256=1ELaHwNeMmFO9Hy9foqsM-EHgesKYlnQsbUI_i_KYiA,230
|
230
235
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/monolith/_group.py,sha256=u-vUVCZ8Q8LIVlw4lpduZYImIpSsNmO5FfUqsGrVFLc,277
|
231
|
-
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/monolith/
|
232
|
-
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/
|
233
|
-
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/
|
234
|
-
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/stop.py,sha256=SAOiJdc2wSOnpzsx5pBtX1qwP2BYbZCT2peqD-8YT4s,994
|
236
|
+
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/monolith/start.py,sha256=9QTneFfh5lxwaiIJrUM6fAhbj38sgevj6ZVjDKzhaKo,2433
|
237
|
+
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/remove.py,sha256=A87V06Du_V4kG1EK9aWlrFAwvazu8ucv9Rak6_Nu1kQ,1016
|
238
|
+
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/stop.py,sha256=rxtG4P4MFVYGhTq2Al6WooGghaQ2xmplXWo_mZXuxHU,1054
|
235
239
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/support/__init__.py,sha256=TKNXysArhYcwaeLWCTrim3U599JXs_IkgKF0y7urYVI,226
|
236
240
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/support/_group.py,sha256=NbgCdPT5lGEd9ce4bid_HuFVp9loDKDA7qA7KfPsowA,274
|
237
|
-
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/support/
|
238
|
-
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/support/start.py,sha256=Q_j94fC3moUi_xxbna6JbCdsUYmlUEg77y58B_FSh1w,1773
|
241
|
+
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/support/start.py,sha256=DK-gEEsxAafI0Ai9viaLABaumJ8QtKctmEdkC2r6pmI,2198
|
239
242
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/destroy.py,sha256=hMwW7c-kRfDAc_ndLJ--1yu4KbPzdhM5bcOq1wpml1A,1161
|
240
243
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/destroy.sh,sha256=Yc-jb01oostiRMtrsTNWJXn_Fee5iDfv16L4DaoklEA,29
|
241
244
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/frontend/__init__.py,sha256=oUAubQE0KGRd04wSURGC87ZRoCl58yPGccRiey7tJBQ,299
|
@@ -271,7 +274,6 @@ zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/monoli
|
|
271
274
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/monolith/start.sh,sha256=KI-PqiOes-xWA2thSW2icD3VEgxRJUxjRmc_3y9mS14,57
|
272
275
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/test.py,sha256=RuZGmP2OTPZcDOuBX5p-j5TizakkDxEClWhB2Fg64M4,1826
|
273
276
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/test.sh,sha256=ibnoS4kV1p-3JREJKlX2UsziP009zHzP9miPxID1tpk,308
|
274
|
-
zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/.generator-version,sha256=7kobEqGURA6fqyUvQGmQgHfJ7qsL3tXgh_8IUo4M7PY,10
|
275
277
|
zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/.gitignore,sha256=YFrq8n_0yn9FT0XqcPVftHmKj31DSh4ftIY8EvQm0ik,53
|
276
278
|
zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/README.md,sha256=mIE-CBlKzx_wEQdGIuiJbzDX_bCC13ckMnOYU8erHpI,15200
|
277
279
|
zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/all-module-disabled.env,sha256=eIbYiufwRJ-artnA7Cw2y4YzGrPw2XtEb-ih_f4tCuw,56
|
@@ -1320,7 +1322,7 @@ zrb/builtin/update.py,sha256=89i_fPUlL27IXczLI7Lr7k4STMpnxyw2je8daCKUTQo,225
|
|
1320
1322
|
zrb/builtin/version.py,sha256=i0pnnLQFLdTwcVqZs6xsGkbAY-IPbmelip7HuZVjgv0,384
|
1321
1323
|
zrb/builtin/watch_changes.py,sha256=Vr__e_T31nnbefcPftvyn78dT3-UXqNRpH0KO-COeKQ,1220
|
1322
1324
|
zrb/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1323
|
-
zrb/config/config.py,sha256=
|
1325
|
+
zrb/config/config.py,sha256=CBzfexBmP5cFPYuOM0SruCT4jWha73qe8YqwV9T8fdM,1625
|
1324
1326
|
zrb/helper/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1325
1327
|
zrb/helper/accessories/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1326
1328
|
zrb/helper/accessories/color.py,sha256=7bj2-K_sn1leXN_C9eeOWXZBfnsBAFOzfirSiM8vCMw,964
|
@@ -1328,9 +1330,9 @@ zrb/helper/accessories/icon.py,sha256=uKm3w5G1fV454MUhz_CZMy48AD99kBV9j2zRlJWzB1
|
|
1328
1330
|
zrb/helper/accessories/name.py,sha256=e1uvU3MzuvDb5j6YIWBA048y4qeM-LfrxRKWlMehliE,1638
|
1329
1331
|
zrb/helper/accessories/untyped_color.py,sha256=4wRbHSClbCzPRWtW-Cy2agOMozANVi7u4p8lMXMSuJg,194
|
1330
1332
|
zrb/helper/advertisement.py,sha256=GOaCtWYL9Oj_tAg4jqsCuFsdinHaOSH_6d57y8BbsVU,912
|
1331
|
-
zrb/helper/asyncio_task.py,sha256=
|
1333
|
+
zrb/helper/asyncio_task.py,sha256=UcE2axvWDh8GCFYtPUZCrSZ8VfRS-lsffyDEupjK1-8,1021
|
1332
1334
|
zrb/helper/callable.py,sha256=usatPKPkK_67G9dWreaGXskOaGHd_hE8MiTWAUhfojE,563
|
1333
|
-
zrb/helper/cli.py,sha256=
|
1335
|
+
zrb/helper/cli.py,sha256=cb82aZCX5NoOHQNTx3wtdKOAQJP79ky4HA6w0VjVBh0,2603
|
1334
1336
|
zrb/helper/codemod/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1335
1337
|
zrb/helper/codemod/add_argument_to_function.py,sha256=Xh5Tlb4iO3cv4dRR12ms9kf0j-atVSnCh88TuqCof8I,1435
|
1336
1338
|
zrb/helper/codemod/add_argument_to_function_call.py,sha256=dFFqQ885gG_ZCBgax6sjkWx7s7cIk1amLhTC0Ge_zZo,1186
|
@@ -1377,18 +1379,14 @@ zrb/helper/util.py,sha256=s3Wdg-hYbhkttW7o2-C8erQqMuxStSpR8f2psgZzP68,3836
|
|
1377
1379
|
zrb/runner.py,sha256=9huyeIi8gqbMQV3u6CRBeB8s9WVynECR0jECuCAYm9c,261
|
1378
1380
|
zrb/shell-scripts/_common-util.sh,sha256=8zvSAbDp8z4JWxMT6s6bSnNBCfCB88gLLpK5LOhyPBg,229
|
1379
1381
|
zrb/shell-scripts/ensure-docker-is-installed.sh,sha256=8CL5gYs428LPWcF43X-1O1i2YyWAOGzXTKZttiS9J1Q,2999
|
1380
|
-
zrb/shell-scripts/ensure-podman-is-installed.sh,sha256=RvLLQIBN5cfLEsFkTpomgl_PxJZ6z0Wl0VGGtjIA5JM,1529
|
1381
1382
|
zrb/shell-scripts/ensure-rsync-is-installed.sh,sha256=ffr8avoCUSoDQkEBWmeelgn-EtF9reQTaM0wfW6B0hc,1146
|
1382
1383
|
zrb/shell-scripts/ensure-ssh-is-installed.sh,sha256=w5pCzsbEa3bnxT07q6gX0nWn-7HXsMiwBRrg7dMD57w,2414
|
1383
1384
|
zrb/shell-scripts/notify.ps1,sha256=6_xPoIwuxARpYljcjVV-iRJS3gJqGfx-B6kj719cJ9o,843
|
1384
|
-
zrb/shell-scripts/rsync-util.sh,sha256=QzdhSBvUNMxB4U2B4m0Dxg9czGckRjB7Vk4A1ObG0-k,353
|
1385
|
-
zrb/shell-scripts/ssh-util.sh,sha256=9lXDzw6oO8HuA4vdbfps_uQMMwKyNYX9fZkZgpK52g8,401
|
1386
1385
|
zrb/task/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1387
1386
|
zrb/task/any_task.py,sha256=SlAp6LY-8TGopaQm3eZD3ZEx3wxvCff8UfcnYyu-aiY,39344
|
1388
1387
|
zrb/task/any_task_event_handler.py,sha256=ay4v7eXatF4sCiXpUYaHVJZljpnKlvBbFIwvZqXW8Mo,541
|
1389
|
-
zrb/task/base_remote_cmd_task.py,sha256=EhAT7grnIxFeMfwm8FV6GF6n0kOYESAyIIVzqgZBRBg,12324
|
1390
1388
|
zrb/task/base_task/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1391
|
-
zrb/task/base_task/base_task.py,sha256=
|
1389
|
+
zrb/task/base_task/base_task.py,sha256=iieOSoDvKVJpDpTH1LdO-uA1yBPRHxMDPyEgS0wKwmc,21434
|
1392
1390
|
zrb/task/base_task/component/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1393
1391
|
zrb/task/base_task/component/base_task_model.py,sha256=EuTWvY54mD_ATy4-VFZw4uCOu3Mfe8hgZikwTnIjmkY,10381
|
1394
1392
|
zrb/task/base_task/component/common_task_model.py,sha256=X_Ubu5kNycQJ-dFiLMARvC6GWQ9pIjBCdxh3MVelc-A,13544
|
@@ -1396,22 +1394,22 @@ zrb/task/base_task/component/pid_model.py,sha256=RjJIqOpavucDssnd3q3gT4q8QnP8I9S
|
|
1396
1394
|
zrb/task/base_task/component/renderer.py,sha256=xxcMbHhWPMUgAO3DWec_E-OeqlCKtwCBGFzLoc5g8BE,4484
|
1397
1395
|
zrb/task/base_task/component/trackers.py,sha256=3G4dMhh1kVaJrmRwiGzWQSbr1fB-w9xXjBKz_vRifYc,2063
|
1398
1396
|
zrb/task/checker.py,sha256=mh_2ajZqpNdJQ8AFVQ6ZArYtBUOXST3aZSisINuEivk,3400
|
1399
|
-
zrb/task/cmd_task.py,sha256=
|
1397
|
+
zrb/task/cmd_task.py,sha256=BcWXiikCQqFHIYs-PPSnvFTM10HKntj76h3wCE6sqKs,14701
|
1400
1398
|
zrb/task/decorator.py,sha256=SuajollezbwiSOs29bv8A6PmFcFs_RH4pr4TPcQPDHM,3081
|
1401
|
-
zrb/task/docker_compose_start_task.py,sha256=
|
1402
|
-
zrb/task/docker_compose_task.py,sha256=
|
1403
|
-
zrb/task/flow_task.py,sha256=
|
1399
|
+
zrb/task/docker_compose_start_task.py,sha256=XjE2bV9bnqaMhgtElR-gC1as1uM9_-ozX7qzubyteQY,5453
|
1400
|
+
zrb/task/docker_compose_task.py,sha256=6nywyIMrOuQMJ5bsDaWEyUm91NkIP6HL0nnmKI_IEf8,17081
|
1401
|
+
zrb/task/flow_task.py,sha256=wkvvUCrt6n1ul-o3STCPMdrlBuGBrNCRgtRzGyXir9o,5079
|
1404
1402
|
zrb/task/http_checker.py,sha256=gXqBlEStMnIhzmQ7FX9Zo-nG3-wsiVEML8IOJiSG5JI,5705
|
1405
|
-
zrb/task/looper.py,sha256=
|
1403
|
+
zrb/task/looper.py,sha256=tYMG9rTMEd5-FP0CIBfbcWfahsg6W-ED66AV5C-kCrk,1441
|
1406
1404
|
zrb/task/notifier.py,sha256=xjqT5Vydr_0cc1m4jA-odhHMZg6CSGciFCs0rhVkvPM,6265
|
1407
1405
|
zrb/task/parallel.py,sha256=Xz9az51hHfkeEmOEo3Xb-B7GPoOT_DxuakpAfCbzzV0,1176
|
1408
1406
|
zrb/task/path_checker.py,sha256=xkOpxlLUaEXlsiWh1o-ghqQNWYadXvTl3QV4yeIC2Rc,4677
|
1409
1407
|
zrb/task/path_watcher.py,sha256=aKWhT7Kuc_UJMr8SSY7ZZym-_rV526tEeIaKRRz3XYU,7419
|
1410
1408
|
zrb/task/port_checker.py,sha256=SG2yrAxdJgxdR6xymviB48K529o3Rnq_WhDJZDKgAQg,4605
|
1411
1409
|
zrb/task/recurring_task.py,sha256=wtZhi0DCDdVM7ecIgoXghQPTOQemrEvCY8xDJoaG1mo,7444
|
1412
|
-
zrb/task/remote_cmd_task.py,sha256
|
1410
|
+
zrb/task/remote_cmd_task.py,sha256=-kNkRVSIDrNJcVRBfMpc-fXYOHh6Fs2PTsiOzWwimTM,5793
|
1413
1411
|
zrb/task/resource_maker.py,sha256=e6nmFJsVHHo8_sW5F-lBfkO_2RszrlXNoubh4rwM6UY,7644
|
1414
|
-
zrb/task/rsync_task.py,sha256=
|
1412
|
+
zrb/task/rsync_task.py,sha256=NdfKtendGyH9Kg17hEsavl1NoeIJ04FTii2OaXg_S6g,6022
|
1415
1413
|
zrb/task/server.py,sha256=zC8swQOu_3YkRtGFXuRGZqz6yEu--ZhNRgNwbR44uUA,6741
|
1416
1414
|
zrb/task/task.py,sha256=iHDyUMUh1uVGlMCQdVewdT3epCOHKNRKblC3G1WSKS0,2493
|
1417
1415
|
zrb/task/time_watcher.py,sha256=v01whCMTvul_vraVccy8A9rDBk-CL7HFvPOu8g1BC5s,5130
|
@@ -1434,8 +1432,8 @@ zrb/task_input/multiline_input.py,sha256=KNto5k5X1C6KE_A-vX0OjpQyjgCRJ6BR2PwHXNQ
|
|
1434
1432
|
zrb/task_input/password_input.py,sha256=95NlJ9xIq7z_evpAyR2XsBpeuWpBXd2Ezn3P7oDOttk,4360
|
1435
1433
|
zrb/task_input/str_input.py,sha256=0nje7vI9fs_xqQBbmKB8Yn7wevlWp9Qebv7f8-GmiXs,4350
|
1436
1434
|
zrb/task_input/task_input.py,sha256=WTj_qIQyRs-04-VotjNTcVyIuf6b2afInVoCQHoRmr0,2327
|
1437
|
-
zrb-0.
|
1438
|
-
zrb-0.
|
1439
|
-
zrb-0.
|
1440
|
-
zrb-0.
|
1441
|
-
zrb-0.
|
1435
|
+
zrb-0.28.0.dist-info/LICENSE,sha256=WfnGCl8G60EYOPAEkuc8C9m9pdXWDe08NsKj3TBbxsM,728
|
1436
|
+
zrb-0.28.0.dist-info/METADATA,sha256=8s4Xo9naikz0tPFxZQNrd56DsKyZnP-uwENR26YzldQ,17094
|
1437
|
+
zrb-0.28.0.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
|
1438
|
+
zrb-0.28.0.dist-info/entry_points.txt,sha256=xTgXc1kBKYhJHEujdaSPHUcJT3-hbyP1mLgwkv-5sSk,40
|
1439
|
+
zrb-0.28.0.dist-info/RECORD,,
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/_helper.py
DELETED
@@ -1,8 +0,0 @@
|
|
1
|
-
from typing import Any
|
2
|
-
|
3
|
-
|
4
|
-
def activate_all_compose_profile(*args: Any, **kwargs: Any) -> str:
|
5
|
-
compose_profile_str = ",".join(
|
6
|
-
["monitoring", "monolith", "microservices", "kafka", "postgres", "rabbitmq"]
|
7
|
-
)
|
8
|
-
return f"export COMPOSE_PROFILES={compose_profile_str}"
|
@@ -1,24 +0,0 @@
|
|
1
|
-
from typing import Any
|
2
|
-
|
3
|
-
from ..support._helper import get_support_container_compose_profiles
|
4
|
-
|
5
|
-
|
6
|
-
def activate_microservices_compose_profile(*args: Any, **kwargs: Any) -> str:
|
7
|
-
compose_profiles = _get_microservices_container_compose_profiles(*args, **kwargs)
|
8
|
-
compose_profile_str = ",".join(compose_profiles)
|
9
|
-
return f"export COMPOSE_PROFILES={compose_profile_str}"
|
10
|
-
|
11
|
-
|
12
|
-
def should_start_microservices_container(*args: Any, **kwargs: Any) -> bool:
|
13
|
-
if not kwargs.get("local_snake_zrb_app_name", True):
|
14
|
-
return False
|
15
|
-
compose_profiles = _get_microservices_container_compose_profiles(*args, **kwargs)
|
16
|
-
return len(compose_profiles) > 0
|
17
|
-
|
18
|
-
|
19
|
-
def _get_microservices_container_compose_profiles(
|
20
|
-
*args: Any, **kwargs: Any
|
21
|
-
) -> list[str]:
|
22
|
-
compose_profiles = get_support_container_compose_profiles(*args, **kwargs)
|
23
|
-
compose_profiles.append("microservices")
|
24
|
-
return compose_profiles
|
@@ -1,22 +0,0 @@
|
|
1
|
-
from typing import Any
|
2
|
-
|
3
|
-
from ..support._helper import get_support_container_compose_profiles
|
4
|
-
|
5
|
-
|
6
|
-
def activate_monolith_compose_profile(*args: Any, **kwargs: Any) -> str:
|
7
|
-
compose_profiles = _get_monolith_container_compose_profiles(*args, **kwargs)
|
8
|
-
compose_profile_str = ",".join(compose_profiles)
|
9
|
-
return f"export COMPOSE_PROFILES={compose_profile_str}"
|
10
|
-
|
11
|
-
|
12
|
-
def should_start_monolith_container(*args: Any, **kwargs: Any) -> bool:
|
13
|
-
if not kwargs.get("local_snake_zrb_app_name", True):
|
14
|
-
return False
|
15
|
-
compose_profiles = _get_monolith_container_compose_profiles(*args, **kwargs)
|
16
|
-
return len(compose_profiles) > 0
|
17
|
-
|
18
|
-
|
19
|
-
def _get_monolith_container_compose_profiles(*args: Any, **kwargs: Any) -> list[str]:
|
20
|
-
compose_profiles = get_support_container_compose_profiles(*args, **kwargs)
|
21
|
-
compose_profiles.append("monolith")
|
22
|
-
return compose_profiles
|
@@ -1,30 +0,0 @@
|
|
1
|
-
from typing import Any
|
2
|
-
|
3
|
-
from zrb import Task
|
4
|
-
|
5
|
-
|
6
|
-
def activate_support_compose_profile(*args: Any, **kwargs: Any) -> str:
|
7
|
-
compose_profiles = get_support_container_compose_profiles(*args, **kwargs)
|
8
|
-
compose_profile_str = ",".join(compose_profiles)
|
9
|
-
return f"export COMPOSE_PROFILES={compose_profile_str}"
|
10
|
-
|
11
|
-
|
12
|
-
def should_start_support_container(*args: Any, **kwargs: Any) -> bool:
|
13
|
-
if not kwargs.get("local_snake_zrb_app_name", True):
|
14
|
-
return False
|
15
|
-
compose_profiles = get_support_container_compose_profiles(*args, **kwargs)
|
16
|
-
return len(compose_profiles) > 0
|
17
|
-
|
18
|
-
|
19
|
-
def get_support_container_compose_profiles(*args: Any, **kwargs: Any) -> list[str]:
|
20
|
-
task: Task = kwargs.get("_task")
|
21
|
-
env_map = task.get_env_map()
|
22
|
-
compose_profiles: list[str] = []
|
23
|
-
if env_map.get("APP_DB_CONNECTION", "").startswith("postgresql"):
|
24
|
-
compose_profiles.append("postgres")
|
25
|
-
broker_type = env_map.get("APP_BROKER_TYPE", "rabbitmq")
|
26
|
-
if broker_type in ["rabbitmq", "kafka"]:
|
27
|
-
compose_profiles.append(broker_type)
|
28
|
-
if kwargs.get("enable_snake_zrb_app_name_monitoring", False):
|
29
|
-
compose_profiles.append("monitoring")
|
30
|
-
return compose_profiles
|
@@ -1 +0,0 @@
|
|
1
|
-
zrbVersion
|
@@ -1,55 +0,0 @@
|
|
1
|
-
set -e
|
2
|
-
if command_exists podman
|
3
|
-
then
|
4
|
-
log_info "Podman is already installed."
|
5
|
-
else
|
6
|
-
log_info "Installing Podman..."
|
7
|
-
if [ "$OS_TYPE" = "Darwin" ]
|
8
|
-
then
|
9
|
-
if command_exists brew
|
10
|
-
then
|
11
|
-
brew install --cask podman
|
12
|
-
log_info "Please start Podman before proceeding."
|
13
|
-
else
|
14
|
-
log_info "Homebrew not found. Please install Homebrew and try again."
|
15
|
-
exit 1
|
16
|
-
fi
|
17
|
-
elif [ "$OS_TYPE" = "Linux" ]
|
18
|
-
then
|
19
|
-
if command_exists apt
|
20
|
-
then
|
21
|
-
try_sudo apt update
|
22
|
-
try_sudo apt install -y podman
|
23
|
-
elif command_exists yum
|
24
|
-
then
|
25
|
-
try_sudo yum install -y podman
|
26
|
-
elif command_exists dnf
|
27
|
-
then
|
28
|
-
try_sudo dnf install -y podman
|
29
|
-
elif command_exists pacman
|
30
|
-
then
|
31
|
-
try_sudo pacman -Syu --noconfirm podman
|
32
|
-
else
|
33
|
-
log_info "No known package manager found. Please install Podman manually."
|
34
|
-
exit 1
|
35
|
-
fi
|
36
|
-
else
|
37
|
-
log_info "Unsupported OS type. Please install Podman manually."
|
38
|
-
exit 1
|
39
|
-
fi
|
40
|
-
fi
|
41
|
-
|
42
|
-
if ! command_exists podman-compose
|
43
|
-
then
|
44
|
-
log_info "Installing Podman Compose plugin..."
|
45
|
-
pip install podman-compose
|
46
|
-
fi
|
47
|
-
|
48
|
-
# Check Podman Compose plugin installation
|
49
|
-
if command_exists podman && command_exists podman-compose
|
50
|
-
then
|
51
|
-
log_info "Podman Compose plugin is already installed."
|
52
|
-
else
|
53
|
-
log_info "Podman Compose plugin is not installed or podman is not running. Please check your installation."
|
54
|
-
exit 1
|
55
|
-
fi
|
zrb/shell-scripts/rsync-util.sh
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
set -e
|
2
|
-
auth_rsync(){
|
3
|
-
if [ "$_CONFIG_SSH_KEY" != "" ]
|
4
|
-
then
|
5
|
-
rsync --mkpath -avz -e "ssh -i $_CONFIG_SSH_KEY -p $_CONFIG_PORT" $@
|
6
|
-
elif [ "$_CONFIG_PASSWORD" != "" ]
|
7
|
-
then
|
8
|
-
sshpass -p "$_CONFIG_PASSWORD" rsync --mkpath -avz -e "ssh -p $_CONFIG_PORT" $@
|
9
|
-
else
|
10
|
-
rsync --mkpath -avz -e "ssh -p $_CONFIG_PORT" $@
|
11
|
-
fi
|
12
|
-
}
|
zrb/shell-scripts/ssh-util.sh
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
set -e
|
2
|
-
auth_ssh(){
|
3
|
-
if [ "$_CONFIG_SSH_KEY" != "" ]
|
4
|
-
then
|
5
|
-
ssh -t -p "$_CONFIG_PORT" -i "$_CONFIG_SSH_KEY" "${_CONFIG_USER}@${_CONFIG_HOST}" "$1"
|
6
|
-
elif [ "$_CONFIG_PASSWORD" != "" ]
|
7
|
-
then
|
8
|
-
sshpass -p "$_CONFIG_PASSWORD" ssh -t -p "$_CONFIG_PORT" "${_CONFIG_USER}@${_CONFIG_HOST}" "$1"
|
9
|
-
else
|
10
|
-
ssh -t -p "$_CONFIG_PORT" "${_CONFIG_USER}@${_CONFIG_HOST}" "$1"
|
11
|
-
fi
|
12
|
-
}
|