A pure Python client library for the IBM Z HMC Web Services API.
Project description
zhmcclient - A pure Python client library for the IBM Z HMC Web Services API
Overview
The zhmcclient package is a client library written in pure Python that interacts with the Web Services API of the Hardware Management Console (HMC) of IBM Z or LinuxONE machines. The goal of this package is to make the HMC Web Services API easily consumable for Python programmers.
The HMC Web Services API is the access point for any external tools to manage the IBM Z or LinuxONE platform. It supports management of the lifecycle and configuration of various platform resources, such as partitions, CPU, memory, virtual switches, I/O adapters, and more.
The zhmcclient package encapsulates both protocols supported by the HMC Web Services API:
REST over HTTPS for request/response-style operations driven by the client. Most of these operations complete synchronously, but some long-running tasks complete asynchronously.
JMS (Java Messaging Services) for notifications from the HMC to the client. This can be used to be notified about changes in the system, or about completion of asynchronous tasks started using REST.
Installation
The quick way:
$ pip install zhmcclient
For more details, see the Installation section in the documentation.
Quickstart
The following example code lists the machines (CPCs) managed by an HMC:
#!/usr/bin/env python
import zhmcclient
import requests.packages.urllib3
requests.packages.urllib3.disable_warnings()
# Set these variables for your environment:
hmc_host = "<IP address or hostname of the HMC>"
hmc_userid = "<userid on that HMC>"
hmc_password = "<password of that HMC userid>"
session = zhmcclient.Session(hmc_host, hmc_userid, hmc_password)
client = zhmcclient.Client(session)
cpcs = client.cpcs.list()
for cpc in cpcs:
print(cpc)
Possible output when running the script:
Cpc(name=P000S67B, object-uri=/api/cpcs/fa1f2466-12df-311a-804c-4ed2cc1d6564, status=service-required)
Documentation and Change Log
For the latest released version on PyPI:
zhmc CLI
Before version 0.18.0 of the zhmcclient package, it contained the zhmc CLI. Starting with zhmcclient version 0.18.0, the zhmc CLI has been moved from this project into the new zhmccli project.
If your project uses the zhmc CLI, and you are upgrading the zhmcclient package from before 0.18.0 to 0.18.0 or later, your project will need to add the zhmccli package to its dependencies.
Contributing
For information on how to contribute to this project, see the Development section in the documentation.
License
The zhmcclient package is licensed under the Apache 2.0 License.
Project details
Release history Release notifications | RSS feed
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 zhmcclient-0.29.0.tar.gz
.
File metadata
- Download URL: zhmcclient-0.29.0.tar.gz
- Upload date:
- Size: 163.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c373c56931d9592ba58e012e953cc32bdb8a168194caf3a05f98b91480c87712 |
|
MD5 | 63ed6e71be6df9799598640bad49db76 |
|
BLAKE2b-256 | 531cc4d8f61e5ea0048c38c7532e9761073ded70485d21f57e9a5e7b49550148 |
File details
Details for the file zhmcclient-0.29.0-py2.py3-none-any.whl
.
File metadata
- Download URL: zhmcclient-0.29.0-py2.py3-none-any.whl
- Upload date:
- Size: 215.2 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ce0e51fcd1b57f60c969326c9fce3f626f40272e04b927e219985d16dcf1a571 |
|
MD5 | e9c0e326cd2e9d5ac1dcdbc71c43ba4c |
|
BLAKE2b-256 | e9c3aa333a8efc18d1c581c492d9e369dcb35db3ce625998b8abe563c9e691bf |