* Refactoring
* Fix issue that causes a new image store to be created at every start of ucloud-api. * VM Migration API call now takes hostname instead of host key. * StorageHandler Classes are introduced. They transparently handles things related to importing of image, make vm out of image, resize vm image, delete vm image etc. * Loggers added to __init__.py of every ucloud component's subpackage. * Non-Trivial Timeout Events are no longer logged. * Fix issue that prevents removal of stopped VMs (i.e VMs that are successfully migrated). * Improved unit handling added. e.g MB, Mb, mB, mb are all Mega Bytes. * VM migration is now possible on IPv6 host. * Destination VM (receiving side of migration of a vm) now correctly expects incoming data on free ephemeral port. * Traceback is no longer output to screen, instead it goes to log file. * All sanity checks are put into a single file. These checks are run by ucloud.py before running any of ucloud component.
This commit is contained in:
parent
6fa77bce4d
commit
cc0ca68498
26 changed files with 1101 additions and 294 deletions
|
|
@ -1,5 +1,9 @@
|
|||
import logging
|
||||
import socket
|
||||
import requests
|
||||
import json
|
||||
|
||||
from ipaddress import ip_address
|
||||
|
||||
from os.path import join as join_path
|
||||
|
||||
|
|
@ -37,3 +41,14 @@ def get_ipv4_address():
|
|||
address = s.getsockname()[0]
|
||||
|
||||
return address
|
||||
|
||||
|
||||
def get_ipv6_address():
|
||||
try:
|
||||
r = requests.get("https://api6.ipify.org?format=json")
|
||||
content = json.loads(r.content.decode("utf-8"))
|
||||
ip = ip_address(content["ip"]).exploded
|
||||
except Exception as e:
|
||||
logging.exception(e)
|
||||
else:
|
||||
return ip
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue