ominfra 0.0.0.dev156__py3-none-any.whl → 0.0.0.dev158__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.
- ominfra/clouds/aws/journald2aws/main.py +1 -1
- ominfra/journald/tailer.py +2 -2
- ominfra/manage/bootstrap_.py +1 -1
- ominfra/manage/commands/subprocess.py +4 -4
- ominfra/manage/deploy/apps.py +14 -15
- ominfra/manage/deploy/config.py +3 -0
- ominfra/manage/deploy/git.py +11 -27
- ominfra/manage/deploy/paths.py +48 -48
- ominfra/manage/deploy/specs.py +32 -0
- ominfra/manage/deploy/venvs.py +10 -5
- ominfra/manage/main.py +33 -4
- ominfra/manage/remote/spawning.py +4 -9
- ominfra/manage/system/packages.py +1 -1
- ominfra/pyremote.py +26 -26
- ominfra/scripts/journald2aws.py +469 -357
- ominfra/scripts/manage.py +2488 -1463
- ominfra/scripts/supervisor.py +385 -351
- ominfra/supervisor/configs.py +2 -0
- ominfra/supervisor/http.py +1 -1
- ominfra/supervisor/main.py +2 -2
- ominfra/supervisor/supervisor.py +2 -33
- ominfra/supervisor/utils/os.py +41 -0
- {ominfra-0.0.0.dev156.dist-info → ominfra-0.0.0.dev158.dist-info}/METADATA +3 -3
- {ominfra-0.0.0.dev156.dist-info → ominfra-0.0.0.dev158.dist-info}/RECORD +28 -27
- {ominfra-0.0.0.dev156.dist-info → ominfra-0.0.0.dev158.dist-info}/LICENSE +0 -0
- {ominfra-0.0.0.dev156.dist-info → ominfra-0.0.0.dev158.dist-info}/WHEEL +0 -0
- {ominfra-0.0.0.dev156.dist-info → ominfra-0.0.0.dev158.dist-info}/entry_points.txt +0 -0
- {ominfra-0.0.0.dev156.dist-info → ominfra-0.0.0.dev158.dist-info}/top_level.txt +0 -0
ominfra/supervisor/configs.py
CHANGED
ominfra/supervisor/http.py
CHANGED
@@ -4,10 +4,10 @@ import json
|
|
4
4
|
import socket
|
5
5
|
import typing as ta
|
6
6
|
|
7
|
+
from omlish.http.coro.fdio import CoroHttpServerConnectionFdioHandler
|
7
8
|
from omlish.http.handlers import HttpHandler
|
8
9
|
from omlish.http.handlers import HttpHandlerRequest
|
9
10
|
from omlish.http.handlers import HttpHandlerResponse
|
10
|
-
from omlish.io.fdio.corohttp import CoroHttpServerConnectionFdioHandler
|
11
11
|
from omlish.io.fdio.handlers import SocketFdioHandler
|
12
12
|
from omlish.lite.check import check
|
13
13
|
from omlish.lite.contextmanagers import defer
|
ominfra/supervisor/main.py
CHANGED
@@ -34,10 +34,10 @@ import itertools
|
|
34
34
|
import os.path
|
35
35
|
import typing as ta
|
36
36
|
|
37
|
-
from omlish.http.
|
37
|
+
from omlish.http.coro.server import CoroHttpServer
|
38
38
|
from omlish.lite.inject import inj
|
39
|
-
from omlish.lite.logs import configure_standard_logging
|
40
39
|
from omlish.lite.runtime import is_debugger_attached
|
40
|
+
from omlish.logs.standard import configure_standard_logging
|
41
41
|
from omlish.os.journald import journald_log_handler_factory
|
42
42
|
|
43
43
|
from ..configs import read_config_file
|
ominfra/supervisor/supervisor.py
CHANGED
@@ -1,6 +1,4 @@
|
|
1
1
|
# ruff: noqa: UP006 UP007
|
2
|
-
import errno
|
3
|
-
import os
|
4
2
|
import time
|
5
3
|
import typing as ta
|
6
4
|
|
@@ -26,8 +24,7 @@ from .types import ExitNow
|
|
26
24
|
from .types import Process
|
27
25
|
from .types import SupervisorStateManager
|
28
26
|
from .utils.os import decode_wait_status
|
29
|
-
from .utils.
|
30
|
-
from .utils.ostypes import Rc
|
27
|
+
from .utils.os import waitpid
|
31
28
|
|
32
29
|
|
33
30
|
##
|
@@ -232,7 +229,7 @@ class Supervisor:
|
|
232
229
|
if depth >= 100:
|
233
230
|
return
|
234
231
|
|
235
|
-
wp = waitpid()
|
232
|
+
wp = waitpid(log=log)
|
236
233
|
|
237
234
|
if wp is None or not wp.pid:
|
238
235
|
return
|
@@ -271,31 +268,3 @@ class Supervisor:
|
|
271
268
|
if this_tick != last_tick:
|
272
269
|
self._ticks[period] = this_tick
|
273
270
|
self._event_callbacks.notify(event(this_tick, self))
|
274
|
-
|
275
|
-
|
276
|
-
##
|
277
|
-
|
278
|
-
|
279
|
-
class WaitedPid(ta.NamedTuple):
|
280
|
-
pid: Pid
|
281
|
-
sts: Rc
|
282
|
-
|
283
|
-
|
284
|
-
def waitpid() -> ta.Optional[WaitedPid]:
|
285
|
-
# Need pthread_sigmask here to avoid concurrent sigchld, but Python doesn't offer in Python < 3.4. There is
|
286
|
-
# still a race condition here; we can get a sigchld while we're sitting in the waitpid call. However, AFAICT, if
|
287
|
-
# waitpid is interrupted by SIGCHLD, as long as we call waitpid again (which happens every so often during the
|
288
|
-
# normal course in the mainloop), we'll eventually reap the child that we tried to reap during the interrupted
|
289
|
-
# call. At least on Linux, this appears to be true, or at least stopping 50 processes at once never left zombies
|
290
|
-
# lying around.
|
291
|
-
try:
|
292
|
-
pid, sts = os.waitpid(-1, os.WNOHANG)
|
293
|
-
except OSError as exc:
|
294
|
-
code = exc.args[0]
|
295
|
-
if code not in (errno.ECHILD, errno.EINTR):
|
296
|
-
log.critical('waitpid error %r; a process may not be cleaned up properly', code)
|
297
|
-
if code == errno.EINTR:
|
298
|
-
log.debug('EINTR during reap')
|
299
|
-
return None
|
300
|
-
else:
|
301
|
-
return WaitedPid(pid, sts) # type: ignore
|
ominfra/supervisor/utils/os.py
CHANGED
@@ -1,7 +1,10 @@
|
|
1
1
|
# ruff: noqa: UP006 UP007
|
2
|
+
import errno
|
3
|
+
import logging
|
2
4
|
import os
|
3
5
|
import typing as ta
|
4
6
|
|
7
|
+
from .ostypes import Pid
|
5
8
|
from .ostypes import Rc
|
6
9
|
from .signals import sig_name
|
7
10
|
|
@@ -43,3 +46,41 @@ def decode_wait_status(sts: int) -> ta.Tuple[Rc, str]:
|
|
43
46
|
else:
|
44
47
|
msg = 'unknown termination cause 0x%04x' % sts # noqa
|
45
48
|
return Rc(-1), msg
|
49
|
+
|
50
|
+
|
51
|
+
##
|
52
|
+
|
53
|
+
|
54
|
+
class WaitedPid(ta.NamedTuple):
|
55
|
+
pid: Pid
|
56
|
+
sts: Rc
|
57
|
+
|
58
|
+
|
59
|
+
def waitpid(
|
60
|
+
*,
|
61
|
+
log: ta.Optional[logging.Logger] = None,
|
62
|
+
) -> ta.Optional[WaitedPid]:
|
63
|
+
# Need pthread_sigmask here to avoid concurrent sigchld, but Python doesn't offer in Python < 3.4. There is
|
64
|
+
# still a race condition here; we can get a sigchld while we're sitting in the waitpid call. However, AFAICT, if
|
65
|
+
# waitpid is interrupted by SIGCHLD, as long as we call waitpid again (which happens every so often during the
|
66
|
+
# normal course in the mainloop), we'll eventually reap the child that we tried to reap during the interrupted
|
67
|
+
# call. At least on Linux, this appears to be true, or at least stopping 50 processes at once never left zombies
|
68
|
+
# lying around.
|
69
|
+
try:
|
70
|
+
pid, sts = os.waitpid(-1, os.WNOHANG)
|
71
|
+
|
72
|
+
except OSError as exc:
|
73
|
+
code = exc.args[0]
|
74
|
+
|
75
|
+
if code not in (errno.ECHILD, errno.EINTR):
|
76
|
+
if log is not None:
|
77
|
+
log.critical('waitpid error %r; a process may not be cleaned up properly', code)
|
78
|
+
|
79
|
+
if code == errno.EINTR:
|
80
|
+
if log is not None:
|
81
|
+
log.debug('EINTR during reap')
|
82
|
+
|
83
|
+
return None
|
84
|
+
|
85
|
+
else:
|
86
|
+
return WaitedPid(pid, sts) # type: ignore
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: ominfra
|
3
|
-
Version: 0.0.0.
|
3
|
+
Version: 0.0.0.dev158
|
4
4
|
Summary: ominfra
|
5
5
|
Author: wrmsr
|
6
6
|
License: BSD-3-Clause
|
@@ -12,8 +12,8 @@ Classifier: Operating System :: OS Independent
|
|
12
12
|
Classifier: Operating System :: POSIX
|
13
13
|
Requires-Python: >=3.12
|
14
14
|
License-File: LICENSE
|
15
|
-
Requires-Dist: omdev==0.0.0.
|
16
|
-
Requires-Dist: omlish==0.0.0.
|
15
|
+
Requires-Dist: omdev==0.0.0.dev158
|
16
|
+
Requires-Dist: omlish==0.0.0.dev158
|
17
17
|
Provides-Extra: all
|
18
18
|
Requires-Dist: paramiko~=3.5; extra == "all"
|
19
19
|
Requires-Dist: asyncssh~=2.18; extra == "all"
|
@@ -3,7 +3,7 @@ ominfra/__about__.py,sha256=6i1AoruFYQCd-PyhhbDQDWY2d1tiQu9nkwWr-fXAqfY,705
|
|
3
3
|
ominfra/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
4
4
|
ominfra/cmds.py,sha256=E0AfnvEmnKntXWvmLW5L05_NeDpBET1VBXn7vV6EwBQ,2083
|
5
5
|
ominfra/configs.py,sha256=fUjGcYTZDyWcIF0BkHBxkGz64S33DR5NP8tHIf3IaXk,2291
|
6
|
-
ominfra/pyremote.py,sha256=
|
6
|
+
ominfra/pyremote.py,sha256=YK21mzMMQIpEUGQtUU7n8H8MeSIC5kwFcOXgKXPAZOE,15124
|
7
7
|
ominfra/ssh.py,sha256=jQpc4WvkMckIfk4vILda8zFaeharRqc_6wxW50b0OjQ,5431
|
8
8
|
ominfra/threadworkers.py,sha256=oX4ubZn7h932saXpRIJu2MNhBExgGGMuGhdXarZxLJw,4948
|
9
9
|
ominfra/clouds/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -18,7 +18,7 @@ ominfra/clouds/aws/journald2aws/__init__.py,sha256=Y3l4WY4JRi2uLG6kgbGp93fuGfkxk
|
|
18
18
|
ominfra/clouds/aws/journald2aws/__main__.py,sha256=d23loR_cKfTYZwYiqpt_CmKI7dd5WcYFgIYzqMep75E,68
|
19
19
|
ominfra/clouds/aws/journald2aws/cursor.py,sha256=tQ7O6BHlEdaalbiI_Rqagj0aHfdtTQ_ZJwdOSRUjNvQ,1173
|
20
20
|
ominfra/clouds/aws/journald2aws/driver.py,sha256=b3XfSlIBWAWJLImmyh1ZK9FpdNAYNZ2YZeCv_Q9GckM,6111
|
21
|
-
ominfra/clouds/aws/journald2aws/main.py,sha256=
|
21
|
+
ominfra/clouds/aws/journald2aws/main.py,sha256=f1YbdF0FulIbUokaNz7NrPS304IdzYiw0Hd3ZDheYf0,2151
|
22
22
|
ominfra/clouds/aws/journald2aws/poster.py,sha256=hz1XuctW8GtLmfjhRvCFY6py52D4BzXHYny5XKFpHSA,2833
|
23
23
|
ominfra/clouds/gcp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
24
24
|
ominfra/clouds/gcp/auth.py,sha256=rDIiOH5gP3OSIaMC5Lp8yAD4zWuLDEYlFu37mDx5YDA,1360
|
@@ -26,14 +26,14 @@ ominfra/journald/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,
|
|
26
26
|
ominfra/journald/fields.py,sha256=NjjVn7GW4jkcGdyiiizVjEfQqSFnolXYk3kDcSQcMmc,12278
|
27
27
|
ominfra/journald/genmessages.py,sha256=rLTS-K2v7otNOtTz4RoOEVYCm0fQuuBzf47e0T61tA8,1857
|
28
28
|
ominfra/journald/messages.py,sha256=zhAQswhpSBybaBPWONCt0quenYK91HMHRkuOz38mq1E,2184
|
29
|
-
ominfra/journald/tailer.py,sha256=
|
29
|
+
ominfra/journald/tailer.py,sha256=fiyZkzZh3_QaCCeX1pnF1nwOhJ-u-QcbmAEH5V01Vsc,33506
|
30
30
|
ominfra/manage/__init__.py,sha256=aykrEASTHEtJ-o97jUHRIv8oea41tO7RDHB56cQfmis,265
|
31
31
|
ominfra/manage/__main__.py,sha256=5IeIERm-371fSI5ZvPv8eldAJBwgKwpR0R49pTsILNM,76
|
32
32
|
ominfra/manage/bootstrap.py,sha256=1RIRhVkUZjxZcZerHMg8U6xgWhhemGgPN5cDye8dQ68,446
|
33
|
-
ominfra/manage/bootstrap_.py,sha256=
|
33
|
+
ominfra/manage/bootstrap_.py,sha256=B9UfR9J7mS3J54PFaSe1MQS5lCnKgxt5dDRJ9mnHYwg,656
|
34
34
|
ominfra/manage/config.py,sha256=1y2N_8nXHBZc6YbW6BaRZoDDCTBmiHuWtTOQ7zdr5VE,184
|
35
35
|
ominfra/manage/inject.py,sha256=_FVaMZUBKi-oObv14H77luWYCodxNJJD1t4pNQzckFE,2030
|
36
|
-
ominfra/manage/main.py,sha256=
|
36
|
+
ominfra/manage/main.py,sha256=xc8iTMNCvdS_leKA-5vodEj_Dc-V8pThpPxcewrROns,4287
|
37
37
|
ominfra/manage/marshal.py,sha256=WKj7IU9bo4fBMSSzT6ZMm_WFalXIJZ-V7j8oi92fNhk,305
|
38
38
|
ominfra/manage/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
39
39
|
ominfra/manage/commands/base.py,sha256=LtaI0AgnplttQK7gNncNItq8yuTZQimJTaprVpZktI8,3993
|
@@ -41,18 +41,19 @@ ominfra/manage/commands/inject.py,sha256=uRw6DsllEoL6GDy0dZJdu2z9tf6I7l3YObMli-q
|
|
41
41
|
ominfra/manage/commands/local.py,sha256=DyHIsQ03_YS6kAA8WLeMyXyGgyizkd1WZUZdATkSsZE,532
|
42
42
|
ominfra/manage/commands/marshal.py,sha256=4DSCMPzRiRhufIB_9DPL6LrZkRZOle5ruOWU4MVlcXM,694
|
43
43
|
ominfra/manage/commands/ping.py,sha256=DVZFzL1Z_f-Bq53vxMrL3xOi0iK_nMonJE4KvQf9wsI,546
|
44
|
-
ominfra/manage/commands/subprocess.py,sha256=
|
44
|
+
ominfra/manage/commands/subprocess.py,sha256=yHGMbAI-xKe_9BUs5IZ3Yav8qRE-I9aGnBtTwW15Pnw,2440
|
45
45
|
ominfra/manage/commands/types.py,sha256=XFZPeqeIBAaIIQF3pdPbGxLlb-LCrz6WtlDWO2q_vz0,210
|
46
46
|
ominfra/manage/deploy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
47
|
-
ominfra/manage/deploy/apps.py,sha256=
|
47
|
+
ominfra/manage/deploy/apps.py,sha256=zfP25EFzURVt_YlPT9bOSA-G-JBRNC0XyAp1Xxt9YUY,1767
|
48
48
|
ominfra/manage/deploy/commands.py,sha256=YZGdpiaqj_-iMp2SMdz4hB6bTKk3UQxnHeTblGyxuuk,560
|
49
|
-
ominfra/manage/deploy/config.py,sha256=
|
50
|
-
ominfra/manage/deploy/git.py,sha256=
|
49
|
+
ominfra/manage/deploy/config.py,sha256=aR6ubMEWqkTI55XtcG1Cczn6YhCVN6eSL8DT5EHQJN0,166
|
50
|
+
ominfra/manage/deploy/git.py,sha256=EHdWVM-e5jg6dM8aIOkzkgNg8UoCYmt_KNYetTfbtrw,3560
|
51
51
|
ominfra/manage/deploy/inject.py,sha256=0_dBxMsyRYC9VH26Ue9k176IU22t9hWDmw101uIHyNE,1218
|
52
52
|
ominfra/manage/deploy/interp.py,sha256=OKkenH8YKEW_mEDR6X7_ZLxK9a1Ox6KHSwFPTHT6OzA,1029
|
53
|
-
ominfra/manage/deploy/paths.py,sha256=
|
53
|
+
ominfra/manage/deploy/paths.py,sha256=s7elIUkneG9y8-vZuMwzdY6_TGJR4918-fFWua2orgg,6172
|
54
|
+
ominfra/manage/deploy/specs.py,sha256=qO0UacGh6J34R-FDvXEBNkxtZ6htfp-4NlpnayDTooo,597
|
54
55
|
ominfra/manage/deploy/types.py,sha256=zW1nwi_wlBB6ekTmR3udnO2OW-p9JToyh3R27rzNEX8,264
|
55
|
-
ominfra/manage/deploy/venvs.py,sha256=
|
56
|
+
ominfra/manage/deploy/venvs.py,sha256=mc9SRpkaf5bE_No7XN8FC-9Yech8R8SJ0rCRquoz4RY,1943
|
56
57
|
ominfra/manage/remote/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
57
58
|
ominfra/manage/remote/_main.py,sha256=p5KoiS2WMw6QAqlDl_Zun-JybmCsy8awIfpBMLBjGMY,4356
|
58
59
|
ominfra/manage/remote/channel.py,sha256=36xR9Ti9ZA8TUBtxmY0u7_3Lv7E6wzQTxlZl7gLR5GE,2224
|
@@ -61,35 +62,35 @@ ominfra/manage/remote/connection.py,sha256=T4fL-GXXAfnbCbkZ3_28t8LAwwki4Td3j41eY
|
|
61
62
|
ominfra/manage/remote/execution.py,sha256=_bygZi_0Uel615uIg43S14CTdmv1unEIu9TPz2mVRJ4,11738
|
62
63
|
ominfra/manage/remote/inject.py,sha256=nSNP_VInCCZOWVrUIRHBvLmnM45geFoYmMh-zqc__as,1080
|
63
64
|
ominfra/manage/remote/payload.py,sha256=Rn-Yo26POpHEOOfUHX3jWkqcQVEAvkJ_5Bu13jwoob4,944
|
64
|
-
ominfra/manage/remote/spawning.py,sha256=
|
65
|
+
ominfra/manage/remote/spawning.py,sha256=dXfJE-T3WdM4ATDQxhbJ7N8xgN4FwDD-JsCrRTl297M,3027
|
65
66
|
ominfra/manage/system/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
66
67
|
ominfra/manage/system/commands.py,sha256=XrYvsxiwTJh17buIWmoFGH8zTUIXmrXvYkLy1INtmkU,1173
|
67
68
|
ominfra/manage/system/config.py,sha256=mEVBL1cy4twO6F0bdnCI01Sm0xuLe1Z5eiAzCvbmoAc,196
|
68
69
|
ominfra/manage/system/inject.py,sha256=Ksc7Xw_Yh3lWwkTRxB2JCeOYO-nMyKj-Kssd1RDkR9g,1871
|
69
|
-
ominfra/manage/system/packages.py,sha256=
|
70
|
+
ominfra/manage/system/packages.py,sha256=HImCsgzXxcfzAoD2PjrstaSE_qgBWtTFUVb0lTEOxkI,4614
|
70
71
|
ominfra/manage/system/platforms.py,sha256=F0bgYzUzCjZ2LbWVvnEq2ya_X_LfRW406LQYFL7bG44,1202
|
71
72
|
ominfra/manage/targets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
72
73
|
ominfra/manage/targets/connection.py,sha256=j2QrVS-QFOZJ47TqwaMt8MSPg0whokysGePagjJg3Jg,4637
|
73
74
|
ominfra/manage/targets/inject.py,sha256=P4597xWM-V3I_gCt2O71OLhYQkkXtuJvkYRsIbhhMcE,1561
|
74
75
|
ominfra/manage/targets/targets.py,sha256=CFl8Uirgn3gfowO1Fn-LBK-6qYqEMFJ9snPUl0gCRuM,1753
|
75
76
|
ominfra/scripts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
76
|
-
ominfra/scripts/journald2aws.py,sha256=
|
77
|
-
ominfra/scripts/manage.py,sha256=
|
78
|
-
ominfra/scripts/supervisor.py,sha256=
|
77
|
+
ominfra/scripts/journald2aws.py,sha256=Ohy311S4ReYSuG773bOr7RNMUt5brXwyIqzcO2bP6Kw,154385
|
78
|
+
ominfra/scripts/manage.py,sha256=rrwrgyaIoTh5UgbmgWkBcamLUB9pZuV5ECytQ5Ozyjc,285230
|
79
|
+
ominfra/scripts/supervisor.py,sha256=S8cxGkya8OhHa3JtrHrh2Gv32-VTPAz1YWQ4zjocimg,273287
|
79
80
|
ominfra/supervisor/LICENSE.txt,sha256=yvqaMNsDhWxziHa9ien6qCW1SkZv-DQlAg96XjfSee8,1746
|
80
81
|
ominfra/supervisor/__init__.py,sha256=Y3l4WY4JRi2uLG6kgbGp93fuGfkxkKwZDvhsa0Rwgtk,15
|
81
82
|
ominfra/supervisor/__main__.py,sha256=I0yFw-C08OOiZ3BF6lF1Oiv789EQXu-_j6whDhQUTEA,66
|
82
|
-
ominfra/supervisor/configs.py,sha256=
|
83
|
+
ominfra/supervisor/configs.py,sha256=InaLW0T93dbAuzKyc6H8wGIFR2oM1GROSiQX9hZY_ko,13711
|
83
84
|
ominfra/supervisor/dispatchers.py,sha256=zXLwQS4Vc6dWw5o9QOL04UMDt7w6CKu9wf19CjUiS2Q,1005
|
84
85
|
ominfra/supervisor/dispatchersimpl.py,sha256=q3dEyOHWTPKm28nmAGisjgIW1BX6O3-SzbYa7nWuTEs,11349
|
85
86
|
ominfra/supervisor/events.py,sha256=XGrtzHr1xm0dwjz329fn9eR0_Ap-LQL6Sk8LJ8eVDEo,6692
|
86
87
|
ominfra/supervisor/exceptions.py,sha256=Qbu211H3CLlSmi9LsSikOwrcL5HgJP9ugvcKWlGTAoI,750
|
87
88
|
ominfra/supervisor/groups.py,sha256=MBbsbt8Zh_WEYkGOr1KXa82gnPVw9wPB2lAnqhugXSc,2457
|
88
89
|
ominfra/supervisor/groupsimpl.py,sha256=PCDyc_Wc-pnvIj56_aEyiA5exCpK6n9iErqnJzO2rZk,2281
|
89
|
-
ominfra/supervisor/http.py,sha256=
|
90
|
+
ominfra/supervisor/http.py,sha256=P8lgeSU1clMDI2oS0sVZvCc0q3OecmUfeJWzQ0PoZKg,3443
|
90
91
|
ominfra/supervisor/inject.py,sha256=6nBEnpE8VLjtYK12z5DGRP7WzgbwLAz5yf__1KnJl6g,4693
|
91
92
|
ominfra/supervisor/io.py,sha256=moaGNaPuYXEAUzLg8Qjo05DEIcOUNYUj8SSr8eT0d24,3198
|
92
|
-
ominfra/supervisor/main.py,sha256=
|
93
|
+
ominfra/supervisor/main.py,sha256=7YrreFNntdRCp6MplCclfnRcgrRIb_UCeohJkDC9Few,4251
|
93
94
|
ominfra/supervisor/pipes.py,sha256=2ZihNTnRNjnIPOtPbm3_pyqO15f7BNs7WnNtO5V8ahM,2231
|
94
95
|
ominfra/supervisor/privileges.py,sha256=kaRTHI7XjqzxEWCeHp3_0J0Vc4gSPugRbXEwxuw6MYE,2054
|
95
96
|
ominfra/supervisor/process.py,sha256=UaubVxsxVqDnbuWVpTH0DTGbJGLO0vGJ9mNcvy2kCXM,217
|
@@ -100,14 +101,14 @@ ominfra/supervisor/signals.py,sha256=jY52naUifcAjd6nICTP1ZW3IQSPsHB4cvbsJo8_QV_U
|
|
100
101
|
ominfra/supervisor/spawning.py,sha256=i1k3tmqWyU-KIN7kel-JVxTVGnLiTIVmZzlstJSZpjM,622
|
101
102
|
ominfra/supervisor/spawningimpl.py,sha256=rWlL-yumu5I1QGhN08XWHVi5HlNPMPkt08D4jEMb_wU,11104
|
102
103
|
ominfra/supervisor/states.py,sha256=x1trJQbItkSegOmotpn5YNcZMLbBL8I3GmhvFCQl4Oo,1400
|
103
|
-
ominfra/supervisor/supervisor.py,sha256=
|
104
|
+
ominfra/supervisor/supervisor.py,sha256=XsQrWjMsv0o0CzI5nZoGybeUnSDouc8X7jSLr920_eQ,8169
|
104
105
|
ominfra/supervisor/types.py,sha256=g6C-NuPWMy7pk-kcnT3mO7auLWElZU_4dhzrUaX--TA,4015
|
105
106
|
ominfra/supervisor/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
106
107
|
ominfra/supervisor/utils/collections.py,sha256=vcfmVYS4QngMdtEI1DvdRIcubmy55Wj40NCzW27_rIY,1361
|
107
108
|
ominfra/supervisor/utils/diag.py,sha256=ujz4gkW7p3wmbaKFM8Hz5eHEwpoUkbB8JeDvcHilCz0,705
|
108
109
|
ominfra/supervisor/utils/fds.py,sha256=lz8DWXzGYvu93dqhWK0WrhXrrJVQ_psoom4Nj_o8g2g,849
|
109
110
|
ominfra/supervisor/utils/fs.py,sha256=ABbNcsCpzSXAvq_ZZSCj61mj5kGnVuC4spUmoWenlqw,1155
|
110
|
-
ominfra/supervisor/utils/os.py,sha256=
|
111
|
+
ominfra/supervisor/utils/os.py,sha256=S-y50uhwUhYklIkYRXTHiejnWj_wtofplaOvFqwS0iM,2399
|
111
112
|
ominfra/supervisor/utils/ostypes.py,sha256=B7VjwbzVesz9we9MztoSk8bH8sTxMIWtILy_Qde0G7w,164
|
112
113
|
ominfra/supervisor/utils/signals.py,sha256=uZkTvissbtq7TlJD4MkTiL3F-zyWmAFUuWQtFjsf0MI,1474
|
113
114
|
ominfra/supervisor/utils/strings.py,sha256=gZOYiFI3ZQEMrXq6VlK2WadK12JPO6zYjPenq_OPcYU,2475
|
@@ -117,9 +118,9 @@ ominfra/tailscale/api.py,sha256=C5-t_b6jZXUWcy5k8bXm7CFnk73pSdrlMOgGDeGVrpw,1370
|
|
117
118
|
ominfra/tailscale/cli.py,sha256=h6akQJMl0KuWLHS7Ur6WcBZ2JwF0DJQhsPTnFBdGyNk,3571
|
118
119
|
ominfra/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
119
120
|
ominfra/tools/listresources.py,sha256=4qVg5txsb10EHhvqXXeM6gJ2jx9LbroEnPydDv1uXs0,6176
|
120
|
-
ominfra-0.0.0.
|
121
|
-
ominfra-0.0.0.
|
122
|
-
ominfra-0.0.0.
|
123
|
-
ominfra-0.0.0.
|
124
|
-
ominfra-0.0.0.
|
125
|
-
ominfra-0.0.0.
|
121
|
+
ominfra-0.0.0.dev158.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
|
122
|
+
ominfra-0.0.0.dev158.dist-info/METADATA,sha256=IgWx7agc84HpjibHPIlR1w3jFX39Cco0yeMtrmWaC-8,731
|
123
|
+
ominfra-0.0.0.dev158.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
|
124
|
+
ominfra-0.0.0.dev158.dist-info/entry_points.txt,sha256=kgecQ2MgGrM9qK744BoKS3tMesaC3yjLnl9pa5CRczg,37
|
125
|
+
ominfra-0.0.0.dev158.dist-info/top_level.txt,sha256=E-b2OHkk_AOBLXHYZQ2EOFKl-_6uOGd8EjeG-Zy6h_w,8
|
126
|
+
ominfra-0.0.0.dev158.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|