ominfra 0.0.0.dev384__tar.gz → 0.0.0.dev386__tar.gz
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-0.0.0.dev384/ominfra.egg-info → ominfra-0.0.0.dev386}/PKG-INFO +3 -3
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/scripts/manage.py +222 -70
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386/ominfra.egg-info}/PKG-INFO +3 -3
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra.egg-info/requires.txt +2 -2
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/pyproject.toml +3 -3
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/LICENSE +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/MANIFEST.in +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/README.md +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/.manifests.json +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/__about__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/__main__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/auth.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/cli.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/dataclasses.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/instancetypes/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/instancetypes/__main__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/instancetypes/cache.json.gz +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/instancetypes/cache.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/instancetypes/cli.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/journald2aws/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/journald2aws/__main__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/journald2aws/cursor.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/journald2aws/driver.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/journald2aws/main.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/journald2aws/poster.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/logs.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/metadata.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/models/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/models/base.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/models/gen/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/models/gen/__main__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/models/gen/cli.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/models/gen/gen.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/models/services/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/models/services/ec2.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/models/services/lambda_.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/models/services/rds.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/models/services/s3.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/models/services/services.toml +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/gcp/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/gcp/api.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/gcp/auth.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/commands/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/commands/runners.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/commands/ssh.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/journald/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/journald/fields.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/journald/genmessages.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/journald/messages.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/journald/tailer.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/__main__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/bootstrap.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/bootstrap_.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/commands/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/commands/base.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/commands/inject.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/commands/injection.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/commands/local.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/commands/marshal.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/commands/ping.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/commands/subprocess.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/commands/types.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/config.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/apps.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/commands.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/conf/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/conf/inject.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/conf/manager.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/conf/specs.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/config.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/deploy.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/git.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/inject.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/injection.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/interp.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/nginx.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/paths/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/paths/inject.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/paths/manager.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/paths/owners.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/paths/paths.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/paths/specs.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/paths/types.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/specs.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/systemd.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/tags.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/tmp.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/types.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/deploy/venvs.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/inject.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/main.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/marshal.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/remote/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/remote/_main.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/remote/channel.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/remote/config.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/remote/connection.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/remote/execution.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/remote/inject.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/remote/payload.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/remote/spawning.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/system/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/system/commands.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/system/config.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/system/inject.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/system/packages.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/system/platforms.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/targets/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/targets/bestpython.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/targets/bestpython.sh +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/targets/connection.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/targets/inject.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/manage/targets/targets.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/pyremote.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/scripts/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/scripts/journald2aws.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/scripts/supervisor.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/LICENSE.txt +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/__main__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/configs.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/dispatchers.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/dispatchersimpl.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/errors.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/events.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/groups.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/groupsimpl.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/http.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/inject.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/io.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/main.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/pipes.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/privileges.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/process.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/processimpl.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/setup.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/setupimpl.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/signals.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/spawning.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/spawningimpl.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/states.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/supervisor.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/types.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/utils/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/utils/collections.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/utils/diag.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/utils/fds.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/utils/fs.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/utils/os.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/utils/ostypes.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/utils/signals.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/utils/strings.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/supervisor/utils/users.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/systemd.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/tailscale/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/tailscale/api.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/tailscale/cli.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/threadworkers.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/tools/__init__.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/tools/listresources.py +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra.egg-info/SOURCES.txt +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra.egg-info/dependency_links.txt +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra.egg-info/entry_points.txt +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra.egg-info/top_level.txt +0 -0
- {ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: ominfra
|
3
|
-
Version: 0.0.0.
|
3
|
+
Version: 0.0.0.dev386
|
4
4
|
Summary: ominfra
|
5
5
|
Author: wrmsr
|
6
6
|
License-Expression: BSD-3-Clause
|
@@ -14,8 +14,8 @@ Classifier: Programming Language :: Python :: 3.13
|
|
14
14
|
Requires-Python: >=3.13
|
15
15
|
Description-Content-Type: text/markdown
|
16
16
|
License-File: LICENSE
|
17
|
-
Requires-Dist: omdev==0.0.0.
|
18
|
-
Requires-Dist: omlish==0.0.0.
|
17
|
+
Requires-Dist: omdev==0.0.0.dev386
|
18
|
+
Requires-Dist: omlish==0.0.0.dev386
|
19
19
|
Provides-Extra: all
|
20
20
|
Requires-Dist: paramiko~=4.0; extra == "all"
|
21
21
|
Requires-Dist: asyncssh~=2.21; extra == "all"
|
@@ -155,76 +155,6 @@ SubprocessChannelOption = ta.Literal['pipe', 'stdout', 'devnull'] # ta.TypeAlia
|
|
155
155
|
SystemPackageOrStr = ta.Union['SystemPackage', str] # ta.TypeAlias
|
156
156
|
|
157
157
|
|
158
|
-
########################################
|
159
|
-
# ../../../omdev/home/paths.py
|
160
|
-
"""
|
161
|
-
TODO:
|
162
|
-
- XDG cache root
|
163
|
-
"""
|
164
|
-
|
165
|
-
|
166
|
-
##
|
167
|
-
|
168
|
-
|
169
|
-
HOME_DIR_ENV_VAR = 'OMLISH_HOME'
|
170
|
-
DEFAULT_HOME_DIR = '~/.omlish'
|
171
|
-
|
172
|
-
|
173
|
-
def get_home_dir() -> str:
|
174
|
-
return os.path.expanduser(os.getenv(HOME_DIR_ENV_VAR, DEFAULT_HOME_DIR))
|
175
|
-
|
176
|
-
|
177
|
-
#
|
178
|
-
|
179
|
-
|
180
|
-
class HomePaths:
|
181
|
-
def __init__(self, home_dir: ta.Optional[str] = None) -> None:
|
182
|
-
super().__init__()
|
183
|
-
|
184
|
-
if home_dir is None:
|
185
|
-
home_dir = get_home_dir()
|
186
|
-
self._home_dir = home_dir
|
187
|
-
|
188
|
-
@property
|
189
|
-
def home_dir(self) -> str:
|
190
|
-
return self._home_dir
|
191
|
-
|
192
|
-
@property
|
193
|
-
def config_dir(self) -> str:
|
194
|
-
return os.path.join(self._home_dir, 'config')
|
195
|
-
|
196
|
-
@property
|
197
|
-
def log_dir(self) -> str:
|
198
|
-
return os.path.join(self._home_dir, 'log')
|
199
|
-
|
200
|
-
@property
|
201
|
-
def run_dir(self) -> str:
|
202
|
-
return os.path.join(self._home_dir, 'run')
|
203
|
-
|
204
|
-
@property
|
205
|
-
def shadow_dir(self) -> str:
|
206
|
-
return os.path.join(self._home_dir, 'shadow')
|
207
|
-
|
208
|
-
@property
|
209
|
-
def state_dir(self) -> str:
|
210
|
-
return os.path.join(self._home_dir, 'state')
|
211
|
-
|
212
|
-
|
213
|
-
def get_home_paths() -> HomePaths:
|
214
|
-
return HomePaths()
|
215
|
-
|
216
|
-
|
217
|
-
##
|
218
|
-
|
219
|
-
|
220
|
-
CACHE_DIR_ENV_VAR = 'OMLISH_CACHE'
|
221
|
-
DEFAULT_CACHE_DIR = '~/.cache/omlish'
|
222
|
-
|
223
|
-
|
224
|
-
def get_cache_dir() -> str:
|
225
|
-
return os.path.expanduser(os.getenv(DEFAULT_CACHE_DIR, DEFAULT_CACHE_DIR))
|
226
|
-
|
227
|
-
|
228
158
|
########################################
|
229
159
|
# ../../../omdev/packaging/versions.py
|
230
160
|
# Copyright (c) Donald Stufft and individual contributors.
|
@@ -3867,6 +3797,158 @@ def set_process_deathsig(sig: int) -> bool:
|
|
3867
3797
|
return False
|
3868
3798
|
|
3869
3799
|
|
3800
|
+
########################################
|
3801
|
+
# ../../../omlish/os/environ.py
|
3802
|
+
|
3803
|
+
|
3804
|
+
##
|
3805
|
+
|
3806
|
+
|
3807
|
+
class EnvVar:
|
3808
|
+
def __init__(self, name: str) -> None:
|
3809
|
+
super().__init__()
|
3810
|
+
|
3811
|
+
if not isinstance(name, str):
|
3812
|
+
raise TypeError(name)
|
3813
|
+
if not name:
|
3814
|
+
raise NameError(name)
|
3815
|
+
self._name = name
|
3816
|
+
|
3817
|
+
@property
|
3818
|
+
def name(self) -> str:
|
3819
|
+
return self._name
|
3820
|
+
|
3821
|
+
def __init_subclass__(cls, **kwargs):
|
3822
|
+
raise TypeError
|
3823
|
+
|
3824
|
+
def __repr__(self) -> str:
|
3825
|
+
return f'{self.__class__.__name__}({self._name!r})'
|
3826
|
+
|
3827
|
+
def __hash__(self) -> int:
|
3828
|
+
return hash((self.__class__, self._name))
|
3829
|
+
|
3830
|
+
def __eq__(self, other):
|
3831
|
+
if not isinstance(other, EnvVar):
|
3832
|
+
return NotImplemented
|
3833
|
+
return self._name == other._name
|
3834
|
+
|
3835
|
+
def __bool__(self) -> bool:
|
3836
|
+
raise TypeError
|
3837
|
+
|
3838
|
+
def __str__(self) -> str:
|
3839
|
+
raise TypeError
|
3840
|
+
|
3841
|
+
#
|
3842
|
+
|
3843
|
+
@classmethod
|
3844
|
+
def _get_mut_environ(
|
3845
|
+
cls,
|
3846
|
+
environ: ta.Optional[ta.MutableMapping[str, str]] = None,
|
3847
|
+
) -> ta.MutableMapping[str, str]:
|
3848
|
+
if environ is None:
|
3849
|
+
return os.environ
|
3850
|
+
return environ
|
3851
|
+
|
3852
|
+
@classmethod
|
3853
|
+
def _get_environ(
|
3854
|
+
cls,
|
3855
|
+
environ: ta.Optional[ta.Mapping[str, str]] = None,
|
3856
|
+
) -> ta.Mapping[str, str]:
|
3857
|
+
if environ is None:
|
3858
|
+
return cls._get_mut_environ()
|
3859
|
+
return environ
|
3860
|
+
|
3861
|
+
#
|
3862
|
+
|
3863
|
+
def is_set(self, environ: ta.Optional[ta.Mapping[str, str]] = None) -> bool:
|
3864
|
+
return self._name in self._get_environ(environ)
|
3865
|
+
|
3866
|
+
_NO_DEFAULT: ta.ClassVar[ta.Any] = object()
|
3867
|
+
|
3868
|
+
@ta.overload
|
3869
|
+
def get(
|
3870
|
+
self,
|
3871
|
+
*,
|
3872
|
+
environ: ta.Optional[ta.Mapping[str, str]] = None,
|
3873
|
+
) -> str:
|
3874
|
+
...
|
3875
|
+
|
3876
|
+
@ta.overload
|
3877
|
+
def get(
|
3878
|
+
self,
|
3879
|
+
default: str,
|
3880
|
+
/,
|
3881
|
+
*,
|
3882
|
+
environ: ta.Optional[ta.Mapping[str, str]] = None,
|
3883
|
+
) -> str:
|
3884
|
+
...
|
3885
|
+
|
3886
|
+
@ta.overload
|
3887
|
+
def get(
|
3888
|
+
self,
|
3889
|
+
default: ta.Optional[str],
|
3890
|
+
/,
|
3891
|
+
*,
|
3892
|
+
environ: ta.Optional[ta.Mapping[str, str]] = None,
|
3893
|
+
) -> ta.Optional[str]:
|
3894
|
+
...
|
3895
|
+
|
3896
|
+
@ta.overload
|
3897
|
+
def get(
|
3898
|
+
self,
|
3899
|
+
default: ta.Callable[[], str],
|
3900
|
+
/,
|
3901
|
+
*,
|
3902
|
+
environ: ta.Optional[ta.Mapping[str, str]] = None,
|
3903
|
+
) -> str:
|
3904
|
+
...
|
3905
|
+
|
3906
|
+
@ta.overload
|
3907
|
+
def get(
|
3908
|
+
self,
|
3909
|
+
default: ta.Callable[[], ta.Optional[str]],
|
3910
|
+
/,
|
3911
|
+
*,
|
3912
|
+
environ: ta.Optional[ta.Mapping[str, str]] = None,
|
3913
|
+
) -> ta.Optional[str]:
|
3914
|
+
...
|
3915
|
+
|
3916
|
+
def get(self, default=_NO_DEFAULT, /, *, environ=None):
|
3917
|
+
environ = self._get_environ(environ)
|
3918
|
+
try:
|
3919
|
+
return environ[self._name]
|
3920
|
+
except KeyError:
|
3921
|
+
if default is self._NO_DEFAULT:
|
3922
|
+
raise
|
3923
|
+
elif callable(default):
|
3924
|
+
return default()
|
3925
|
+
else:
|
3926
|
+
return default
|
3927
|
+
|
3928
|
+
#
|
3929
|
+
|
3930
|
+
def set(self, value: ta.Optional[str], *, environ: ta.Optional[ta.MutableMapping[str, str]] = None) -> None:
|
3931
|
+
environ = self._get_mut_environ(environ)
|
3932
|
+
if value is not None:
|
3933
|
+
environ[self._name] = value
|
3934
|
+
else:
|
3935
|
+
del environ[self._name]
|
3936
|
+
|
3937
|
+
@contextlib.contextmanager
|
3938
|
+
def set_context(
|
3939
|
+
self,
|
3940
|
+
value: ta.Optional[str],
|
3941
|
+
*,
|
3942
|
+
environ: ta.Optional[ta.MutableMapping[str, str]] = None,
|
3943
|
+
) -> ta.Iterator[ta.Optional[str]]:
|
3944
|
+
prev = self.get(None, environ=environ)
|
3945
|
+
self.set(value, environ=environ)
|
3946
|
+
try:
|
3947
|
+
yield prev
|
3948
|
+
finally:
|
3949
|
+
self.set(prev, environ=environ)
|
3950
|
+
|
3951
|
+
|
3870
3952
|
########################################
|
3871
3953
|
# ../../../omlish/os/linux.py
|
3872
3954
|
"""
|
@@ -4435,6 +4517,76 @@ def shlex_maybe_quote(s: str) -> str:
|
|
4435
4517
|
return s
|
4436
4518
|
|
4437
4519
|
|
4520
|
+
########################################
|
4521
|
+
# ../../../omdev/home/paths.py
|
4522
|
+
"""
|
4523
|
+
TODO:
|
4524
|
+
- XDG cache root
|
4525
|
+
"""
|
4526
|
+
|
4527
|
+
|
4528
|
+
##
|
4529
|
+
|
4530
|
+
|
4531
|
+
HOME_DIR_ENV_VAR = EnvVar('OMLISH_HOME')
|
4532
|
+
DEFAULT_HOME_DIR = '~/.omlish'
|
4533
|
+
|
4534
|
+
|
4535
|
+
def get_home_dir() -> str:
|
4536
|
+
return os.path.expanduser(HOME_DIR_ENV_VAR.get(DEFAULT_HOME_DIR))
|
4537
|
+
|
4538
|
+
|
4539
|
+
#
|
4540
|
+
|
4541
|
+
|
4542
|
+
class HomePaths:
|
4543
|
+
def __init__(self, home_dir: ta.Optional[str] = None) -> None:
|
4544
|
+
super().__init__()
|
4545
|
+
|
4546
|
+
if home_dir is None:
|
4547
|
+
home_dir = get_home_dir()
|
4548
|
+
self._home_dir = home_dir
|
4549
|
+
|
4550
|
+
@property
|
4551
|
+
def home_dir(self) -> str:
|
4552
|
+
return self._home_dir
|
4553
|
+
|
4554
|
+
@property
|
4555
|
+
def config_dir(self) -> str:
|
4556
|
+
return os.path.join(self._home_dir, 'config')
|
4557
|
+
|
4558
|
+
@property
|
4559
|
+
def log_dir(self) -> str:
|
4560
|
+
return os.path.join(self._home_dir, 'log')
|
4561
|
+
|
4562
|
+
@property
|
4563
|
+
def run_dir(self) -> str:
|
4564
|
+
return os.path.join(self._home_dir, 'run')
|
4565
|
+
|
4566
|
+
@property
|
4567
|
+
def shadow_dir(self) -> str:
|
4568
|
+
return os.path.join(self._home_dir, 'shadow')
|
4569
|
+
|
4570
|
+
@property
|
4571
|
+
def state_dir(self) -> str:
|
4572
|
+
return os.path.join(self._home_dir, 'state')
|
4573
|
+
|
4574
|
+
|
4575
|
+
def get_home_paths() -> HomePaths:
|
4576
|
+
return HomePaths()
|
4577
|
+
|
4578
|
+
|
4579
|
+
##
|
4580
|
+
|
4581
|
+
|
4582
|
+
CACHE_DIR_ENV_VAR = 'OMLISH_CACHE'
|
4583
|
+
DEFAULT_CACHE_DIR = '~/.cache/omlish'
|
4584
|
+
|
4585
|
+
|
4586
|
+
def get_cache_dir() -> str:
|
4587
|
+
return os.path.expanduser(os.getenv(DEFAULT_CACHE_DIR, DEFAULT_CACHE_DIR))
|
4588
|
+
|
4589
|
+
|
4438
4590
|
########################################
|
4439
4591
|
# ../../../omdev/packaging/specifiers.py
|
4440
4592
|
# Copyright (c) Donald Stufft and individual contributors.
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: ominfra
|
3
|
-
Version: 0.0.0.
|
3
|
+
Version: 0.0.0.dev386
|
4
4
|
Summary: ominfra
|
5
5
|
Author: wrmsr
|
6
6
|
License-Expression: BSD-3-Clause
|
@@ -14,8 +14,8 @@ Classifier: Programming Language :: Python :: 3.13
|
|
14
14
|
Requires-Python: >=3.13
|
15
15
|
Description-Content-Type: text/markdown
|
16
16
|
License-File: LICENSE
|
17
|
-
Requires-Dist: omdev==0.0.0.
|
18
|
-
Requires-Dist: omlish==0.0.0.
|
17
|
+
Requires-Dist: omdev==0.0.0.dev386
|
18
|
+
Requires-Dist: omlish==0.0.0.dev386
|
19
19
|
Provides-Extra: all
|
20
20
|
Requires-Dist: paramiko~=4.0; extra == "all"
|
21
21
|
Requires-Dist: asyncssh~=2.21; extra == "all"
|
@@ -13,7 +13,7 @@ urls = {source = 'https://github.com/wrmsr/omlish'}
|
|
13
13
|
license = 'BSD-3-Clause'
|
14
14
|
readme = 'README.md'
|
15
15
|
requires-python = '>=3.13'
|
16
|
-
version = '0.0.0.
|
16
|
+
version = '0.0.0.dev386'
|
17
17
|
classifiers = [
|
18
18
|
'Development Status :: 2 - Pre-Alpha',
|
19
19
|
'Intended Audience :: Developers',
|
@@ -24,8 +24,8 @@ classifiers = [
|
|
24
24
|
]
|
25
25
|
description = 'ominfra'
|
26
26
|
dependencies = [
|
27
|
-
'omdev == 0.0.0.
|
28
|
-
'omlish == 0.0.0.
|
27
|
+
'omdev == 0.0.0.dev386',
|
28
|
+
'omlish == 0.0.0.dev386',
|
29
29
|
]
|
30
30
|
|
31
31
|
[project.optional-dependencies]
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/instancetypes/cache.json.gz
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/models/services/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{ominfra-0.0.0.dev384 → ominfra-0.0.0.dev386}/ominfra/clouds/aws/models/services/services.toml
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|