machineconfig 6.35__py3-none-any.whl → 6.37__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.
Potentially problematic release.
This version of machineconfig might be problematic. Click here for more details.
- machineconfig/scripts/python/croshell.py +1 -1
- machineconfig/scripts/python/devops_helpers/cli_config.py +1 -1
- machineconfig/scripts/python/devops_helpers/cli_nw.py +3 -3
- machineconfig/scripts/python/devops_helpers/cli_self.py +3 -3
- machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py +2 -2
- machineconfig/scripts/python/interactive.py +2 -2
- machineconfig/scripts/python/nw/mount_nfs +1 -1
- machineconfig/scripts/python/repos_helpers/count_lines_frontend.py +1 -1
- machineconfig/scripts/windows/mounts/mount_ssh.ps1 +1 -1
- machineconfig/setup_linux/web_shortcuts/interactive.sh +1 -1
- machineconfig/setup_windows/web_shortcuts/interactive.ps1 +1 -1
- machineconfig/utils/scheduler.py +61 -25
- machineconfig/utils/ssh.py +1 -1
- {machineconfig-6.35.dist-info → machineconfig-6.37.dist-info}/METADATA +1 -1
- {machineconfig-6.35.dist-info → machineconfig-6.37.dist-info}/RECORD +18 -18
- {machineconfig-6.35.dist-info → machineconfig-6.37.dist-info}/WHEEL +0 -0
- {machineconfig-6.35.dist-info → machineconfig-6.37.dist-info}/entry_points.txt +0 -0
- {machineconfig-6.35.dist-info → machineconfig-6.37.dist-info}/top_level.txt +0 -0
|
@@ -149,7 +149,7 @@ from pathlib import Path
|
|
|
149
149
|
else:
|
|
150
150
|
console.print(Panel("❌ Could not determine the local machineconfig repo root. Please ensure the `REPO_ROOT` in `source_of_truth.py` is correctly set to the local path of the machineconfig repo, or do not use the `--local` flag.", title="Error", border_style="red"))
|
|
151
151
|
return
|
|
152
|
-
else: ve_line = """--with "machineconfig[plot]>=6.
|
|
152
|
+
else: ve_line = """--with "machineconfig[plot]>=6.36" """
|
|
153
153
|
fire_line = f"uv run --python 3.14 {ve_line} {interpreter} {interactivity} {profile} {str(pyfile)}"
|
|
154
154
|
|
|
155
155
|
from machineconfig.utils.code import run_shell_script
|
|
@@ -42,7 +42,7 @@ def path():
|
|
|
42
42
|
from pathlib import Path
|
|
43
43
|
path = Path(navigator.__file__).resolve().parent.joinpath("path_manager_tui.py")
|
|
44
44
|
from machineconfig.utils.code import run_shell_script
|
|
45
|
-
run_shell_script(f"""uv run --with "machineconfig>=6.
|
|
45
|
+
run_shell_script(f"""uv run --with "machineconfig>=6.36,textual" {path}""")
|
|
46
46
|
|
|
47
47
|
def pwsh_theme():
|
|
48
48
|
"""🔗 Select powershell prompt theme."""
|
|
@@ -64,9 +64,9 @@ def get_app():
|
|
|
64
64
|
nw_apps.command(name="i", help="Install SSH server", hidden=True)(install_ssh_server)
|
|
65
65
|
nw_apps.command(name="add-ssh-key", help="🔑 [k] Add SSH public key to this machine", no_args_is_help=True)(add_ssh_key)
|
|
66
66
|
nw_apps.command(name="k", help="Add SSH public key to this machine", hidden=True, no_args_is_help=True)(add_ssh_key)
|
|
67
|
-
nw_apps.command(name="add-ssh-identity", help="🗝️ [
|
|
68
|
-
nw_apps.command(name="
|
|
69
|
-
nw_apps.command(name="show-address", help="[
|
|
67
|
+
nw_apps.command(name="add-ssh-identity", help="🗝️ [A] Add SSH identity (private key) to this machine")(add_ssh_identity)
|
|
68
|
+
nw_apps.command(name="A", help="Add SSH identity (private key) to this machine", hidden=True)(add_ssh_identity)
|
|
69
|
+
nw_apps.command(name="show-address", help="📌 [a] Show this computer addresses on network")(show_address)
|
|
70
70
|
nw_apps.command(name="a", help="Show this computer addresses on network", hidden=True)(show_address)
|
|
71
71
|
nw_apps.command(name="debug-ssh", help="🐛 [d] Debug SSH connection")(debug_ssh)
|
|
72
72
|
nw_apps.command(name="d", help="Debug SSH connection", hidden=True)(debug_ssh)
|
|
@@ -54,9 +54,9 @@ def install():
|
|
|
54
54
|
# main_public_from_parser()
|
|
55
55
|
import platform
|
|
56
56
|
if platform.system() == "Windows":
|
|
57
|
-
run_shell_script(r"""$HOME\.local\bin\uv.exe tool install "machineconfig>=6.
|
|
57
|
+
run_shell_script(r"""$HOME\.local\bin\uv.exe tool install "machineconfig>=6.36" """)
|
|
58
58
|
else:
|
|
59
|
-
run_shell_script("""$HOME/.local/bin/uv tool install "machineconfig>=6.
|
|
59
|
+
run_shell_script("""$HOME/.local/bin/uv tool install "machineconfig>=6.36" """)
|
|
60
60
|
|
|
61
61
|
def navigate():
|
|
62
62
|
"""📚 NAVIGATE command structure with TUI"""
|
|
@@ -64,7 +64,7 @@ def navigate():
|
|
|
64
64
|
from pathlib import Path
|
|
65
65
|
path = Path(navigator.__file__).resolve().parent.joinpath("devops_navigator.py")
|
|
66
66
|
from machineconfig.utils.code import run_shell_script
|
|
67
|
-
run_shell_script(f"""uv run --with "machineconfig>=6.
|
|
67
|
+
run_shell_script(f"""uv run --with "machineconfig>=6.36,textual" {path}""")
|
|
68
68
|
|
|
69
69
|
|
|
70
70
|
def run_python(ip: Annotated[str, typer.Argument(..., help="Python command to run in the machineconfig environment")],
|
|
@@ -101,7 +101,7 @@ git pull originEnc master
|
|
|
101
101
|
return "done"
|
|
102
102
|
from machineconfig.utils.meta import function_to_script
|
|
103
103
|
program_1_py = function_to_script(func=func2, call_with_args=None, call_with_kwargs={"remote_repo": str(repo_remote_root), "local_repo": str(repo_local_root), "cloud": cloud_resolved})
|
|
104
|
-
shell_file_1 = get_shell_file_executing_python_script(python_script=program_1_py, ve_path=None, executable="""uv run --with "machineconfig>=6.
|
|
104
|
+
shell_file_1 = get_shell_file_executing_python_script(python_script=program_1_py, ve_path=None, executable="""uv run --with "machineconfig>=6.36" """)
|
|
105
105
|
# ================================================================================
|
|
106
106
|
option2 = "Delete local repo and replace it with remote copy:"
|
|
107
107
|
program_2 = f"""
|
|
@@ -122,7 +122,7 @@ sudo chmod +x $HOME/dotfiles/scripts/linux -R
|
|
|
122
122
|
inspect_repos(repo_local_root=repo_local_root, repo_remote_root=repo_remote_root)
|
|
123
123
|
return "done"
|
|
124
124
|
program_3_py = function_to_script(func=func, call_with_args=None, call_with_kwargs={"repo_local_root": str(repo_local_root), "repo_remote_root": str(repo_remote_root)})
|
|
125
|
-
shell_file_3 = get_shell_file_executing_python_script(python_script=program_3_py, ve_path=None, executable="""uv run --with "machineconfig>=6.
|
|
125
|
+
shell_file_3 = get_shell_file_executing_python_script(python_script=program_3_py, ve_path=None, executable="""uv run --with "machineconfig>=6.36" """)
|
|
126
126
|
# ================================================================================
|
|
127
127
|
|
|
128
128
|
option4 = "Remove problematic rclone file from repo and replace with remote:"
|
|
@@ -130,9 +130,9 @@ def execute_installations(selected_options: list[str]) -> None:
|
|
|
130
130
|
console.print(Panel("🐍 [bold green]PYTHON ENVIRONMENT[/bold green]\n[italic]Virtual environment setup[/italic]", border_style="green"))
|
|
131
131
|
import platform
|
|
132
132
|
if platform.system() == "Windows":
|
|
133
|
-
run_shell_script(r"""$HOME\.local\bin\uv.exe tool install "machineconfig>=6.
|
|
133
|
+
run_shell_script(r"""$HOME\.local\bin\uv.exe tool install "machineconfig>=6.36" """)
|
|
134
134
|
else:
|
|
135
|
-
run_shell_script("""$HOME/.local/bin/uv tool install "machineconfig>=6.
|
|
135
|
+
run_shell_script("""$HOME/.local/bin/uv tool install "machineconfig>=6.36" """)
|
|
136
136
|
if "install_ssh_server" in selected_options:
|
|
137
137
|
console.print(Panel("🔒 [bold red]SSH SERVER[/bold red]\n[italic]Remote access setup[/italic]", border_style="red"))
|
|
138
138
|
import platform
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
# mkdir ~/data/local
|
|
6
6
|
# sudo mount -o nolock,noatime,nodiratime,proto=tcp,timeo=600,retrans=2,noac alex-p51s-5:/home/alex/data/local ./data/local
|
|
7
7
|
|
|
8
|
-
uv run --python 3.14 --with "machineconfig>=6.
|
|
8
|
+
uv run --python 3.14 --with "machineconfig>=6.36" python -m machineconfig.scripts.python.mount_nfs
|
|
9
9
|
# Check if remote server is reachable and share folder exists
|
|
10
10
|
if ! ping -c 1 "$remote_server" &> /dev/null; then
|
|
11
11
|
echo "💥 Error: Remote server $remote_server is not reachable."
|
|
@@ -8,7 +8,7 @@ def analyze_repo_development(repo_path: Annotated[str, typer.Argument(..., help=
|
|
|
8
8
|
from pathlib import Path
|
|
9
9
|
count_lines_path = Path(count_lines.__file__)
|
|
10
10
|
# --project $HOME/code/ machineconfig --group plot
|
|
11
|
-
cmd = f"""uv run --python 3.14 --with "machineconfig[plot]>=6.
|
|
11
|
+
cmd = f"""uv run --python 3.14 --with "machineconfig[plot]>=6.36" {count_lines_path} analyze-over-time {repo_path}"""
|
|
12
12
|
from machineconfig.utils.code import run_shell_script
|
|
13
13
|
run_shell_script(cmd)
|
|
14
14
|
|
|
@@ -7,7 +7,7 @@ $user = ''
|
|
|
7
7
|
$sharePath = ''
|
|
8
8
|
$driveLetter = ''
|
|
9
9
|
|
|
10
|
-
uv run --python 3.14 --with "machineconfig>=6.
|
|
10
|
+
uv run --python 3.14 --with "machineconfig>=6.36" python -m machineconfig.scripts.python.mount_ssh
|
|
11
11
|
|
|
12
12
|
net use T: \\sshfs.kr\$user@$host.local
|
|
13
13
|
# this worked: net use T: \\sshfs\alex@alex-p51s-5.local
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/bin/bash
|
|
2
2
|
. <( curl -sSL "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/uv.sh")
|
|
3
3
|
mcfg() {
|
|
4
|
-
"$HOME/.local/bin/uv" run --python 3.14 --with "machineconfig>=6.
|
|
4
|
+
"$HOME/.local/bin/uv" run --python 3.14 --with "machineconfig>=6.36" mcfg "$@"
|
|
5
5
|
}
|
|
6
6
|
alias d="mcfg devops"
|
|
7
7
|
alias c="mcfg cloud"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
iex (iwr "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_windows/uv.ps1").Content
|
|
4
4
|
function mcfg {
|
|
5
|
-
& "$HOME\.local\bin\uv.exe" run --python 3.14 --with "machineconfig>=6.
|
|
5
|
+
& "$HOME\.local\bin\uv.exe" run --python 3.14 --with "machineconfig>=6.36" mcfg $args
|
|
6
6
|
}
|
|
7
7
|
function d { mcfg devops @args }
|
|
8
8
|
function c { mcfg cloud @args }
|
machineconfig/utils/scheduler.py
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
|
|
2
1
|
from pathlib import Path
|
|
3
2
|
from typing import Callable, Optional, Union, Any, Protocol, List, TypeVar
|
|
4
3
|
import logging
|
|
@@ -152,6 +151,64 @@ def to_pickle(obj: Any, path: Path) -> None:
|
|
|
152
151
|
path.write_bytes(pickle.dumps(obj))
|
|
153
152
|
|
|
154
153
|
|
|
154
|
+
class CacheMemory[T]():
|
|
155
|
+
def __init__(
|
|
156
|
+
self, source_func: Callable[[], T], expire: timedelta, logger: LoggerTemplate, name: Optional[str] = None
|
|
157
|
+
) -> None:
|
|
158
|
+
self.cache: T
|
|
159
|
+
self.source_func = source_func
|
|
160
|
+
self.time_produced = datetime.now()
|
|
161
|
+
self.logger = logger
|
|
162
|
+
self.expire = expire
|
|
163
|
+
self.name = name if isinstance(name, str) else str(self.source_func)
|
|
164
|
+
self.last_call_is_fresh = False
|
|
165
|
+
|
|
166
|
+
@property
|
|
167
|
+
def age(self) -> timedelta:
|
|
168
|
+
return datetime.now() - self.time_produced
|
|
169
|
+
|
|
170
|
+
def __call__(self, fresh: bool = False) -> T:
|
|
171
|
+
self.last_call_is_fresh = False
|
|
172
|
+
if fresh or not hasattr(self, "cache"):
|
|
173
|
+
if self.logger:
|
|
174
|
+
why = "There was an explicit fresh order." if fresh else "Previous cache never existed."
|
|
175
|
+
self.logger.warning(f"""
|
|
176
|
+
🆕 ════════════════════ NEW CACHE ════════════════════
|
|
177
|
+
🔄 {self.name} cache: Populating fresh cache from source func
|
|
178
|
+
ℹ️ Reason: {why}
|
|
179
|
+
════════════════════════════════════════════════════════""")
|
|
180
|
+
self.cache = self.source_func()
|
|
181
|
+
self.last_call_is_fresh = True
|
|
182
|
+
self.time_produced = datetime.now()
|
|
183
|
+
else:
|
|
184
|
+
age = self.age
|
|
185
|
+
if age > self.expire:
|
|
186
|
+
if self.logger:
|
|
187
|
+
self.logger.warning(f"""
|
|
188
|
+
🔄 ════════════════════ CACHE UPDATE ════════════════════
|
|
189
|
+
⚠️ {self.name} cache: Updating cache from source func
|
|
190
|
+
⏱️ Age = {age} > {self.expire}
|
|
191
|
+
════════════════════════════════════════════════════════""")
|
|
192
|
+
self.cache = self.source_func()
|
|
193
|
+
self.last_call_is_fresh = True
|
|
194
|
+
self.time_produced = datetime.now()
|
|
195
|
+
else:
|
|
196
|
+
if self.logger:
|
|
197
|
+
self.logger.warning(f"""
|
|
198
|
+
✅ ════════════════════ USING CACHE ════════════════════
|
|
199
|
+
📦 {self.name} cache: Using cached values
|
|
200
|
+
⏱️ Lag = {age}
|
|
201
|
+
════════════════════════════════════════════════════════""")
|
|
202
|
+
return self.cache
|
|
203
|
+
|
|
204
|
+
@staticmethod
|
|
205
|
+
def as_decorator(expire: timedelta, logger: LoggerTemplate, name: Optional[str] = None):
|
|
206
|
+
def decorator(source_func: Callable[[], T2]) -> CacheMemory["T2"]:
|
|
207
|
+
res = CacheMemory(source_func=source_func, expire=expire, logger=logger, name=name)
|
|
208
|
+
return res
|
|
209
|
+
return decorator
|
|
210
|
+
|
|
211
|
+
|
|
155
212
|
class Cache[T](): # This class helps to accelrate access to latest data coming from expensive function. The class has two flavours, memory-based and disk-based variants."""
|
|
156
213
|
def __init__(
|
|
157
214
|
self, source_func: Callable[[], T], expire: timedelta, logger: LoggerTemplate, path: Path, saver: Callable[[T, Path], Any] = to_pickle, reader: Callable[[Path], T] = from_pickle, name: Optional[str] = None
|
|
@@ -180,8 +237,7 @@ class Cache[T](): # This class helps to accelrate access to latest data coming
|
|
|
180
237
|
📦 ════════════════════ CACHE OPERATION ════════════════════
|
|
181
238
|
🔄 {self.name} cache: Reading cached values from `{self.path}`
|
|
182
239
|
⏱️ Lag = {age}
|
|
183
|
-
════════════════════════════════════════════════════════════
|
|
184
|
-
"""
|
|
240
|
+
════════════════════════════════════════════════════════════"""
|
|
185
241
|
try:
|
|
186
242
|
self.cache = self.reader(self.path)
|
|
187
243
|
except Exception as ex:
|
|
@@ -190,8 +246,7 @@ class Cache[T](): # This class helps to accelrate access to latest data coming
|
|
|
190
246
|
❌ ════════════════════ CACHE ERROR ════════════════════
|
|
191
247
|
⚠️ {self.name} cache: Cache file is corrupted
|
|
192
248
|
🔍 Error: {ex}
|
|
193
|
-
════════════════════════════════════════════════════════
|
|
194
|
-
"""
|
|
249
|
+
════════════════════════════════════════════════════════"""
|
|
195
250
|
self.logger.warning(msg1 + msg2)
|
|
196
251
|
self.cache = self.source_func()
|
|
197
252
|
self.last_call_is_fresh = True
|
|
@@ -208,8 +263,7 @@ class Cache[T](): # This class helps to accelrate access to latest data coming
|
|
|
208
263
|
🆕 ════════════════════ NEW CACHE ════════════════════
|
|
209
264
|
🔄 {self.name} cache: Populating fresh cache from source func
|
|
210
265
|
ℹ️ Reason: {why}
|
|
211
|
-
════════════════════════════════════════════════════════
|
|
212
|
-
""")
|
|
266
|
+
════════════════════════════════════════════════════════""")
|
|
213
267
|
self.cache = self.source_func() # fresh data.
|
|
214
268
|
self.last_call_is_fresh = True
|
|
215
269
|
self.time_produced = datetime.now()
|
|
@@ -248,21 +302,3 @@ class Cache[T](): # This class helps to accelrate access to latest data coming
|
|
|
248
302
|
return res
|
|
249
303
|
|
|
250
304
|
return decorator
|
|
251
|
-
|
|
252
|
-
# def from_cloud(self, cloud: str, rel2home: bool = True, root: Optional[str] = None):
|
|
253
|
-
# assert self.path is not None
|
|
254
|
-
# exists = self.path.exists()
|
|
255
|
-
# exists_but_old = exists and ((datetime.now() - datetime.fromtimestamp(self.path.stat().st_mtime)) > self.expire)
|
|
256
|
-
# if not exists or exists_but_old:
|
|
257
|
-
# returned_path = self.path.from_cloud(cloud=cloud, rel2home=rel2home, root=root)
|
|
258
|
-
# if returned_path is None and not exists:
|
|
259
|
-
# raise FileNotFoundError(f"❌ Failed to get @ {self.path}. Build the cache first with signed API.")
|
|
260
|
-
# elif returned_path is None and exists:
|
|
261
|
-
# self.logger.warning(f"""
|
|
262
|
-
# ⚠️ ════════════════════ CLOUD FETCH WARNING ════════════════════
|
|
263
|
-
# 🔄 Failed to get fresh data from cloud
|
|
264
|
-
# 📦 Using old cache @ {self.path}
|
|
265
|
-
# ════════════════════════════════════════════════════════════════""")
|
|
266
|
-
# else:
|
|
267
|
-
# pass # maybe we don't need to fetch it from cloud, if its too hot
|
|
268
|
-
# return self.reader(self.path)
|
machineconfig/utils/ssh.py
CHANGED
|
@@ -6,7 +6,7 @@ from machineconfig.utils.terminal import Response, MACHINE
|
|
|
6
6
|
from machineconfig.utils.accessories import pprint
|
|
7
7
|
|
|
8
8
|
UV_RUN_CMD = "$HOME/.local/bin/uv run"
|
|
9
|
-
MACHINECONFIG_VERSION = "machineconfig>=6.
|
|
9
|
+
MACHINECONFIG_VERSION = "machineconfig>=6.36"
|
|
10
10
|
DEFAULT_PICKLE_SUBDIR = "tmp_results/tmp_scripts/ssh"
|
|
11
11
|
|
|
12
12
|
|
|
@@ -122,13 +122,13 @@ machineconfig/scripts/linux/other/switch_ip,sha256=NQfeKMBSbFY3eP6M-BadD-TQo5qMP
|
|
|
122
122
|
machineconfig/scripts/python/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
123
123
|
machineconfig/scripts/python/agents.py,sha256=f5UxgXjGlEypoNFqK0uHKO0UkbV_wUmPiPzotL2yapM,10677
|
|
124
124
|
machineconfig/scripts/python/cloud.py,sha256=ubLmf06FSdi1NawpQDgUDAtYb9cZSQqHbSUHzAwRIas,1199
|
|
125
|
-
machineconfig/scripts/python/croshell.py,sha256=
|
|
125
|
+
machineconfig/scripts/python/croshell.py,sha256=tt2-Y2UKXfrtI4IQxgZBgn_k5bY0OJx41NEAcvJo1PE,7083
|
|
126
126
|
machineconfig/scripts/python/devops.py,sha256=FjsUBr8mFBTgjtesAiRaBXYpWWHqAxcMC6Naka8HTFk,2175
|
|
127
127
|
machineconfig/scripts/python/devops_navigator.py,sha256=4O9_-ACeP748NcMjWQXZF7mBQpMPxqCGhLvPG3DMi4Q,236
|
|
128
128
|
machineconfig/scripts/python/entry.py,sha256=Az7dK1eXHGW5l46Yg10Cd88VChCdhvLAzO3e1A3r56A,2176
|
|
129
129
|
machineconfig/scripts/python/fire_jobs.py,sha256=O5DrckUGLxGblOcLf_iXU31pmCSpTg-c0hQZxQKD1os,13591
|
|
130
130
|
machineconfig/scripts/python/ftpx.py,sha256=UBDP6IIfWkaML1uZT1FrfGUUy_Of5LI82IdqEzo05_U,9760
|
|
131
|
-
machineconfig/scripts/python/interactive.py,sha256=
|
|
131
|
+
machineconfig/scripts/python/interactive.py,sha256=4rzOmSsUUvqAKa8EAPjoGLDlL7LVN4P-6W6SEuUN9Ek,11820
|
|
132
132
|
machineconfig/scripts/python/sessions.py,sha256=l0NhO8kLtpDHdvNTlZ-Stt0VqARZqKUqiJlKvGIqCC0,9778
|
|
133
133
|
machineconfig/scripts/python/ai/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
134
134
|
machineconfig/scripts/python/ai/generate_files.py,sha256=VfjKdwgF8O6E4oiRtfWNliibLmmwGe7f9ld6wpOsXTw,14498
|
|
@@ -174,12 +174,12 @@ machineconfig/scripts/python/croshell_helpers/start_slidev.py,sha256=HfJReOusTPh
|
|
|
174
174
|
machineconfig/scripts/python/croshell_helpers/viewer.py,sha256=heQNjB9fwn3xxbPgMofhv1Lp6Vtkl76YjjexWWBM0pM,2041
|
|
175
175
|
machineconfig/scripts/python/croshell_helpers/viewer_template.py,sha256=ve3Q1-iKhCLc0VJijKvAeOYp2xaFOeIOC_XW956GWCc,3944
|
|
176
176
|
machineconfig/scripts/python/devops_helpers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
177
|
-
machineconfig/scripts/python/devops_helpers/cli_config.py,sha256=
|
|
177
|
+
machineconfig/scripts/python/devops_helpers/cli_config.py,sha256=B48SZzei0WG04GqvYfu3qyfcCIFqD3sfoXfcZJylYy4,5402
|
|
178
178
|
machineconfig/scripts/python/devops_helpers/cli_config_dotfile.py,sha256=rjTys4FNf9_feP9flWM7Zvq17dxWmetSiGaHPxp25nk,2737
|
|
179
179
|
machineconfig/scripts/python/devops_helpers/cli_data.py,sha256=2OWwp86-ncpGoSP9IblW7Jjej-wc-PuS8KRZ5xh0l1c,1774
|
|
180
|
-
machineconfig/scripts/python/devops_helpers/cli_nw.py,sha256=
|
|
180
|
+
machineconfig/scripts/python/devops_helpers/cli_nw.py,sha256=1slGev50V3sHlVSt6mnFSV9faIzrnvtwXmJxnCnVJJ0,4131
|
|
181
181
|
machineconfig/scripts/python/devops_helpers/cli_repos.py,sha256=Y5HgbNUyt7iehXyfmqPjVVjCsbZI-1Q6w1XwKQb_FkU,12331
|
|
182
|
-
machineconfig/scripts/python/devops_helpers/cli_self.py,sha256=
|
|
182
|
+
machineconfig/scripts/python/devops_helpers/cli_self.py,sha256=iMHmfK1uIXot9hbM44Ocy8jr5_QgayrO7SvQ8PMIL2E,5739
|
|
183
183
|
machineconfig/scripts/python/devops_helpers/cli_share_server.py,sha256=q9pFJ6AxPuygMr3onMNOKEuuQHbVE_6Qoyo7xRT5FX0,4196
|
|
184
184
|
machineconfig/scripts/python/devops_helpers/cli_terminal.py,sha256=k_PzXaiGyE0vXr0Ii1XcJz2A7UvyPJrR31TRWt4RKRI,6019
|
|
185
185
|
machineconfig/scripts/python/devops_helpers/devops_backup_retrieve.py,sha256=8VpnWytbJYdZZfeLmULgGeGuV5BlHrzdcbGtSsmU-EA,5598
|
|
@@ -219,7 +219,7 @@ machineconfig/scripts/python/helpers_fire_command/fire_jobs_args_helper.py,sha25
|
|
|
219
219
|
machineconfig/scripts/python/helpers_fire_command/fire_jobs_route_helper.py,sha256=4MrlCVijbx7GQyAN9s5LDh-7heSjMXYrXdqiP6uC3ug,5378
|
|
220
220
|
machineconfig/scripts/python/helpers_fire_command/fire_jobs_streamlit_helper.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
221
221
|
machineconfig/scripts/python/helpers_repos/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
222
|
-
machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py,sha256=
|
|
222
|
+
machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py,sha256=9J-CR2OcbSSsyYufL_pye0DhuNbjtSpBZuX56p6Fbm8,9700
|
|
223
223
|
machineconfig/scripts/python/helpers_repos/grource.py,sha256=zDKWAO24aA0HlpcKFgBH4Lh_eqWp9KTEqnbUnX6I2pk,14611
|
|
224
224
|
machineconfig/scripts/python/helpers_repos/secure_repo.py,sha256=fW_GyHqWrpnf7nexHojfWHv4eLBa71IhVL_LSVMyGnE,1115
|
|
225
225
|
machineconfig/scripts/python/nw/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -227,7 +227,7 @@ machineconfig/scripts/python/nw/add_ssh_key.py,sha256=9JLmWu8pE7PAL5VuCFd19iVEdC
|
|
|
227
227
|
machineconfig/scripts/python/nw/devops_add_identity.py,sha256=aPjcHbTLhxYwWYcandyAHdwuO15ZBu3fB82u6bI0tMQ,3773
|
|
228
228
|
machineconfig/scripts/python/nw/devops_add_ssh_key.py,sha256=CkIl85hZLtG9k7yXLSzqi88YrilHV4hIUWHAPBwxWjw,8922
|
|
229
229
|
machineconfig/scripts/python/nw/mount_drive,sha256=zemKofv7hOmRN_V3qK0q580GkfWw3VdikyVVQyiu8j8,3514
|
|
230
|
-
machineconfig/scripts/python/nw/mount_nfs,sha256=
|
|
230
|
+
machineconfig/scripts/python/nw/mount_nfs,sha256=vrOo-PfRVM-lK70ppjVviq8FDaRhOT9BRcLvmwNp5Ec,1855
|
|
231
231
|
machineconfig/scripts/python/nw/mount_nfs.py,sha256=lOMDY4RS7tx8gsCazVR5tNNwFbaRyO2PJlnwBCDQgCM,3573
|
|
232
232
|
machineconfig/scripts/python/nw/mount_nw_drive,sha256=BqjGBCbwe5ZAsZDO3L0zHhh_gJfZy1CYOcqXA4Y-WkQ,2262
|
|
233
233
|
machineconfig/scripts/python/nw/mount_nw_drive.py,sha256=iru6AtnTyvyuk6WxlK5R4lDkuliVpPV5_uBTVVhXtjQ,1550
|
|
@@ -241,7 +241,7 @@ machineconfig/scripts/python/nw/wsl_windows_transfer.py,sha256=1ab9l-8MtAxofW5nG
|
|
|
241
241
|
machineconfig/scripts/python/repos_helpers/action.py,sha256=pl0U53FAGoH2yk-CGNIy3aggImXY5ZVz28-XVFHDvfA,14862
|
|
242
242
|
machineconfig/scripts/python/repos_helpers/clone.py,sha256=UULEG5xJuXlPGU0nqXH6U45jA9DOFqLw8B4iPytCwOQ,5471
|
|
243
243
|
machineconfig/scripts/python/repos_helpers/count_lines.py,sha256=Q5c7b-DxvTlQmljoic7niTuiAVyFlwYvkVQ7uRJHiTo,16009
|
|
244
|
-
machineconfig/scripts/python/repos_helpers/count_lines_frontend.py,sha256=
|
|
244
|
+
machineconfig/scripts/python/repos_helpers/count_lines_frontend.py,sha256=SBVtfnL_EkBiN2GhgFHPOgBUXjWe5xtqB1bXyhM-f0M,607
|
|
245
245
|
machineconfig/scripts/python/repos_helpers/entrypoint.py,sha256=UagEar85QCAXX7oOqJjDJp2Vds5UQxehYPmckL_S0oI,2836
|
|
246
246
|
machineconfig/scripts/python/repos_helpers/record.py,sha256=FQo0swuJZOp0I2XGK-t1OQU4zJHmQ2z9zTpDD30Tmg4,11001
|
|
247
247
|
machineconfig/scripts/python/repos_helpers/sync.py,sha256=CLLWy2n2gY9beXPF-mblOQ6R7cKoenkJjMiX7tHQsBk,3091
|
|
@@ -254,7 +254,7 @@ machineconfig/scripts/windows/fzfrga.bat,sha256=rU_KBMO6ii2EZ0akMnmDk9vpuhKSUZqk
|
|
|
254
254
|
machineconfig/scripts/windows/mounts/mount_nfs.ps1,sha256=XrAdzpxE6a4OccSmWJ7YWHJTnsZK8uXnFE5j9GOPA20,2026
|
|
255
255
|
machineconfig/scripts/windows/mounts/mount_nw.ps1,sha256=puxcfZc3ZCJerm8pj8OZGVoTYkhzp-h7oV-MrksSqIE,454
|
|
256
256
|
machineconfig/scripts/windows/mounts/mount_smb.ps1,sha256=PzYWpIO9BpwXjdWlUQL9pnMRnOGNSkxfh4bHukJFme8,69
|
|
257
|
-
machineconfig/scripts/windows/mounts/mount_ssh.ps1,sha256=
|
|
257
|
+
machineconfig/scripts/windows/mounts/mount_ssh.ps1,sha256=YD5Pt0ncHV5Y_0pAH3hYcLuKS_y4YuGGIXT4I4IFuaU,322
|
|
258
258
|
machineconfig/scripts/windows/mounts/share_cloud.cmd,sha256=exD7JCdxw2LqVjw2MKCYHbVZlEqmelXtwnATng-dhJ4,1028
|
|
259
259
|
machineconfig/scripts/windows/mounts/share_smb.ps1,sha256=U7x8ULYSjbgzTtiHNSKQuTaZ_apilDvkGV5Xm5hXk5M,384
|
|
260
260
|
machineconfig/scripts/windows/mounts/unlock_bitlocker.ps1,sha256=Wv-SLscdckV-1mG3p82VXKPY9zW3hgkRmcLUXIZ1daE,253
|
|
@@ -369,7 +369,7 @@ machineconfig/setup_linux/others/mint_keyboard_shortcuts.sh,sha256=F5dbg0n9RHsKG
|
|
|
369
369
|
machineconfig/setup_linux/ssh/openssh_all.sh,sha256=3dg6HEUFbHQOzLfSAtzK_D_GB8rGCCp_aBnxNdnidVc,824
|
|
370
370
|
machineconfig/setup_linux/ssh/openssh_wsl.sh,sha256=1eeRGrloVB34K5z8yWVUMG5b9pV-WBfHgV9jqXiYgCQ,1398
|
|
371
371
|
machineconfig/setup_linux/web_shortcuts/android.sh,sha256=gzep6bBhK7FCBvGcXK0fdJCtkSfBOftt0aFyDZq_eMs,68
|
|
372
|
-
machineconfig/setup_linux/web_shortcuts/interactive.sh,sha256=
|
|
372
|
+
machineconfig/setup_linux/web_shortcuts/interactive.sh,sha256=fHhoNbuNz7NOriXe8MLOnh5Nk7YsrNeu5xxWjzQ1jNE,442
|
|
373
373
|
machineconfig/setup_windows/__init__.py,sha256=NnSVZkIBoxoMgkj-_KAqGonH3YziBIWXOKDEcmNAGTY,386
|
|
374
374
|
machineconfig/setup_windows/apps.ps1,sha256=dmZQZD4ZlNZo9jYkjIS3ag4qDAYZvaLysjmo9ELwBA4,11218
|
|
375
375
|
machineconfig/setup_windows/uv.ps1,sha256=ukk1Abh-q-RfpoEqI2XTE2dcQJmHk0VFF6WqkK3TW8Q,350
|
|
@@ -379,7 +379,7 @@ machineconfig/setup_windows/others/power_options.ps1,sha256=c7Hn94jBD5GWF29CxMhm
|
|
|
379
379
|
machineconfig/setup_windows/ssh/add-sshkey.ps1,sha256=qfPdqCpd9KP3VhH4ifsUm1Xvec7c0QVl4Wt8JIAm9HQ,1653
|
|
380
380
|
machineconfig/setup_windows/ssh/add_identity.ps1,sha256=b8ZXpmNUSw3IMYvqSY7ClpdWPG39FS7MefoWnRhWN2U,506
|
|
381
381
|
machineconfig/setup_windows/ssh/openssh-server.ps1,sha256=OMlYQdvuJQNxF5EILLPizB6BZAT3jAmDsv1WcVVxpFQ,2529
|
|
382
|
-
machineconfig/setup_windows/web_shortcuts/interactive.ps1,sha256=
|
|
382
|
+
machineconfig/setup_windows/web_shortcuts/interactive.ps1,sha256=JrQOheE3EzH3d82INdJSfgkZUg93hTs996D8tsSYUkI,548
|
|
383
383
|
machineconfig/setup_windows/wt_and_pwsh/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
384
384
|
machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py,sha256=ogxJnwpdcpH7N6dFJu95UCNoGYirZKQho_3X0F_hmXs,6791
|
|
385
385
|
machineconfig/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -394,10 +394,10 @@ machineconfig/utils/options.py,sha256=vUO4Kej-vDOv64wHr2HNDyu6PATURpjd7xp6N8OOoJ
|
|
|
394
394
|
machineconfig/utils/path_extended.py,sha256=WyJwoHnXdvSQQJ-yrxTX78FpqYmgVeKDYpNEB9UsRck,53223
|
|
395
395
|
machineconfig/utils/path_helper.py,sha256=0e3Xh3BAEv27oqcezNeVLHJllGmLEgLH4T1l90m-650,8014
|
|
396
396
|
machineconfig/utils/procs.py,sha256=rw8LR8MjGgvtrpcgxb3hudq2B9fkkpYUXe9x5-FgHuc,10694
|
|
397
|
-
machineconfig/utils/scheduler.py,sha256=
|
|
397
|
+
machineconfig/utils/scheduler.py,sha256=Uk6VT-gG7cOevnsKRcQPobTdr5zUZF0kLkdieByReMU,15749
|
|
398
398
|
machineconfig/utils/scheduling.py,sha256=RF1iXJpqf4Dg18jdZWtBixz97KAHC6VKYqTFSpdLWuc,11188
|
|
399
399
|
machineconfig/utils/source_of_truth.py,sha256=ZAnCRltiM07ig--P6g9_6nEAvNFC4X4ERFTVcvpIYsE,764
|
|
400
|
-
machineconfig/utils/ssh.py,sha256=
|
|
400
|
+
machineconfig/utils/ssh.py,sha256=6Iy3Zlq3ByY_tafiVkRBLIB5Bi-5Eoyb675MsSP3xgw,39079
|
|
401
401
|
machineconfig/utils/terminal.py,sha256=IlmOByfQG-vjhaFFxxzU5rWzP5_qUzmalRfuey3PAmc,11801
|
|
402
402
|
machineconfig/utils/tst.py,sha256=6u1GI49NdcpxH2BYGAusNfY5q9G_ytCGVzFM5b6HYpM,674
|
|
403
403
|
machineconfig/utils/upgrade_packages.py,sha256=H96zVJEWXJW07nh5vhjuSCrPtXGqoUb7xeJsFYYdmCI,3330
|
|
@@ -422,8 +422,8 @@ machineconfig/utils/schemas/installer/installer_types.py,sha256=QClRY61QaduBPJoS
|
|
|
422
422
|
machineconfig/utils/schemas/layouts/layout_types.py,sha256=TcqlZdGVoH8htG5fHn1KWXhRdPueAcoyApppZsPAPto,2020
|
|
423
423
|
machineconfig/utils/schemas/repos/repos_types.py,sha256=ECVr-3IVIo8yjmYmVXX2mnDDN1SLSwvQIhx4KDDQHBQ,405
|
|
424
424
|
machineconfig/utils/ssh_utils/utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
425
|
-
machineconfig-6.
|
|
426
|
-
machineconfig-6.
|
|
427
|
-
machineconfig-6.
|
|
428
|
-
machineconfig-6.
|
|
429
|
-
machineconfig-6.
|
|
425
|
+
machineconfig-6.37.dist-info/METADATA,sha256=b51_ax1f6DD0BoSyi02WShSamZFEf47NEx7gBTD2YCg,2928
|
|
426
|
+
machineconfig-6.37.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
427
|
+
machineconfig-6.37.dist-info/entry_points.txt,sha256=M0jwN_brZdXWhmNVeXLvdKxfkv8WhhXFZYcuKBA9qnk,418
|
|
428
|
+
machineconfig-6.37.dist-info/top_level.txt,sha256=porRtB8qms8fOIUJgK-tO83_FeH6Bpe12oUVC670teA,14
|
|
429
|
+
machineconfig-6.37.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|