./net/py-apache-libcloud, Python library for interacting with cloud service providers

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 3.8.0, Package name: py311-apache-libcloud-3.8.0, Maintainer: imil

Apache Libcloud is a Python library which hides differences between different
cloud provider APIs and allows you to manage different cloud resources through
a unified and easy to use API.

Resource you can manage with Libcloud are divided in the following categories:

* Cloud Servers and Block Storage - services such as Amazon EC2 and Rackspace
Cloud Servers (libcloud.compute.*)
* Cloud Object Storage and CDN - services such as Amazon S3 and Rackspace
CloudFiles (libcloud.storage.*)
* Load Balancers as a Service, LBaaS (libcloud.loadbalancer.*)
* DNS as a Service, DNSaaS (libcloud.dns.*)


Required to run:
[devel/py-setuptools] [devel/py-requests] [lang/python37]

Required to build:
[pkgtools/cwrappers] [devel/py-test-runner]

Master sites:

Filesize: 2400.063 KB

Version history: (Expand)


CVS history: (Expand)


   2024-04-02 21:32:40 by Adam Ciarcinski | Files touched by this commit (4) | Package updated
Log message:
py-apache-libcloud: updated to 3.8.0

Changes in Apache Libcloud 3.8.0
--------------------------------

Compute
~~~~~~~

- Remove obsolete compute driver where the provider is either dead or not
  offering those services anymore: Bluebox, bsnlcloud, Cloudwatt, Enomaly,
  ElasticHosts, ElasticStack, GoGrid, Gridspot, HostVirtual, Joyent, Med-1,
  Nephoscale, 1on1, ProfitBricks, ServerLove, SkaliCloud, Softlayer, Voxel.

- [Outscale] Fix ``list_nodes()`` and ``list_volumes()`` method.

- [Azure ARM] Implement pagination in the ``list_nodes()`` method. This fixes a
  bug which would result in sometimes not all the nodes being returned.

- [Azure ARM] Implement pagination in the ``list_volumes()`` method. This fixes a
  bug which would result in sometimes not all the volumes nodes being returned.

- [Azure ARM] Bump DISK_API_VERSION from ``2018-06-01`` to ``2023-01-02`` to
  support premium v2 SSDs.

- [AWS EC2] Add support for the following new arguments to the
  ``ex_register_image()`` method:
  * ``boot_mode`` - control bios vs uefi boot
  * ``tpm_support`` - enable a tpm
  * ``uefi_data`` - provide NV UEFI vars
  * ``imds_support`` - require IMDSv2.

Storage
~~~~~~~

- Optimize ``read_in_chunks()`` function implementation.

  This should result in large performance speedups and lower memory usage when
  uploading or downloading a large file with a mismatching chunk size.

  Keep in mind that this only affects code paths where the function is called
  with ``fill_size=True`` argument (such as in the S3 driver, etc).

- [Aliyun OSS] Fix ``upload_object()`` function.

- [S3] Support all available storage classes. Previously only \ 
"standard" and
  "reduced_redundancy" were supported.

- [CloudFiles] Fix ``get_endpoint_url()`` throwing an exception when being used
  with ``use_internal_url=True`` argument.

- [CloudFiles] Update OpenStack connection handling code to only re-connect in
  case connection details (scheme, host, port) have changed.

  This should result in significant performance improvements when downloading
  objects since the underlying HTTP connection will be properly re-used.

- [Backblaze B2] Fix a bug which would result in an exception when passing
  ``extra={"meta_data": {}}`` argument to the ``upload_object()`` method.

Other
~~~~~

- Move Python tooling (pytest, bandit, pylint, mypy, coverage) config options
  from separate config files into single pyproject.yaml config files.

  NOTE: This change only affects development process and nothing else.

- Fix minor typos in the code using codespell package and enforce this check as
  part of our GHA CI system.

- Indicate we also support Python 3.12 (beta).

- Remove unused ``libcloud.security.SSL_VERSION`` constant / module level
  variable. This variable has been unused and had no affect on the behavior
  since we switched to the ``requests`` library for making HTTP(s) requests in
  2016.

- Packaging related metadata has been migrated from ``setup.py`` to
  ``pyproject.yaml`` file.

- Deprecated and unsafe ``setup.py test`` convenience alias for running tests
  using pytest has been removed in favor of running pytest directly.

- Script for building release artifacts has been updated to utilize ``build``
  Python package to build release artifacts (sdist + wheel) in an isolated
  environment.
   2023-11-07 23:38:10 by Thomas Klausner | Files touched by this commit (112)
Log message:
*: latest py-sphinx only support Python 3.9+
   2023-06-06 14:42:56 by Taylor R Campbell | Files touched by this commit (1319)
Log message:
Mass-change BUILD_DEPENDS to TOOL_DEPENDS outside mk/.

Almost all uses, if not all of them, are wrong, according to the
semantics of BUILD_DEPENDS (packages built for target available for
use _by_ tools at build-time) and TOOL_DEPEPNDS (packages built for
host available for use _as_ tools at build-time).

No change to BUILD_DEPENDS as used correctly inside buildlink3.

As proposed on tech-pkg:
https://mail-index.netbsd.org/tech-pkg/2023/06/03/msg027632.html
   2023-02-10 15:41:16 by Thomas Klausner | Files touched by this commit (2)
Log message:
py-apache-libcloud: fix invalid pattern

Fixes build.
   2022-01-04 21:55:40 by Thomas Klausner | Files touched by this commit (1595)
Log message:
*: bump PKGREVISION for egg.mk users

They now have a tool dependency on py-setuptools instead of a DEPENDS
   2021-10-26 13:07:15 by Nia Alarie | Files touched by this commit (958)
Log message:
net: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Not committed (merge conflicts...):

net/radsecproxy/distinfo

The following distfiles could not be fetched (fetched conditionally?):

./net/citrix_ica/distinfo citrix_ica-10.6.115659/en.linuxx86.tar.gz
./net/djbdns/distinfo dnscache-1.05-multiple-ip.patch
./net/djbdns/distinfo djbdns-1.05-test28.diff.xz
./net/djbdns/distinfo djbdns-1.05-ignoreip2.patch
./net/djbdns/distinfo djbdns-1.05-multiip.diff
./net/djbdns/distinfo djbdns-cachestats.patch
   2021-10-07 16:43:07 by Nia Alarie | Files touched by this commit (962)
Log message:
net: Remove SHA1 hashes for distfiles
   2020-05-17 21:06:47 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-apache-libcloud: updated to 3.0.0

Changes in Apache Libcloud 3.0.0

Common
------
Make sure auth_user_info variable on the OpenStack identify connection class is \ 
populated when using auth version 3.x_password and 3.x_oidc_access_token.

[OpenStack] Update OpenStack identity driver so a custom project can be selected \ 
using domain_name keyword argument containing a project id.

Previously this argument value could only contain a project name, now the value \ 
will be checked against project name and id.

Compute
-------
[GCE] Update create_node() method so it throws an exception if node location \ 
can't be inferred and location is not specified by the user ( either by passing \ 
datacenter constructor argument or by passing location argument to the method).

[GCE] Update ex_get_disktype method so it works if zone argument is not set.

[GiG G8] Add new driver for GiG G8 provider (https://gig.tech/).

Add new at_exit_func argument to deploy_node() method. With this argument user \ 
can specify which function will be called before exiting with the created node \ 
in question if the deploy process has been canceled after the node has been \ 
created, but before the method has fully finished.

This comes handy since it simplifies various cleanup scenarios.

[OpenStack] Fix auto assignment of volume device when using device name auto in \ 
the attach_volume method.

[Kamatera] Add new driver for Kamatera provider (https://www.kamatera.com).

Storage
-------
Add new download_object_range and download_object_range_as_stream methods for \ 
downloading part of the object content (aka range downloads) to the base storage \ 
API.

Currently those methods are implemented for the local storage Azure Blobs, \ 
CloudFiles, S3 and any other provider driver which is based on the S3 one (such \ 
as Google Storage and DigitalOcean Spaces).

Add type annotations for the base storage API.

[Google Storage] Update the driver so it supports service account HMAC credentials.

There was a bug in the code where we used the user id length check to determine \ 
the account type and that code check didn't take service account HMAC \ 
credentials (which contain a longer string) into account.

DNS
---
Add type annotations for the base DNS API.

Container
---------
[Kubernetes] Add support for the client certificate and static token based \ 
authentication to the driver.
Add type annotations for the base container API.