pycloudlib:master

Last commit made on 2020-07-13
Get this branch:
git clone -b master https://git.launchpad.net/pycloudlib
Members of pycloudlib-devs can upload to this branch. Log in for directions.

Branch merges

Branch information

Name:
master
Repository:
lp:pycloudlib

Recent commits

1d00ebf... by Chad Smith

requirements.txt: Bump versions

This bumps the versions of botocore, boto3, and paramiko to fix ip
address association on vpc instances.

2a67487... by Paride Legovini

Improve the instance restart waiting logic

Changes:
 - Make _ssh_connect() raise an exception on failure
 - Handle more exceptions in the restart() wait loop
 - Check if the instance actually restarted after waiting
 - Bump the deps on botocore and boto3. According to the
   upstream commit history the newer versions should handle
   the slow-to-deploy/reboot/delete metal instances better.

9f5248a... by Paride Legovini

Add a LOCAL_UBUNTU_ARCH module-level constant

This in contrast of defining a _local_ubuntu_arch class attribute for
the LXD and KVM classes.

0872df4... by Paride Legovini

Fix typo: s/provied/provided/

2cb4fcd... by Paride Legovini

Support KVM instances via multipass

3ec4cc2... by Paride Legovini

LXD: support image lookups

Changes:
 - EC2: bring the simplestreams lookup methods from to a higher
   class, to be shared with LXD and eventually other clouds
 - implement the LXD image lookup methods
 - use the local architecture by default when launching images
 - do not make wait_for_delete()/_stop() raise NotImplementedError
 - requirements.txt: bump the paramiko dependency to v2.6.0
 - workaround the "ZFS dataset is busy" issue

48df3d7... by Paride Legovini

Increase the SSH timeout from 5min to 10min

When dealing with booting/rebooting bare metal instances 5 minutes are
sometimes not enough.

06fd4fc... by Paride Legovini

Reimplement pull_file/push_file using sftp

The previous implementation handled the data to transfer as a string
and hence was not suitable for transferring binary files.

2163bdf... by Paride Legovini

EC2 restart(): handle more exceptions, improve wait logic

Also add some debugging messages.

9d5625d... by Paride Legovini

EC2 instance.restart(): consider a down instance as rebooting

Commands sent to an EC2 instance for which a reboot request has been
submitted may fail in unexcepted ways. Here we catch SSHException, which
is thrown by execute() on failure, and consider the instance as down
because a reboot is in progress, which is what we want. The while loop
can be exited and the rest of the wait logic is delegated to wait(),
which will in turn call boto3's methods.