Skip to main content

Acquia Cloud API v2 client library.

Project description

Python Acquia Cloud API v2

Python Client library to communicate with the Acquia Cloud API V2.

Pablo Fabregat - License

Build Status Documentation Status codecov

Examples

Please bear in mind that the library is being actively developed and most of its functionality is just a reduced set of what it should be.

Minimal request

acquia = Acquia(api_key, api_secret)
application = acquia.application("a47ac10b-58cc-4372-a567-0e02b2c3d470")

print(application["name"])

Using filters

subscription_name = "MySubsName"
filters = "name=" + subscription_name

application = acapi.applications(filters=filters).first()
dev_environment = application.environments()["dev"]

print(dev_environment["id"])

dev_environment.set_php_version("7.0")

more_settings = {
  "max_execution_time": 10,
  "memory_limit": 192,
  "apc": 128,
  "max_input_vars": 1000,
  "max_post_size": 256,
  "sendmail_path": "/usr/bin/sendmail",
  "varnish_over_ssl": False
}

dev_environment.configure(more_settings)

Notifications

acapi2 now supports the notifications endpoint

Whenever an action is executed (e.g. a code import), the API will return a uuid for its correspondant task status (notification), this can be used to check on the status of the task itself"

notif_uuid = "d82a122d-b7b8-46fc-9999-39cb824fac8d"
notification = acquia.notification(notif_uuid)
print(notification.data)

You can also check on the current notifications for a specific application

filters = "name=@*myapp*"
app = acquia.applications(filters=filters).first()

notifications = app.notifications()
for uuid, notification in notifications.items():
        print(notification.data)

Roadmap

Current version: 2.0.1

2.0.1

  • 2.x becomes the default repository branch,
  • Out of the beta status,
  • Notifications support,
  • Code coverage increase,
  • Clean up the original code a bit.
  • Support for backups.

2.0.2

  • Tasks endpoint removal (you should use notifications),
  • Distributions endpoint support,
  • Messages endpoing support,
  • Better exceptions handling.

Credits

This library was originally based on the Acquia API Python Library created by Dave Hall (http://github.com/skwashd/python-acquia-cloud)

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

acapi2-2.0.1.tar.gz (29.2 kB view hashes)

Uploaded Source

Built Distribution

acapi2-2.0.1-py3-none-any.whl (36.8 kB view hashes)

Uploaded Python 3

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