Skip to content

[LIBCLOUD-873] Updated ProfitBricks Compute Driver (REST api v3) #938

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Nov 14, 2016
Merged

[LIBCLOUD-873] Updated ProfitBricks Compute Driver (REST api v3) #938

merged 1 commit into from
Nov 14, 2016

Conversation

matfin
Copy link
Contributor

@matfin matfin commented Nov 2, 2016

Updating the ProfitBricks compute driver to work with the REST api (v3)

Description

This PR includes changes to the ProfitBricks compute driver to drop support for the old SOAP api (now end of life) and provide support for v3 of the REST api.

All public operations provided by the new REST api are supported in this driver.

New test fixtures have been added and all tests have been amended.

A change has been added to the libcloud/common/base.py file to ensure that a request that returns with a HTTP status of 202 is not flagged as a failed request. Before this, only 200 and 201 were flagged as successful requests.

Status

  • done, ready for review

Checklist (tick everything that applies)

  • Code linting for the compute driver implementation and the accompanying test file has been completed using the flake8 tool.

  • Documentation has been updated consisting of examples of using all core and extended functionality specific to ProfitBricks. A demo file with instructions on creating two servers has been put together and these will be published on the ProfitBricks community website.

  • All test fixtures for api calls have been added in JSON format, replacing the older XML fixtures. All tests are passing.

Summary of changes

Refactoring the compute driver to remove support for the EOL SOAP api and modifying api calls to use the REST api (v3).

Removing XML test fixtures and replacing them with JSON fixtures.

Providing wrappers for all new functionality provided in v3 of the Cloud API.

Addressing an issue in libcloud/common/base.py where a http status code of 202 would not be flagged as a successful request.

Refactoring the compute  driver to remove support for the EOL SOAP api and modifying api calls to use the REST api (v3).

Removing XML test fixtures and replacing them with JSON fixtures.

Providing wrappers for all new functionality provided in v3 of the Cloud API.

Addressing an issue in libcloud/common/base.py where a http status code of 202 would not be flagged as a successful request.
@tonybaloney
Copy link
Contributor

thanks @matfin for the detailed PR, the changes look good to me. Has this been tested against an active endpoint using a real account as well?

@matfin
Copy link
Contributor Author

matfin commented Nov 10, 2016

Hi @tonybaloney - It has. It was also developed against a test account I was using.

@tonybaloney
Copy link
Contributor

then 👍

@asfgit asfgit merged commit 2569a5f into apache:trunk Nov 14, 2016
asfgit pushed a commit that referenced this pull request Nov 14, 2016
asfgit pushed a commit that referenced this pull request Nov 14, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants