Environment Manager CLI wrapping package managers calls as serialized config file
Project description
kloch
[!WARNING] Despite being public, this repository is still in development stage and have not been tested extensively yet.
kloch /klˈoʃ/ is a configuration system for launching software.
Configurations are yaml files referred as "environment profile" which specify
the parameters for one or multiple pre-defined launchers.
Launchers are internally defined python objects that specify how to execute a combinations of options and (optional) command.
In a very abstract way, kloch is a system that:
- serialize the arguments passed to a pre-defined function as yaml files.
- execute that function by unserializing the parameters provided at runtime.
kloch was initially designed as the environment manager layer when used with
the rez package manager.
features
- offer a CLI and a public python API
- custom config format for environment profiles:
- inheritance
- inheritance merging rules with token system
- arbitrary profile locations with flexible configuration
- plugin system for launchers
programming distinctions
- robust logging.
- good amount of unittesting
- good documentation with a lot of doc created at code level
- python 3.7+ support (EOL was in June 2023).
- PyYAML as only mandatory external python dependency.
- flexible "meta" configuration from environment variable or config file.
- clear public and private API
quick-start
pip install kloch
kloch --help
# or:
python -m kloch --help
documentation
Check the detailed documentation at https://knotsanimation.github.io/kloch/
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file kloch-0.13.0.tar.gz.
File metadata
- Download URL: kloch-0.13.0.tar.gz
- Upload date:
- Size: 27.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4203d240dfceefcd0e8f4cd8882df31f5feb685c365d0153a6784d04a3c57c3d
|
|
| MD5 |
a0cbf2fb588b9b2a83f47c476f53ee18
|
|
| BLAKE2b-256 |
2af07e2eebf6dfc846e48b33a7b8c7c3a1a98d495a30292994ce9aa252fefa1e
|
File details
Details for the file kloch-0.13.0-py3-none-any.whl.
File metadata
- Download URL: kloch-0.13.0-py3-none-any.whl
- Upload date:
- Size: 37.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
039c0425a9050fe14070a882674e1394e16d8f949f7aa3f1fc38895f0a984dc1
|
|
| MD5 |
13cfc0d9f563458a26e35ec980536a89
|
|
| BLAKE2b-256 |
4d5317119bfa2311a159d67f544d237bae46fec9ef2f0a13d5ef950b5fd3bdc6
|