|
@@ -5,7 +5,6 @@ import multiprocessing
|
|
|
|
|
|
|
|
import os
|
|
import os
|
|
|
import shutil
|
|
import shutil
|
|
|
-import time
|
|
|
|
|
import signal
|
|
import signal
|
|
|
import sys
|
|
import sys
|
|
|
import eventlet
|
|
import eventlet
|
|
@@ -273,7 +272,13 @@ class WorkerServerEndpoint(object):
|
|
|
def get_endpoint_destination_options(
|
|
def get_endpoint_destination_options(
|
|
|
self, ctxt, platform_name, connection_info, env, option_names):
|
|
self, ctxt, platform_name, connection_info, env, option_names):
|
|
|
provider = providers_factory.get_provider(
|
|
provider = providers_factory.get_provider(
|
|
|
- platform_name, constants.PROVIDER_TYPE_ENDPOINT_OPTIONS, None)
|
|
|
|
|
|
|
+ platform_name,
|
|
|
|
|
+ constants.PROVIDER_TYPE_DESTINATION_ENDPOINT_OPTIONS,
|
|
|
|
|
+ None, raise_if_not_found=False)
|
|
|
|
|
+ if not provider:
|
|
|
|
|
+ raise exception.InvalidInput(
|
|
|
|
|
+ "Provider plugin for platform '%s' does not support listing "
|
|
|
|
|
+ "destination environment options." % platform_name)
|
|
|
|
|
|
|
|
secret_connection_info = utils.get_secret_connection_info(
|
|
secret_connection_info = utils.get_secret_connection_info(
|
|
|
ctxt, connection_info)
|
|
ctxt, connection_info)
|
|
@@ -282,7 +287,29 @@ class WorkerServerEndpoint(object):
|
|
|
ctxt, secret_connection_info, env=env, option_names=option_names)
|
|
ctxt, secret_connection_info, env=env, option_names=option_names)
|
|
|
|
|
|
|
|
schemas.validate_value(
|
|
schemas.validate_value(
|
|
|
- options, schemas.CORIOLIS_DESTINATION_ENVIRONMENT)
|
|
|
|
|
|
|
+ options, schemas.CORIOLIS_DESTINATION_ENVIRONMENT_OPTIONS_SCHEMA)
|
|
|
|
|
+
|
|
|
|
|
+ return options
|
|
|
|
|
+
|
|
|
|
|
+ def get_endpoint_source_options(
|
|
|
|
|
+ self, ctxt, platform_name, connection_info, env, option_names):
|
|
|
|
|
+ provider = providers_factory.get_provider(
|
|
|
|
|
+ platform_name,
|
|
|
|
|
+ constants.PROVIDER_TYPE_SOURCE_ENDPOINT_OPTIONS,
|
|
|
|
|
+ None, raise_if_not_found=False)
|
|
|
|
|
+ if not provider:
|
|
|
|
|
+ raise exception.InvalidInput(
|
|
|
|
|
+ "Provider plugin for platform '%s' does not support listing "
|
|
|
|
|
+ "source environment options." % platform_name)
|
|
|
|
|
+
|
|
|
|
|
+ secret_connection_info = utils.get_secret_connection_info(
|
|
|
|
|
+ ctxt, connection_info)
|
|
|
|
|
+
|
|
|
|
|
+ options = provider.get_source_environment_options(
|
|
|
|
|
+ ctxt, secret_connection_info, env=env, option_names=option_names)
|
|
|
|
|
+
|
|
|
|
|
+ schemas.validate_value(
|
|
|
|
|
+ options, schemas.CORIOLIS_SOURCE_ENVIRONMENT_OPTIONS_SCHEMA)
|
|
|
|
|
|
|
|
return options
|
|
return options
|
|
|
|
|
|