2.0.0 - March 13, 2019 (sha 10e28a0d07251af4a424fcbf11435fa4d52e5277)
- This is a major release which contains many improvements and some breaking changes to the interface, but the changes are fairly straightforward.
- Support for Google Cloud (thanks to @mbookman, @chiniforooshan, @baizhang)
- Support for middleware, event listening and interception, allowing CloudBridge to be extended without needing to modify library code (This is also potentially useful for handling corner cases for specific clouds).
- The mock provider is now available by default as a standard cloud provider, which is useful for testing applications that use CloudBridge.
- Providers now operate in a single zone, and therefore, all methods that
previously required the zone as a parameter no longer do. Specifically,
subnet.get_or_create_default()are affected in services, and
snap.create_volumeis affected in resources. The provider's default zone must now be specified through the provider config.
- All exceptions that are generated by CloudBridge will now extend from
- The cloud package is deprecated and everything under it has been moved
one level up. For example, instead of
from cloudbridge.cloud.factory import CloudProviderFactoryuse
from cloudbridge.factory import CloudProviderFactory.
- Services are much more uniform now, and sub-services have been introduced
for greater uniformity. For example,
gateways.get_or_create_inet_gateway()is now simply
- AWS instance types are now served through Amazon CloudFront for better performance.
- Miscellaneous bug fixes and improvements.
1.0.2 - September 25, 2018 (sha 621aeed1a8d7c5ad270649f8ee960e9682e57dae)
- Added AWS instance types caching for better performance
- Ensure the default network for CloudBridge on AWS has subnets
1.0.1 - September 7, 2018. (sha 3130492008c5e0e115b8dfec880d32a4ac90b761)
- Fixed minor bug when retrieving buckets with only limited access.
- Relaxed some library version dependencies (e.g. six).
1.0.0 - September 6, 2018. (sha 11bccd822f21a598fc753995440cf1a409984889)
- Added Microsoft Azure as a provider.
- Restructured the interface to make it more comprehensible and uniform across all supported providers. See issue #69 for more details as well as the library layout image for an easy visual reference: https://github.com/CloudVE/cloudbridge#quick-reference.
- Migrated AWS implementation to use the boto3 library (thanks @01000101)
- Cleaned up use of
nameproperty for resources. Resources now have
labelproperties to represent respectively: a unique identifier supplied by the provider; a descriptive, unchangeable name; and a user-supplied label that can be modified during the existence of a resource.
- Added enforcement of name and label value: names must be at least 3 characters in length at minimum, and 64 characters at maximum, consisting of only lower case letters and dashes. Should not start or end with a dash.
- Refactored tests and extracted standard interface tests where all resources are being tested using the same code structure. Also, tests will run only for providers that implement a given service.
- Moved the repository from github.com/gvlproject to github.com/cloudve org.
- When deleting an OpenStack network, clear any ports.
- Added support for launching OpenStack instances into a specific subnet
- Update image list interface to allow filtering by owner.
- When listing images on AWS, filter only the ones by current account owner.
- Retrieve AWS instance types from a public service to include latest values.
- Instance state uses
DELETEDstate instead of
- Return VM type RAM in GB.
- Add implementation for
- General documentation updates.
0.3.3 - August 7, 2017. (sha 348e1e88935f61f53a83ed8d6a0e012a46621e25)
- Remove explicit versioning of requests and Babel.
0.3.2 - June 10, 2017. (sha f07f3cbd758a0872b847b5537d9073c90f87c24d)
- Patch release to support files>5GB with OpenStack (thanks @MartinPaulo).
- Misc bug fixes.
0.3.1 - April 18, 2017. (sha f36a462e886d8444cb2818f6573677ecf0565315)
- Patch for binary file handling in OpenStack.
0.3.0 - April 11, 2017. (sha 13539ccda9e4809082796574d18b1b9bb3f2c624)
- Reworked test framework to rely on tox's test generation features. This allows for individual test cases to be run on a per provider basis.
- Added more OpenStack swift config options (OS_AUTH_TOKEN and OS_STORAGE_URL)
- Added supports for accessing EC2 containers with restricted permissions.
- Removed exists() method from object store interface. Use get()==None check instead.
- New method (img.min_disk) for getting size of machine image.
- Test improvements (flake8 during build, more tests).
- Misc bug fixes and improvements.
- Changed library to beta state
- General documentation updates (testing, release process)
0.2.0 - March 23, 2017. (sha a442d96b829ea2c721728520b01981fa61774625)
- Reworked the instance launch method to require subnet vs. network. This removed the option of adding network interface to a launch config object.
- Added object store methods: upload from file path, list objects with a prefix, check if an object exists, (AWS only) get an accessible URL for an object (thanks @VJalili).
- Modified get_ec2_credentials() method to get_or_create_ec2_credentials()
- Added an option to read provider config values from a file (~/.cloudbridge or /etc/cloudbridge).
- Replaced py35 with py36 for running tests.
- Added logging configuration for the library.
- General documentation updates.
0.1.1 - Aug 10, 2016. (sha 0122fb1173c88ae64e40140ffd35ff3797e9e4ad)
- For AWS, always launch instances into private networking (i.e., VPC).
- Support for using OpenStack Keystone v3.
- Add functionality to manipulate routers and routes.
- Add FloatingIP resource type and integrate with Network service.
- Numerous documentation updates.
- For an OpenStack provider, add method to get the ec2 credentials for a user.
0.1.0 - Jan 30, 2016.
- Initial release of CloudBridge.
- Support for Bucket, Instance, Instance type, Key pair, Machine image. Region, Security group, Snapshot, Volume, Network and Subnet services.
- Support for paging results, block device mapping and launching into VPCs.
- Support for AWS and OpenStack clouds.
- Basic usage docs and complete API docs.
- 95% test coverage.
- Support for AWS mock test provider (via moto).