https://github.com/release-engineering/ubi-config
A Python library for reading UBI configuration
https://github.com/release-engineering/ubi-config
Last synced: 11 months ago
JSON representation
A Python library for reading UBI configuration
- Host: GitHub
- URL: https://github.com/release-engineering/ubi-config
- Owner: release-engineering
- License: gpl-3.0
- Created: 2019-03-11T00:35:22.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2025-04-02T07:34:53.000Z (about 1 year ago)
- Last Synced: 2025-04-02T08:29:49.904Z (about 1 year ago)
- Language: Python
- Homepage:
- Size: 486 KB
- Stars: 4
- Watchers: 10
- Forks: 12
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
ubiconfig
=========
A Python library for accessing Universal Base Image configuration
[](https://github.com/release-engineering/ubi-config/actions/workflows/tox-test.yml))
[](https://codecov.io/gh/release-engineering/ubi-config)
[](https://codeclimate.com/github/release-engineering/ubi-config/maintainability)
- [Source](https://github.com/release-engineering/ubi-config)
- [Documentation](https://release-engineering.github.io/ubi-config/)
- [PyPI](https://pypi.org/project/ubi-config)
Installation
------------
Install the `ubi-config` package from PyPI.
```
pip install ubi-config
```
Usage Example
-------------
When there is `DEFAULT_UBI_REPO` set, user can load the config by passing the config file
name to `get_loader().load()`
```python
from ubiconfig import get_loader
config = get_loader().load('enterprise-linux-server-x86_64.yaml')
# config has been validated and is now a Python object with relevant properties
package_whitelist = config.packages.whitelist
print(package_whitelist)
```
Or, get all config files from the repo:
```python
from ubiconfig import get_loader
configs = get_loader().load_all()
# returns a list of UbiConfig objects
```
Or, user can also load the config from local file:
```python
from ubiconfig import get_loader
config = get_loader("/my/config/dir").load('enterprise-linux-server-x86_64.yaml')
```
License
-------
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.