Generating Python Wheels for ORAS - intersystems/ipm GitHub Wiki
Staring at IPM v0.10, ORAS registries are supported. The core functionality of interacting with ORAS registries are implemented using the Python oras
library, which is included with IPM as wheel files. To generate these wheels, follow these steps
- Create and actviate a virtual environment (optional, but recommended to guarantee a clean slate)
python3 -m venv my-env-name
source my-env-name/bin/activate
- Create a requirements.txt file containing the following content
oras==0.1.30
charset_normalizer<3
- Run the following command to download the wheels into a
wheels/
folder
python3 -m pip download -r requirements.txt -d wheels
- The generated wheel files will be downloaded to
wheels/
folder - Check that all wheels end with suffix
-py3-none-any.whl
, with the execption ofrpds-py
. Copy all wheels except the one forrpds-py
to the IPM repo folder. -
rpds-py
is included in IPM via a pure python implementationrpds.py
that will be copied to<iris>/lib/python/
folder. When users install the realrpds-py
package, it will be placed in<iris>/mgr/python
, which supersedes this.
Note: the wheel files shouldn't need to be updated with the exception of certifi
, which includes a TLS root certificate. The current certificate won't expire until 2028. If a user has the need to use TLS, they probably has access to pypi.org and can update the certifi
easily.