From 05e559549dab75f17e147f4a4eafbac868a7aa5d Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Mon, 15 Apr 2019 17:24:42 +0200 Subject: [PATCH] v2v: -o rhv-upload: check whether the cluster exists In the precheck script, check that the target cluster actually exists. This will avoid errors when creating the VM after the data copying. --- v2v/rhv-upload-precheck.py | 10 ++++++++++ v2v/test-v2v-o-rhv-upload-module/ovirtsdk4/__init__.py | 7 +++++++ 2 files changed, 17 insertions(+) diff --git a/v2v/rhv-upload-precheck.py b/v2v/rhv-upload-precheck.py index 2798a29dd..b79f91b4a 100644 --- a/v2v/rhv-upload-precheck.py +++ b/v2v/rhv-upload-precheck.py @@ -70,4 +70,14 @@ if len(vms) > 0: raise RuntimeError("VM already exists with name ‘%s’, id ‘%s’" % (params['output_name'], vm.id)) +# Check whether the specified cluster exists. +clusters_service = system_service.clusters_service() +clusters = clusters_service.list( + search='name=%s' % params['rhv_cluster'], + case_sensitive=True, +) +if len(clusters) == 0: + raise RuntimeError("The cluster ‘%s’ does not exist" % + (params['rhv_cluster'])) + # Otherwise everything is OK, exit with no error. diff --git a/v2v/test-v2v-o-rhv-upload-module/ovirtsdk4/__init__.py b/v2v/test-v2v-o-rhv-upload-module/ovirtsdk4/__init__.py index 8d1058d67..cc4224ccd 100644 --- a/v2v/test-v2v-o-rhv-upload-module/ovirtsdk4/__init__.py +++ b/v2v/test-v2v-o-rhv-upload-module/ovirtsdk4/__init__.py @@ -39,6 +39,9 @@ class Connection(object): return SystemService() class SystemService(object): + def clusters_service(self): + return ClustersService() + def data_centers_service(self): return DataCentersService() @@ -54,6 +57,10 @@ class SystemService(object): def vms_service(self): return VmsService() +class ClustersService(object): + def list(self, search=None, case_sensitive=False): + return ["Default"] + class DataCentersService(object): def list(self, search=None, case_sensitive=False): return []