You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@libcloud.apache.org by to...@apache.org on 2020/11/01 20:32:24 UTC
[libcloud] 01/03: add s3 us-gov-east-1 region support
This is an automated email from the ASF dual-hosted git repository.
tomaz pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/libcloud.git
commit 3f17065eb59885605623ccd6c99ed1c237e02a8a
Author: Andy Spohn <an...@modzy.com>
AuthorDate: Wed Oct 21 13:40:12 2020 -0400
add s3 us-gov-east-1 region support
---
docs/storage/_supported_methods_cdn.rst | 1 +
docs/storage/_supported_methods_main.rst | 2 ++
docs/storage/_supported_providers.rst | 3 ++-
libcloud/storage/drivers/s3.py | 13 +++++++++++++
4 files changed, 18 insertions(+), 1 deletion(-)
diff --git a/docs/storage/_supported_methods_cdn.rst b/docs/storage/_supported_methods_cdn.rst
index 01251d6..dce6f75 100644
--- a/docs/storage/_supported_methods_cdn.rst
+++ b/docs/storage/_supported_methods_cdn.rst
@@ -33,6 +33,7 @@ Provider enable container cdn enable object cdn get contain
`RGW Outscale`_ no no no no
`Amazon S3 (sa-east-1)`_ no no no yes
`Amazon S3 (us-east-2)`_ no no no yes
+`Amazon S3 (us-gov-east-1)`_ no no no yes
`Amazon S3 (us-gov-west-1)`_ no no no yes
`Amazon S3 (us-west-1)`_ no no no yes
`Amazon S3 (us-west-2)`_ no no no yes
diff --git a/docs/storage/_supported_methods_main.rst b/docs/storage/_supported_methods_main.rst
index ea5534a..6a6c19d 100644
--- a/docs/storage/_supported_methods_main.rst
+++ b/docs/storage/_supported_methods_main.rst
@@ -33,6 +33,7 @@ Provider list containers list objects create container dele
`RGW Outscale`_ yes yes yes yes yes yes yes yes yes yes yes
`Amazon S3 (sa-east-1)`_ yes yes yes yes yes yes yes yes yes yes yes
`Amazon S3 (us-east-2)`_ yes yes yes yes yes yes yes yes yes yes yes
+`Amazon S3 (us-gov-east-1)`_ yes yes yes yes yes yes yes yes yes yes yes
`Amazon S3 (us-gov-west-1)`_ yes yes yes yes yes yes yes yes yes yes yes
`Amazon S3 (us-west-1)`_ yes yes yes yes yes yes yes yes yes yes yes
`Amazon S3 (us-west-2)`_ yes yes yes yes yes yes yes yes yes yes yes
@@ -68,6 +69,7 @@ Provider list containers list objects create container dele
.. _`RGW Outscale`: https://en.outscale.com/
.. _`Amazon S3 (sa-east-1)`: http://aws.amazon.com/s3/
.. _`Amazon S3 (us-east-2)`: http://aws.amazon.com/s3/
+.. _`Amazon S3 (us-gov-east-1)`: http://aws.amazon.com/s3/
.. _`Amazon S3 (us-gov-west-1)`: http://aws.amazon.com/s3/
.. _`Amazon S3 (us-west-1)`: http://aws.amazon.com/s3/
.. _`Amazon S3 (us-west-2)`: http://aws.amazon.com/s3/
diff --git a/docs/storage/_supported_providers.rst b/docs/storage/_supported_providers.rst
index bf08332..9a7178f 100644
--- a/docs/storage/_supported_providers.rst
+++ b/docs/storage/_supported_providers.rst
@@ -15,7 +15,7 @@ Provider Documentation P
`Nimbus.io`_ NIMBUS single region driver :mod:`libcloud.storage.drivers.nimbus` :class:`NimbusStorageDriver`
`Ninefold`_ NINEFOLD single region driver :mod:`libcloud.storage.drivers.ninefold` :class:`NinefoldStorageDriver`
`OpenStack Swift`_ :doc:`Click </storage/drivers/openstack_swift>` OPENSTACK_SWIFT dfw, hkg, iad, lon, ord, syd :mod:`libcloud.storage.drivers.cloudfiles` :class:`OpenStackSwiftStorageDriver`
-`Amazon S3`_ :doc:`Click </storage/drivers/s3>` S3 ap-northeast-1, ap-northeast-2, ap-northeast-3, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, cn-north-1, cn-northwest-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, me-south-1, sa-east-1, sa-east-2, us-east-1, us-east-2, us-gov-west-1, us-west-1, us-west-2 :mod:`libcloud.storage.drivers.s3` :class:`S3StorageDriver`
+`Amazon S3`_ :doc:`Click </storage/drivers/s3>` S3 ap-northeast-1, ap-northeast-2, ap-northeast-3, ap-south-1, ap-southeast-1, ap-southeast-2, ca-central-1, cn-north-1, cn-northwest-1, eu-central-1, eu-north-1, eu-west-1, eu-west-2, eu-west-3, me-south-1, sa-east-1, sa-east-2, us-east-1, us-east-2, us-gov-east-1, us-gov-west-1, us-west-1, us-west-2 :mod:`libcloud.storage.drivers.s3` :class:`S3StorageDriver`
`Ceph RGW`_ S3_RGW single region driver :mod:`libcloud.storage.drivers.rgw` :class:`S3RGWStorageDriver`
`RGW Outscale`_ S3_RGW_OUTSCALE single region driver :mod:`libcloud.storage.drivers.rgw` :class:`S3RGWOutscaleStorageDriver`
========================== =================================================== =================== ============================================================================================================================================================================================================================================================================================ =================================================== ========================================
@@ -50,6 +50,7 @@ Provider Documentation P
.. _`RGW Outscale`: https://en.outscale.com/
.. _`Amazon S3 (sa-east-1)`: http://aws.amazon.com/s3/
.. _`Amazon S3 (us-east-2)`: http://aws.amazon.com/s3/
+.. _`Amazon S3 (us-gov-east-1)`: http://aws.amazon.com/s3/
.. _`Amazon S3 (us-gov-west-1)`: http://aws.amazon.com/s3/
.. _`Amazon S3 (us-west-1)`: http://aws.amazon.com/s3/
.. _`Amazon S3 (us-west-2)`: http://aws.amazon.com/s3/
diff --git a/libcloud/storage/drivers/s3.py b/libcloud/storage/drivers/s3.py
index 3511d64..9a97e0e 100644
--- a/libcloud/storage/drivers/s3.py
+++ b/libcloud/storage/drivers/s3.py
@@ -58,6 +58,7 @@ S3_US_STANDARD_HOST = 's3.amazonaws.com'
S3_US_EAST2_HOST = 's3-us-east-2.amazonaws.com'
S3_US_WEST_HOST = 's3-us-west-1.amazonaws.com'
S3_US_WEST_OREGON_HOST = 's3-us-west-2.amazonaws.com'
+S3_US_GOV_EAST_HOST = 's3-us-gov-east-1.amazonaws.com'
S3_US_GOV_WEST_HOST = 's3-us-gov-west-1.amazonaws.com'
S3_CN_NORTH_HOST = 's3.cn-north-1.amazonaws.com.cn'
S3_CN_NORTHWEST_HOST = 's3.cn-northwest-1.amazonaws.com.cn'
@@ -81,6 +82,7 @@ REGION_TO_HOST_MAP = {
'us-east-2': S3_US_EAST2_HOST,
'us-west-1': S3_US_WEST_HOST,
'us-west-2': S3_US_WEST_OREGON_HOST,
+ 'us-gov-east-1': S3_US_GOV_EAST_HOST,
'us-gov-west-1': S3_US_GOV_WEST_HOST,
'cn-north-1': S3_CN_NORTH_HOST,
'cn-northwest-1': S3_CN_NORTHWEST_HOST,
@@ -1216,6 +1218,17 @@ class S3USWestOregonStorageDriver(S3StorageDriver):
region_name = 'us-west-2'
+class S3USGovEastConnection(S3SignatureV4Connection):
+ host = S3_US_GOV_EAST_HOST
+
+
+class S3USGovEastStorageDriver(S3StorageDriver):
+ name = 'Amazon S3 (us-gov-east-1)'
+ connectionCls = S3USGovEastConnection
+ ex_location_name = 'us-gov-east-1'
+ region_name = 'us-gov-east-1'
+
+
class S3USGovWestConnection(S3SignatureV4Connection):
host = S3_US_GOV_WEST_HOST