Jump to: navigation, search

OpenStack-SDK-PHP/Design/Multi-Version

The PHP SDK needs to support multiple API versions for OpenStack services for two reasons:

  • There are times where multiple API versions may supported.
  • Applications that use an SDK have cases where they need to be able to cleanly move between API versions.

The python service clients handle multiple API versions.

Proposed Architecture

  • doc - contains documentation for the SDK.
  • [service] - The name of a service such as compute or identity.
    • [version] - The implementation for a service would be in the version number directory. (e.g., v2, v3)
  • Transport - contains the REST transport layer.

This is similar to how the python service clients are laid out and similar to the agreed to layout for the Go SDK. This is an existing pattern we can reuse.