Heat/BotoCompatibility

Heat is currently dependent on the python-boto client library for the following purposes:

- heat-cfntools uses boto to interact with the heat-api-cfn and heat-api-cloudwatch services (for cfn-init, cfn-hup and cfn-push-stats tools, which run inside the instance and are required if you want to make use of metadata update via cfn-hup, or any feature which requires CloudWatch metric data, which is currently collected via cfn-push-stats)

- heat-boto uses boto to interact with heat-api-cfn (this tool is functionally equivalent to heat-cfn, or python-heatclient so is an optional/developer tool)

- heat-watch uses boto to interact with the heat-api-cloudwatch, (this is a debug/developer tool and is not required to access core heat functionality)

- Also cloud-init depends on boto for interaction with the nova ec2 API for user/meta-data retrieval during instance customization

A patch was added to boto prior to the 2.4.0 release, which allows configurable endpoints, and this patch is required for boto use with heat, and recently we have unfortunately broken with latest boto versions (bug 1122472), due to boto moving to the new AWS v4 signatures, which we do not yet support (will be fixed soon)

Since this current situation means we have a limited matrix of compatibility of working/broken version until these bug are fixed (and all distros ship >= 2.4.0 boto), below is a WIP attempt to capture test status of various distros so we can track what currently works and track bugs for resolving problems):

There also seem to be some cloud-init compatibility issues - a cloud-init fix was required for boto-versions >= 2.6.0, so we capture the cloud-init in the matrix below, (TODO, which cloud-init version contains the fix, 0.7.1?) - ref bug 1158906

Note - this is primarily to allow easier creation of working JEOS images/TDLs, and/or figure out workarounds with pip-install to patch in required versions until the problems are resolved, the versions in the table should be the distro packaged versions, and if known bugs/workarounds exist, please link them in the Notes column.