Skip to main content

Python binding for the PowerVM REST API

Project description

NOTE

Current versions should utilize the local authentication mechanism. The remote authentication mechanism is intended only for development and test purposes for the time being.

Overview

pypowervm provides a Python-based API wrapper for interaction with IBM PowerVM-based systems.

License

The library’s license can be found in the LICENSE file. It must be reviewed prior to use.

Project Structure

  • debian/: Debian packaging metadata and controls.

  • pypowervm/: Project source code.

    • helpers/: Decorator methods suitable for passing to the helpers parameter of the pypowervm.adapter.Adapter initializer.

    • locale/: Translated message files for internationalization (I18N).

    • tasks/: Modules for performing complex tasks on PowerVM objects.

      • monitor/: Modules for tasks specific to the PowerVM Performance and Capacity Monitoring (PCM) API.

    • tests/: Functional and unit tests. The directory and file structure mirrors that of the project code. For example, tests for module pypowervm/wrappers/logical_partition.py can be found in pypowervm/tests/wrappers/test_logical_partition.py.

      • data/: Data files used by test cases. These are generally XML dumps obtained from real PowerVM REST API servers, often via the utilities found in pypowervm/tests/test_utils/.

      • helpers/: Tests for modules under pypowervm/helpers/.

      • locale/: Directory structure containing sample internationalization (I18N) files for I18N testing.

      • tasks/: Tests for modules under pypowervm/tasks/.

        • monitor/: Tests for modules under pypowervm/tasks/monitor/.

      • test_utils/: Utilities useful for test development and implementation.

      • utils/: Tests for modules under pypowervm/utils/.

      • wrappers/: Tests for modules under pypowervm/wrappers/.

        • pcm/: Tests for modules under pypowervm/wrappers/pcm/.

    • utils/: Common helper utilities.

    • wrappers/: Modules presenting intuitive hierarchical views and controls on PowerVM REST objects. Simple operations involving getting or setting single, independent attributes on an object are handled by the wrappers defined here.

      • pcm/: Wrapper modules specific to the PowerVM Performance and Capacity Monitoring (PCM) API.

Using Sonar

To enable sonar code scans through tox there are a few steps involved.

  • Install sonar locally. See: http://www.sonarqube.org/downloads/

  • Create a host mapping in /etc/hosts for the name ‘sonar-server’. If the sonar server were on the local host then the entry might be:

    127.0.0.1  sonar-server

    Alternatively, you can set the environment variable SONAR_SERVER prior to invoking tox, to specify the server to use.

  • The following environment variable must be set in order to log onto the sonar server:

    SONAR_USER
    SONAR_PASSWORD

    An example invocation:

    # SONAR_USER=user SONAR_PASSWORD=password tox -e sonar
  • Sonar output is placed in:

    .sonar/

Developer Notes

  • The property pypowervm.base_partition.IOSlot.adapter is deprecated and will be removed no sooner than January 1st, 2017. It has been replaced by the pypowervm.base_partition.IOSlot.io_adapter property. Removal will break compatibility with PowerVC 1.3.0.0 and 1.3.0.1. The issue is resolved as of PowerVC 1.3.0.2.

  • The xag argument to the pypowervm.wrappers.entry_wrapper.EntryWrapper.update method is deprecated and will be removed no sooner than January 1st, 2017.

  • The xags member of the pypowervm.wrappers.virtual_io_server.VIOS class is deprecated and will be removed no sooner than January 1st, 2017. Please use the members of pypowervm.const.XAG instead.

  • Remote Restart in a NovaLink environment is handled by the consuming management layer, not by NovaLink itself. As such, the properties rr_enabled and rr_state of pypowervm.wrappers.logical_partition.LPAR should not be used. These properties are now deprecated and will be removed no sooner than January 1st, 2017. Use the srr_enabled property instead.

  • The method pypowervm.tasks.storage.crt_lu_linked_clone is deprecated and will be removed no sooner than January 1st, 2017. You should now use the pypowervm.tasks.storage.crt_lu method to create a linked clone by passing the source image LU wrapper via the clone parameter.

  • The Adapter cache is removed as of release 1.0.0.4. Attempting to create an Adapter with use_cache=True will result in a CacheNotSupportedException.

  • The property pypowervm.wrappers.managed_system.IOSlot.pci_sub_dev_id is deprecated and will be removed no sooner than January 1st, 2019. It has been replaced by the pypowervm.wrappers.managed_system.IOSlot.pci_subsys_dev_id property.

  • The property pypowervm.wrappers.managed_system.IOSlot.pci_revision_id is deprecated and will be removed no sooner than January 1st, 2019. It has been replaced by the pypowervm.wrappers.managed_system.IOSlot.pci_rev_id property.

  • The property pypowervm.wrappers.managed_system.IOSlot.pci_sub_vendor_id is deprecated and will be removed no sooner than January 1st, 2019. It has been replaced by the pypowervm.wrappers.managed_system.IOSlot.pci_subsys_vendor_id property.

  • The property pypowervm.wrappers.managed_system.IOSlot.dyn_reconfig_conn_index is deprecated and will be removed no sooner than January 1st, 2019. It has been replaced by the pypowervm.wrappers.managed_system.IOSlot.drc_index property.

  • The property pypowervm.wrappers.managed_system.IOSlot.dyn_reconfig_conn_name is deprecated and will be removed no sooner than January 1st, 2019. It has been replaced by the pypowervm.wrappers.managed_system.IOSlot.drc_name property.

  • Passing an arbitrary dictionary into the add_parms argument of pypowervm.tasks.power.power_on and power_off is deprecated. Consumers should migrate to using pypowervm.tasks.power_opts.PowerOnOpts and PowerOffOpts instead.

  • The pypowervm.tasks.power.power_off method is deprecated and will be removed no sooner than January 1st, 2019. Consumers should migrate to using pypowervm.tasks.power.PowerOp.stop for single power-off; or pypowervm.tasks.power.power_off_progressive for soft-retry flows.

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

pypowervm-1.1.19.tar.gz (898.2 kB view details)

Uploaded Source

Built Distribution

pypowervm-1.1.19-py2.py3-none-any.whl (1.1 MB view details)

Uploaded Python 2 Python 3

File details

Details for the file pypowervm-1.1.19.tar.gz.

File metadata

  • Download URL: pypowervm-1.1.19.tar.gz
  • Upload date:
  • Size: 898.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.8.1 pkginfo/1.3.2 requests/2.11.0 setuptools/25.2.0 requests-toolbelt/0.7.0 clint/0.5.1 CPython/2.7.12 Linux/4.8.0-58-generic

File hashes

Hashes for pypowervm-1.1.19.tar.gz
Algorithm Hash digest
SHA256 536b48ae24c64e0aec64f09373d329faec1ad108c3d5d0670919672fbf39ddbb
MD5 a51c878987a9d8a0536c83b7ac9aa68a
BLAKE2b-256 d608e195b39deee51837165554f508a8aa8f611bcf88a6a0e0461af67d072166

See more details on using hashes here.

Provenance

File details

Details for the file pypowervm-1.1.19-py2.py3-none-any.whl.

File metadata

  • Download URL: pypowervm-1.1.19-py2.py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.8.1 pkginfo/1.3.2 requests/2.11.0 setuptools/25.2.0 requests-toolbelt/0.7.0 clint/0.5.1 CPython/2.7.12 Linux/4.8.0-58-generic

File hashes

Hashes for pypowervm-1.1.19-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 5ce580bc6670d445d78a047d7fb40e79e5208768055e884fb99996ea599cbb9f
MD5 56922520605c0aac9b2f9eef0a00bb90
BLAKE2b-256 a3c541ee2c62598e3753260e14d9a86c82ebef9935a048f1946a2ec37d26ef87

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page