Python library and cli to communicate with DPUs and IPUs
Project description
pydpu
Python library and cli to communicate with DPUs and IPUs
I Want To Contribute
This project welcomes contributions and suggestions. We are happy to have the Community involved via submission of Issues and Pull Requests (with substantive content or even just fixes). We are hoping for the documents, test framework, etc. to become a community process with active engagement. PRs can be reviewed by by any number of people, and a maintainer may accept.
See CONTRIBUTING and GitHub Basic Process for more details.
Installation
There are several ways of running this CLI.
Docker
docker pull opiproject/pydpu:<version>
You can specify a version like 0.1.1
or use latest
to get the most up-to-date version.
Run latest version of the CLI in a container:
docker run -it --rm --network=host opiproject/pydpu:latest --help
Replace --help
with any pydpu
command, without pydpu
itself.
PyPI
pip install pydpu
Usage
Version
To get version, run:
$ pydpu --version
dpu, version 0.1.1
Redfish
To communicate over redfish, run:
pydpu --address=10.10.10.10 redfish --username root --password 0penBmc test
Inventory
To get inventory, run:
pydpu --address=localhost:50151 inventory get
Ipsec
To create a tunnel, run:
pydpu --address=localhost:50151 ipsec create-tunnel
To get statistics, run:
pydpu --address=localhost:50151 ipsec stats
Storage
To create a subsystem, run:
pydpu --address=localhost:50151 storage subsystem
To create a controller, run:
pydpu --address=localhost:50151 storage controller
To create a namespace, run:
pydpu --address=localhost:50151 storage namespace
Evpn
To create a logical bridge, run:
pydpu --address=localhost:50151 evpn bridge
To create a bridge port, run:
pydpu --address=localhost:50151 evpn port
To create a vrf, run:
pydpu --address=localhost:50151 evpn vrf
To create a svi, run:
pydpu --address=localhost:50151 evpn svi
Packaging
This project uses poetry to manage dependencies, build, etc.
Releasing new versions
# Make sure you have dev dependencies installed
$ poetry install --group dev
# Use bump2version to update version strings and create a new tag
$ bump2version <patch|minor|major>
# Push new tag
$ git push --tags
# Create GitHub release
$ gh release create v$(poetry version -s) --generate-notes
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
File details
Details for the file pydpu-0.2.1.tar.gz
.
File metadata
- Download URL: pydpu-0.2.1.tar.gz
- Upload date:
- Size: 112.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.2 CPython/3.12.3 Linux/6.5.0-1021-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b36e879f493fe640fa9ff9e1a924824580f736a8fe474642a1c8eb8b8725a01c |
|
MD5 | ec437839af57348e8d6f7d27f2faac81 |
|
BLAKE2b-256 | 98c874fc98928ad7ec4b97c1d190cd485785a4727d9de00c07894f5083461071 |
File details
Details for the file pydpu-0.2.1-py3-none-any.whl
.
File metadata
- Download URL: pydpu-0.2.1-py3-none-any.whl
- Upload date:
- Size: 153.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.2 CPython/3.12.3 Linux/6.5.0-1021-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d60dce62b08851ac37de25c670d4a8a88b660a2ac1dfaae4685b91d705f7b295 |
|
MD5 | 7072e67b47079c7c65acb6c682ddf25a |
|
BLAKE2b-256 | e56a98e4722d5885892d6a0ef9e00eed670cbf8aed6d98e3020fe4194960d93e |