zrb 0.26.2__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/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 +15 -5
- 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/looper.py +1 -1
- zrb/task/remote_cmd_task.py +55 -18
- zrb/task/rsync_task.py +57 -23
- {zrb-0.26.2.dist-info → zrb-0.28.0.dist-info}/METADATA +2 -2
- {zrb-0.26.2.dist-info → zrb-0.28.0.dist-info}/RECORD +22 -31
- 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.2.dist-info → zrb-0.28.0.dist-info}/LICENSE +0 -0
- {zrb-0.26.2.dist-info → zrb-0.28.0.dist-info}/WHEEL +0 -0
- {zrb-0.26.2.dist-info → zrb-0.28.0.dist-info}/entry_points.txt +0 -0
zrb/task/remote_cmd_task.py
CHANGED
@@ -6,6 +6,7 @@ from typing import Any, Optional, Union
|
|
6
6
|
from zrb.helper.accessories.color import colored
|
7
7
|
from zrb.helper.log import logger
|
8
8
|
from zrb.helper.typecheck import typechecked
|
9
|
+
from zrb.helper.typing import JinjaTemplate
|
9
10
|
from zrb.task.any_task import AnyTask
|
10
11
|
from zrb.task.any_task_event_handler import (
|
11
12
|
OnFailed,
|
@@ -16,9 +17,8 @@ from zrb.task.any_task_event_handler import (
|
|
16
17
|
OnTriggered,
|
17
18
|
OnWaiting,
|
18
19
|
)
|
19
|
-
from zrb.task.base_remote_cmd_task import BaseRemoteCmdTask, RemoteConfig
|
20
20
|
from zrb.task.cmd_task import CmdTask, CmdVal
|
21
|
-
from zrb.task_env.env import Env
|
21
|
+
from zrb.task_env.env import Env, PrivateEnv
|
22
22
|
from zrb.task_env.env_file import EnvFile
|
23
23
|
from zrb.task_group.group import Group
|
24
24
|
from zrb.task_input.any_input import AnyInput
|
@@ -27,8 +27,6 @@ logger.debug(colored("Loading zrb.task.remote_cmd_task", attrs=["dark"]))
|
|
27
27
|
|
28
28
|
_CURRENT_DIR = os.path.dirname(__file__)
|
29
29
|
_SHELL_SCRIPT_DIR = os.path.join(_CURRENT_DIR, "..", "shell-scripts")
|
30
|
-
with open(os.path.join(_SHELL_SCRIPT_DIR, "ssh-util.sh")) as file:
|
31
|
-
_SSH_UTIL_SCRIPT = file.read()
|
32
30
|
|
33
31
|
ensure_ssh_is_installed = CmdTask(
|
34
32
|
name="ensure-ssh-is-installed",
|
@@ -37,15 +35,17 @@ ensure_ssh_is_installed = CmdTask(
|
|
37
35
|
os.path.join(_SHELL_SCRIPT_DIR, "ensure-ssh-is-installed.sh"),
|
38
36
|
],
|
39
37
|
preexec_fn=None,
|
38
|
+
should_print_cmd_result=False,
|
39
|
+
should_show_cmd=False,
|
40
|
+
should_show_working_directory=False,
|
40
41
|
)
|
41
42
|
|
42
43
|
|
43
44
|
@typechecked
|
44
|
-
class RemoteCmdTask(
|
45
|
+
class RemoteCmdTask(CmdTask):
|
45
46
|
def __init__(
|
46
47
|
self,
|
47
48
|
name: str,
|
48
|
-
remote_configs: Iterable[RemoteConfig],
|
49
49
|
group: Optional[Group] = None,
|
50
50
|
inputs: Iterable[AnyInput] = [],
|
51
51
|
envs: Iterable[Env] = [],
|
@@ -54,9 +54,15 @@ class RemoteCmdTask(BaseRemoteCmdTask):
|
|
54
54
|
color: Optional[str] = None,
|
55
55
|
description: str = "",
|
56
56
|
executable: Optional[str] = None,
|
57
|
+
remote_host: JinjaTemplate = "localhost",
|
58
|
+
remote_port: Union[JinjaTemplate, int] = 22,
|
59
|
+
remote_user: JinjaTemplate = "root",
|
60
|
+
remote_password: JinjaTemplate = "",
|
61
|
+
remote_ssh_key: JinjaTemplate = "",
|
57
62
|
cmd: CmdVal = "",
|
58
63
|
cmd_path: CmdVal = "",
|
59
64
|
cwd: Optional[Union[str, pathlib.Path]] = None,
|
65
|
+
should_render_cwd: bool = True,
|
60
66
|
upstreams: Iterable[AnyTask] = [],
|
61
67
|
fallbacks: Iterable[AnyTask] = [],
|
62
68
|
on_triggered: Optional[OnTriggered] = None,
|
@@ -74,31 +80,26 @@ class RemoteCmdTask(BaseRemoteCmdTask):
|
|
74
80
|
max_error_line: int = 1000,
|
75
81
|
preexec_fn: Optional[Callable[[], Any]] = os.setsid,
|
76
82
|
should_execute: Union[bool, str, Callable[..., bool]] = True,
|
83
|
+
return_upstream_result: bool = False,
|
84
|
+
should_print_cmd_result: bool = True,
|
85
|
+
should_show_cmd: bool = True,
|
86
|
+
should_show_working_directory: bool = True,
|
77
87
|
):
|
78
|
-
|
79
|
-
[
|
80
|
-
_SSH_UTIL_SCRIPT,
|
81
|
-
"_SCRIPT=\"$(cat <<'ENDSCRIPT'",
|
82
|
-
]
|
83
|
-
)
|
84
|
-
post_cmd = "\n".join(["ENDSCRIPT", ')"', 'auth_ssh "$_SCRIPT"'])
|
85
|
-
BaseRemoteCmdTask.__init__(
|
88
|
+
CmdTask.__init__(
|
86
89
|
self,
|
87
90
|
name=name,
|
88
|
-
remote_configs=remote_configs,
|
89
91
|
group=group,
|
90
92
|
inputs=inputs,
|
91
|
-
envs=envs,
|
93
|
+
envs=envs + [PrivateEnv(name="_ZRB_SSH_PASSWORD", default=remote_password)],
|
92
94
|
env_files=env_files,
|
93
95
|
icon=icon,
|
94
96
|
color=color,
|
95
97
|
description=description,
|
96
98
|
executable=executable,
|
97
|
-
pre_cmd=pre_cmd,
|
98
99
|
cmd=cmd,
|
99
100
|
cmd_path=cmd_path,
|
100
|
-
post_cmd=post_cmd,
|
101
101
|
cwd=cwd,
|
102
|
+
should_render_cwd=should_render_cwd,
|
102
103
|
upstreams=[ensure_ssh_is_installed] + upstreams,
|
103
104
|
fallbacks=fallbacks,
|
104
105
|
on_triggered=on_triggered,
|
@@ -116,4 +117,40 @@ class RemoteCmdTask(BaseRemoteCmdTask):
|
|
116
117
|
max_error_line=max_error_line,
|
117
118
|
preexec_fn=preexec_fn,
|
118
119
|
should_execute=should_execute,
|
120
|
+
return_upstream_result=return_upstream_result,
|
121
|
+
should_print_cmd_result=should_print_cmd_result,
|
122
|
+
should_show_cmd=should_show_cmd,
|
123
|
+
should_show_working_directory=should_show_working_directory,
|
124
|
+
)
|
125
|
+
self._remote_host = remote_host
|
126
|
+
self._remote_port = remote_port
|
127
|
+
self._remote_user = remote_user
|
128
|
+
self._remote_password = remote_password
|
129
|
+
self._remote_ssh_key = remote_ssh_key
|
130
|
+
|
131
|
+
def get_cmd_script(self, *args: Any, **kwargs: Any) -> str:
|
132
|
+
cmd_script = self._create_cmd_script(self._cmd_path, self._cmd, *args, **kwargs)
|
133
|
+
cmd_script = "\n".join(
|
134
|
+
[
|
135
|
+
"_SCRIPT=$(cat << 'ENDSCRIPT'",
|
136
|
+
cmd_script,
|
137
|
+
"ENDSCRIPT",
|
138
|
+
")",
|
139
|
+
]
|
119
140
|
)
|
141
|
+
ssh_command = self._get_ssh_command()
|
142
|
+
return "\n".join([cmd_script, ssh_command])
|
143
|
+
|
144
|
+
def _get_ssh_command(self) -> str:
|
145
|
+
host = self.render_str(self._remote_host)
|
146
|
+
port = self.render_str(self._remote_port)
|
147
|
+
user = self.render_str(self._remote_user)
|
148
|
+
password = self.render_str(self._remote_password)
|
149
|
+
key = self.render_str(self._remote_ssh_key)
|
150
|
+
if key != "" and password != "":
|
151
|
+
return f'sshpass -p "$_ZRB_SSH_PASSWORD" ssh -t -p "{port}" -i "{key}" "{user}@{host}" "$_SCRIPT"' # noqa
|
152
|
+
if key != "":
|
153
|
+
return f'ssh -t -p "{port}" -i "{key}" "{user}@{host}" "$_SCRIPT"'
|
154
|
+
if password != "":
|
155
|
+
return f'sshpass -p "$_ZRB_SSH_PASSWORD" ssh -t -p "{port}" "{user}@{host}" "$_SCRIPT"' # noqa
|
156
|
+
return f'ssh -t -p "{port}" "{user}@{host}" "$_SCRIPT"'
|
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
|
@@ -226,23 +226,19 @@ zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/config
|
|
226
226
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/__init__.py,sha256=UllmGaHqIT4JrsyVN6kQAcSVA32sUdYpBpOQpxmLQ_M,988
|
227
227
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/_env.py,sha256=2ysgQ6yJWb6h3u0tMvNXFgXwbUEE7CJX6k_8VxOOnNg,333
|
228
228
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/_group.py,sha256=WbQq0AprHwudJPP38VpDB0cTnQP1HCZK_xVJY8_D1n0,240
|
229
|
-
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/_helper.py,sha256=uXHHTi3qjmgPd-hBsXdbCjyXHVxl84nZQao1eaQb5xk,280
|
230
229
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/_input.py,sha256=uBXfLqOQxiVn8UGfGhgTbUV_1Se6nNVQZKxF9mpTW6k,246
|
231
230
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/_service_config.py,sha256=lOvwhfIbdMuQ-QYoibG5FMW2U-ZuOWcLd-puWAVcj-A,2048
|
232
231
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/microservices/__init__.py,sha256=ftU92OGyRh2VZr-fkR1rJA-VLxevBlIypHqrlNW3OMc,250
|
233
232
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/microservices/_group.py,sha256=PI6pgBfZRyG6YQqLoEZQLD9TKVZcrn2Yx8wqpunROwo,292
|
234
|
-
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/microservices/
|
235
|
-
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
|
236
234
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/monolith/__init__.py,sha256=1ELaHwNeMmFO9Hy9foqsM-EHgesKYlnQsbUI_i_KYiA,230
|
237
235
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/monolith/_group.py,sha256=u-vUVCZ8Q8LIVlw4lpduZYImIpSsNmO5FfUqsGrVFLc,277
|
238
|
-
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/monolith/
|
239
|
-
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/
|
240
|
-
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/
|
241
|
-
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
|
242
239
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/support/__init__.py,sha256=TKNXysArhYcwaeLWCTrim3U599JXs_IkgKF0y7urYVI,226
|
243
240
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/support/_group.py,sha256=NbgCdPT5lGEd9ce4bid_HuFVp9loDKDA7qA7KfPsowA,274
|
244
|
-
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/container/support/
|
245
|
-
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
|
246
242
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/destroy.py,sha256=hMwW7c-kRfDAc_ndLJ--1yu4KbPzdhM5bcOq1wpml1A,1161
|
247
243
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/destroy.sh,sha256=Yc-jb01oostiRMtrsTNWJXn_Fee5iDfv16L4DaoklEA,29
|
248
244
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/frontend/__init__.py,sha256=oUAubQE0KGRd04wSURGC87ZRoCl58yPGccRiey7tJBQ,299
|
@@ -278,7 +274,6 @@ zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/monoli
|
|
278
274
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/monolith/start.sh,sha256=KI-PqiOes-xWA2thSW2icD3VEgxRJUxjRmc_3y9mS14,57
|
279
275
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/test.py,sha256=RuZGmP2OTPZcDOuBX5p-j5TizakkDxEClWhB2Fg64M4,1826
|
280
276
|
zrb/builtin/project/add/fastapp/app/template/_automate/snake_zrb_app_name/test.sh,sha256=ibnoS4kV1p-3JREJKlX2UsziP009zHzP9miPxID1tpk,308
|
281
|
-
zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/.generator-version,sha256=7kobEqGURA6fqyUvQGmQgHfJ7qsL3tXgh_8IUo4M7PY,10
|
282
277
|
zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/.gitignore,sha256=YFrq8n_0yn9FT0XqcPVftHmKj31DSh4ftIY8EvQm0ik,53
|
283
278
|
zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/README.md,sha256=mIE-CBlKzx_wEQdGIuiJbzDX_bCC13ckMnOYU8erHpI,15200
|
284
279
|
zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/all-module-disabled.env,sha256=eIbYiufwRJ-artnA7Cw2y4YzGrPw2XtEb-ih_f4tCuw,56
|
@@ -1327,7 +1322,7 @@ zrb/builtin/update.py,sha256=89i_fPUlL27IXczLI7Lr7k4STMpnxyw2je8daCKUTQo,225
|
|
1327
1322
|
zrb/builtin/version.py,sha256=i0pnnLQFLdTwcVqZs6xsGkbAY-IPbmelip7HuZVjgv0,384
|
1328
1323
|
zrb/builtin/watch_changes.py,sha256=Vr__e_T31nnbefcPftvyn78dT3-UXqNRpH0KO-COeKQ,1220
|
1329
1324
|
zrb/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1330
|
-
zrb/config/config.py,sha256=
|
1325
|
+
zrb/config/config.py,sha256=CBzfexBmP5cFPYuOM0SruCT4jWha73qe8YqwV9T8fdM,1625
|
1331
1326
|
zrb/helper/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1332
1327
|
zrb/helper/accessories/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1333
1328
|
zrb/helper/accessories/color.py,sha256=7bj2-K_sn1leXN_C9eeOWXZBfnsBAFOzfirSiM8vCMw,964
|
@@ -1335,7 +1330,7 @@ zrb/helper/accessories/icon.py,sha256=uKm3w5G1fV454MUhz_CZMy48AD99kBV9j2zRlJWzB1
|
|
1335
1330
|
zrb/helper/accessories/name.py,sha256=e1uvU3MzuvDb5j6YIWBA048y4qeM-LfrxRKWlMehliE,1638
|
1336
1331
|
zrb/helper/accessories/untyped_color.py,sha256=4wRbHSClbCzPRWtW-Cy2agOMozANVi7u4p8lMXMSuJg,194
|
1337
1332
|
zrb/helper/advertisement.py,sha256=GOaCtWYL9Oj_tAg4jqsCuFsdinHaOSH_6d57y8BbsVU,912
|
1338
|
-
zrb/helper/asyncio_task.py,sha256=
|
1333
|
+
zrb/helper/asyncio_task.py,sha256=UcE2axvWDh8GCFYtPUZCrSZ8VfRS-lsffyDEupjK1-8,1021
|
1339
1334
|
zrb/helper/callable.py,sha256=usatPKPkK_67G9dWreaGXskOaGHd_hE8MiTWAUhfojE,563
|
1340
1335
|
zrb/helper/cli.py,sha256=cb82aZCX5NoOHQNTx3wtdKOAQJP79ky4HA6w0VjVBh0,2603
|
1341
1336
|
zrb/helper/codemod/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -1384,18 +1379,14 @@ zrb/helper/util.py,sha256=s3Wdg-hYbhkttW7o2-C8erQqMuxStSpR8f2psgZzP68,3836
|
|
1384
1379
|
zrb/runner.py,sha256=9huyeIi8gqbMQV3u6CRBeB8s9WVynECR0jECuCAYm9c,261
|
1385
1380
|
zrb/shell-scripts/_common-util.sh,sha256=8zvSAbDp8z4JWxMT6s6bSnNBCfCB88gLLpK5LOhyPBg,229
|
1386
1381
|
zrb/shell-scripts/ensure-docker-is-installed.sh,sha256=8CL5gYs428LPWcF43X-1O1i2YyWAOGzXTKZttiS9J1Q,2999
|
1387
|
-
zrb/shell-scripts/ensure-podman-is-installed.sh,sha256=RvLLQIBN5cfLEsFkTpomgl_PxJZ6z0Wl0VGGtjIA5JM,1529
|
1388
1382
|
zrb/shell-scripts/ensure-rsync-is-installed.sh,sha256=ffr8avoCUSoDQkEBWmeelgn-EtF9reQTaM0wfW6B0hc,1146
|
1389
1383
|
zrb/shell-scripts/ensure-ssh-is-installed.sh,sha256=w5pCzsbEa3bnxT07q6gX0nWn-7HXsMiwBRrg7dMD57w,2414
|
1390
1384
|
zrb/shell-scripts/notify.ps1,sha256=6_xPoIwuxARpYljcjVV-iRJS3gJqGfx-B6kj719cJ9o,843
|
1391
|
-
zrb/shell-scripts/rsync-util.sh,sha256=QzdhSBvUNMxB4U2B4m0Dxg9czGckRjB7Vk4A1ObG0-k,353
|
1392
|
-
zrb/shell-scripts/ssh-util.sh,sha256=9lXDzw6oO8HuA4vdbfps_uQMMwKyNYX9fZkZgpK52g8,401
|
1393
1385
|
zrb/task/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1394
1386
|
zrb/task/any_task.py,sha256=SlAp6LY-8TGopaQm3eZD3ZEx3wxvCff8UfcnYyu-aiY,39344
|
1395
1387
|
zrb/task/any_task_event_handler.py,sha256=ay4v7eXatF4sCiXpUYaHVJZljpnKlvBbFIwvZqXW8Mo,541
|
1396
|
-
zrb/task/base_remote_cmd_task.py,sha256=EhAT7grnIxFeMfwm8FV6GF6n0kOYESAyIIVzqgZBRBg,12324
|
1397
1388
|
zrb/task/base_task/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1398
|
-
zrb/task/base_task/base_task.py,sha256=
|
1389
|
+
zrb/task/base_task/base_task.py,sha256=iieOSoDvKVJpDpTH1LdO-uA1yBPRHxMDPyEgS0wKwmc,21434
|
1399
1390
|
zrb/task/base_task/component/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
1400
1391
|
zrb/task/base_task/component/base_task_model.py,sha256=EuTWvY54mD_ATy4-VFZw4uCOu3Mfe8hgZikwTnIjmkY,10381
|
1401
1392
|
zrb/task/base_task/component/common_task_model.py,sha256=X_Ubu5kNycQJ-dFiLMARvC6GWQ9pIjBCdxh3MVelc-A,13544
|
@@ -1403,22 +1394,22 @@ zrb/task/base_task/component/pid_model.py,sha256=RjJIqOpavucDssnd3q3gT4q8QnP8I9S
|
|
1403
1394
|
zrb/task/base_task/component/renderer.py,sha256=xxcMbHhWPMUgAO3DWec_E-OeqlCKtwCBGFzLoc5g8BE,4484
|
1404
1395
|
zrb/task/base_task/component/trackers.py,sha256=3G4dMhh1kVaJrmRwiGzWQSbr1fB-w9xXjBKz_vRifYc,2063
|
1405
1396
|
zrb/task/checker.py,sha256=mh_2ajZqpNdJQ8AFVQ6ZArYtBUOXST3aZSisINuEivk,3400
|
1406
|
-
zrb/task/cmd_task.py,sha256=
|
1397
|
+
zrb/task/cmd_task.py,sha256=BcWXiikCQqFHIYs-PPSnvFTM10HKntj76h3wCE6sqKs,14701
|
1407
1398
|
zrb/task/decorator.py,sha256=SuajollezbwiSOs29bv8A6PmFcFs_RH4pr4TPcQPDHM,3081
|
1408
|
-
zrb/task/docker_compose_start_task.py,sha256=
|
1409
|
-
zrb/task/docker_compose_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
|
1410
1401
|
zrb/task/flow_task.py,sha256=wkvvUCrt6n1ul-o3STCPMdrlBuGBrNCRgtRzGyXir9o,5079
|
1411
1402
|
zrb/task/http_checker.py,sha256=gXqBlEStMnIhzmQ7FX9Zo-nG3-wsiVEML8IOJiSG5JI,5705
|
1412
|
-
zrb/task/looper.py,sha256=
|
1403
|
+
zrb/task/looper.py,sha256=tYMG9rTMEd5-FP0CIBfbcWfahsg6W-ED66AV5C-kCrk,1441
|
1413
1404
|
zrb/task/notifier.py,sha256=xjqT5Vydr_0cc1m4jA-odhHMZg6CSGciFCs0rhVkvPM,6265
|
1414
1405
|
zrb/task/parallel.py,sha256=Xz9az51hHfkeEmOEo3Xb-B7GPoOT_DxuakpAfCbzzV0,1176
|
1415
1406
|
zrb/task/path_checker.py,sha256=xkOpxlLUaEXlsiWh1o-ghqQNWYadXvTl3QV4yeIC2Rc,4677
|
1416
1407
|
zrb/task/path_watcher.py,sha256=aKWhT7Kuc_UJMr8SSY7ZZym-_rV526tEeIaKRRz3XYU,7419
|
1417
1408
|
zrb/task/port_checker.py,sha256=SG2yrAxdJgxdR6xymviB48K529o3Rnq_WhDJZDKgAQg,4605
|
1418
1409
|
zrb/task/recurring_task.py,sha256=wtZhi0DCDdVM7ecIgoXghQPTOQemrEvCY8xDJoaG1mo,7444
|
1419
|
-
zrb/task/remote_cmd_task.py,sha256
|
1410
|
+
zrb/task/remote_cmd_task.py,sha256=-kNkRVSIDrNJcVRBfMpc-fXYOHh6Fs2PTsiOzWwimTM,5793
|
1420
1411
|
zrb/task/resource_maker.py,sha256=e6nmFJsVHHo8_sW5F-lBfkO_2RszrlXNoubh4rwM6UY,7644
|
1421
|
-
zrb/task/rsync_task.py,sha256=
|
1412
|
+
zrb/task/rsync_task.py,sha256=NdfKtendGyH9Kg17hEsavl1NoeIJ04FTii2OaXg_S6g,6022
|
1422
1413
|
zrb/task/server.py,sha256=zC8swQOu_3YkRtGFXuRGZqz6yEu--ZhNRgNwbR44uUA,6741
|
1423
1414
|
zrb/task/task.py,sha256=iHDyUMUh1uVGlMCQdVewdT3epCOHKNRKblC3G1WSKS0,2493
|
1424
1415
|
zrb/task/time_watcher.py,sha256=v01whCMTvul_vraVccy8A9rDBk-CL7HFvPOu8g1BC5s,5130
|
@@ -1441,8 +1432,8 @@ zrb/task_input/multiline_input.py,sha256=KNto5k5X1C6KE_A-vX0OjpQyjgCRJ6BR2PwHXNQ
|
|
1441
1432
|
zrb/task_input/password_input.py,sha256=95NlJ9xIq7z_evpAyR2XsBpeuWpBXd2Ezn3P7oDOttk,4360
|
1442
1433
|
zrb/task_input/str_input.py,sha256=0nje7vI9fs_xqQBbmKB8Yn7wevlWp9Qebv7f8-GmiXs,4350
|
1443
1434
|
zrb/task_input/task_input.py,sha256=WTj_qIQyRs-04-VotjNTcVyIuf6b2afInVoCQHoRmr0,2327
|
1444
|
-
zrb-0.
|
1445
|
-
zrb-0.
|
1446
|
-
zrb-0.
|
1447
|
-
zrb-0.
|
1448
|
-
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
|
-
}
|