diff options
author | Tim Rozet <trozet@redhat.com> | 2018-02-16 10:45:55 -0500 |
---|---|---|
committer | Tim Rozet <trozet@redhat.com> | 2018-02-16 10:59:39 -0500 |
commit | 2beef21903d7a36bdac19b3170003043693562dd (patch) | |
tree | 16915957eccb08d19f1a5442fb6f5528416c72c8 /apex/common/utils.py | |
parent | 2111e5a85f8d0a894e1a7684c2e1a6d897091c9d (diff) |
Fixes stale undercloud delorean repos
When we build artifacts for release, we try to freeze the disk images
and artifacts we use for deployment. This includes the delorean repo
which provides OpenStack packages. This repo however expires after a
couple months and then if any packages were missing in the Undercloud
released artifact, they will attempt to be downloaded during install
and fail.
This patch adds some logic to detect if there is internet connectivity,
and if so then download and update the delorean repo on the undercloud.
JIRA: APEX-565
Change-Id: I58c28437fb5c5b179033c939377fd97aefbf427c
Signed-off-by: Tim Rozet <trozet@redhat.com>
Diffstat (limited to 'apex/common/utils.py')
-rw-r--r-- | apex/common/utils.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/apex/common/utils.py b/apex/common/utils.py index 0328a3b5..b727b11a 100644 --- a/apex/common/utils.py +++ b/apex/common/utils.py @@ -13,6 +13,7 @@ import json import logging import os import pprint +import socket import subprocess import tarfile import time @@ -210,3 +211,12 @@ def install_ansible(): subprocess.check_call([pkg_mgr, '-y', 'install', 'ansible']) except subprocess.CalledProcessError: logging.warning('Unable to install Ansible') + + +def internet_connectivity(): + try: + urllib.request.urlopen('http://opnfv.org', timeout=3) + return True + except (urllib.request.URLError, socket.timeout): + logging.debug('No internet connectivity detected') + return False |