Deploy the trigger on the Production Centre

This Jupyter Notebook creates a Web Processing Service request on the Ellip Platform Deployer to deploy the trigger and its associated coordinators on the Production Centre.

  • First do the imports of the Python libraries required
In [1]:
import os
import getpass
import lxml.etree as etree
import owslib
from owslib.wps import monitorExecution
from owslib.wps import WebProcessingService
from nbconvert.preprocessors import ExecutePreprocessor, CellExecutionError
import nbformat as nbf
  • Load the data pipeline configuration
In [2]:
%store -r

nb_config = os.path.join('..', 'configuration.ipynb')

nb = nbf.read(nb_config, 4)

exec(nb['cells'][1]['source']) in globals(), locals()

trigger_queue = dict([('artifact_id', trigger_queue_artifact_id),
                      ('version', trigger_queue_version),
                      ('repository', repository),
                      ('folder', folder),
                      ('community', community)])

trigger_pipe = dict([('artifact_id', trigger_pipe_artifact_id),
                     ('version', trigger_pipe_version),
                      ('repository', repository),
                      ('folder', folder),
                      ('community', community)])


trigger_queue_process_id = '%s_%s_%s_%s' % (trigger_queue['community'].replace('-', '_'),
                                            trigger_queue['artifact_id'].replace('-', '_'),
                                            trigger_queue['artifact_id'].replace('-', '_'),
                                            trigger_queue['version'].replace('.', '_'))

trigger_pipe_process_id = '%s_%s_%s_%s' % (trigger_pipe['community'].replace('-', '_'),
                                            trigger_pipe['artifact_id'].replace('-', '_'),
                                            trigger_pipe['artifact_id'].replace('-', '_'),
                                            trigger_pipe['version'].replace('.', '_'))
In [4]:
trigger_queue_process_id
Out[4]:
'ec_better_tg_wfp_01_01_01_queue_tg_wfp_01_01_01_queue_0_10'
  • Connect to the WPS server and do a GetCapabilities request to check if the deploy process is available:
In [5]:
wps_url = '%s/zoo-bin/zoo_loader.cgi' % trigger_deployer

wps = WebProcessingService(wps_url, verbose=False, skip_caps=True)

wps.getcapabilities()
In [6]:
deploy_process_available = False

for index, elem in enumerate(wps.processes):

    if 'TerradueDeployProcess' in elem.identifier:

        deploy_process_available = True

if deploy_process_available:
    print 'TerradueDeployProcess is available'
else:
    raise Exception('TerradueDeployProcess is not available')
TerradueDeployProcess is available
  • Select the TerradueDeployProcess process to submit a DescribeProcess request and list the inputs:
In [7]:
process_id = 'TerradueDeployProcess'

process = wps.describeprocess(process_id)

for data_input in process.dataInputs:
    print data_input.identifier

print '----'

for process_output in process.processOutputs:
    print process_output.identifier
applicationPackage
apikey
coordinator
----
deployResult

Deploy Trigger-Queue on Production Centre

  • Submit the Execute WPS request:
In [8]:
for trigger in [trigger_queue]:
    ows_context_url = '/%s/_applications/%s/%s/%s/%s-%s-application-context.xml' % (trigger['community'],
                                                                                    trigger['community'],
                                                                                    trigger['artifact_id'],
                                                                                    trigger['version'],
                                                                                    trigger['artifact_id'],
                                                                                    trigger['version'])

    trigger_process_id = '%s_%s_%s_%s' % (trigger['community'].replace('-', '_'),
                                          trigger['artifact_id'].replace('-', '_'),
                                          trigger['artifact_id'].replace('-', '_'),
                                          trigger['version'].replace('.', '_'))

    print 'Deploying %s' % ows_context_url

    inputs = [('applicationPackage', ows_context_url),
              ('apikey', ellip_api_key),
             ('coordinator', 'True')]

    execution = owslib.wps.WPSExecution(url=wps.url)

    execution_request = execution.buildRequest(process_id,
                                               inputs,
                                               output=[('deployResult', False)])


    execution_response = execution.submitRequest(etree.tostring(execution_request))

    execution.parseResponse(execution_response)

    monitorExecution(execution)

    if execution.isSucceded():
        print 'Application %s deployment is successful' % trigger_process_id
    else:
        raise Exception('Application %s deployment failed' % trigger_process_id)
Deploying /ec-better/_applications/ec-better/tg-wfp-01-01-01-queue/0.10/tg-wfp-01-01-01-queue-0.10-application-context.xml
Application ec_better_tg_wfp_01_01_01_queue_tg_wfp_01_01_01_queue_0_10 deployment is successful
  • Check the new WPS capabilities:
In [9]:
wps = WebProcessingService(wps_url, verbose=False, skip_caps=True)
wps.getcapabilities()

trigger_queue_deployed = False


for index, elem in enumerate(wps.processes):
    if elem.identifier == trigger_process_id:
        trigger_queue_deployed = True


if trigger_queue_deployed:
    print 'Process %s deployed' % trigger_queue_process_id
else:
    raise Exception('Process %s not deployed' % trigger_queue_process_id)

Process ec_better_tg_wfp_01_01_01_queue_tg_wfp_01_01_01_queue_0_10 deployed
In [10]:

wps = WebProcessingService(wps_url, verbose=False, skip_caps=True)
wps.getcapabilities()


for index, elem in enumerate(wps.processes):
    print (index,elem.identifier)

(0, 'ec_better_tg_wfp_01_01_02_queue_tg_wfp_01_01_02_queue_0_2')
(1, 'coordinator_ec_better_tg_satcen_01_03_01_queue_tg_satcen_01_03_01_queue_0_6')
(2, 'ec_better_tg_better_wfp_00001_via_tg_better_wfp_00001_via_0_1')
(3, 'ec_better_tg_better_wfp_00001_pipe_tg_better_wfp_00001_pipe_0_4')
(4, 'coordinator_ec_better_tg_wfp_01_02_01_queue_tg_wfp_01_02_01_queue_0_2')
(5, 'ec_better_tg_satcen_01_03_01_queue_tg_satcen_01_03_01_queue_0_4')
(6, 'coordinator_ec_better_tg_ethz_01_02_01_queue_tg_ethz_01_02_01_queue_0_2')
(7, 'coordinator_ec_better_tg_satcen_01_02_01_queue_tg_satcen_01_02_01_queue_0_6')
(8, 'coordinator_ec_better_tg_wfp_01_01_02_queue_tg_wfp_01_01_02_queue_0_2')
(9, 'UnDeployProcess')
(10, 'coordinator_ec_better_tg_ethz_01_02_01_queue_tg_ethz_01_02_01_queue_0_5')
(11, 'ec_better_tg_wfp_01_03_02_queue_tg_wfp_01_03_02_queue_0_3')
(12, 'ec_better_tg_wfp_01_02_03_pipe_tg_wfp_01_02_03_pipe_0_6')
(13, 'ec_better_tg_satcen_01_03_01_pipe_tg_satcen_01_03_01_pipe_0_1')
(14, 'coordinator_ec_better_tg_satcen_01_01_01_pipe_tg_satcen_01_01_01_pipe_0_4')
(15, 'ec_better_tg_wfp_01_02_01_queue_tg_wfp_01_02_01_queue_0_1')
(16, 'ec_better_tg_satcen_01_01_01_pipe_tg_satcen_01_01_01_pipe_0_3')
(17, 'ec_better_tg_wfp_01_02_03_pipe_tg_wfp_01_02_03_pipe_0_7')
(18, 'ec_better_tg_wfp_01_02_01_queue_tg_wfp_01_02_01_queue_0_2')
(19, 'coordinator_ec_better_tg_better_wfp_00001_pipe_tg_better_wfp_00001_pipe_0_4')
(20, 'ec_better_tg_satcen_01_01_01_queue_tg_satcen_01_01_01_queue_0_8')
(21, 'ec_better_tg_satcen_01_01_01_queue_tg_satcen_01_01_01_queue_0_3')
(22, 'ec_better_tg_satcen_01_01_01_queue_tg_stacen_01_01_01_queue_0_1')
(23, 'ec_better_tg_wfp_01_01_02_queue_tg_wfp_01_01_02_queue_0_3')
(24, 'ec_better_tg_ethz_01_02_01_queue_tg_ethz_01_02_01_queue_0_3')
(25, 'ec_better_tg_satcen_01_03_01_pipe_tg_satcen_01_03_01_pipe_0_4')
(26, 'coordinator_ec_better_tg_satcen_01_01_01_pipe_tg_satcen_01_01_01_pipe_0_3')
(27, 'ec_better_tg_wfp_01_02_01_queue_tg_wfp_01_02_01_queue_0_3')
(28, 'ec_better_tg_wfp_01_02_03_pipe_tg_wfp_01_02_03_pipe_0_2')
(29, 'ec_better_tg_wfp_01_02_03_pipe_tg_wfp_01_02_03_pipe_0_4')
(30, 'ec_better_tg_satcen_01_01_01_queue_tg_satcen_01_01_01_queue_0_5')
(31, 'ec_better_tg_wfp_01_01_01_queue_tg_wfp_01_01_01_queue_0_9')
(32, 'ec_better_tg_wfp_01_02_03_queue_tg_wfp_01_02_03_queue_0_3')
(33, 'ec_better_tg_ethz_01_03_01_queue_tg_ethz_01_03_01_queue_1_1')
(34, 'ec_better_tg_common_sen2cor_queue_ss_tg_common_sen2cor_queue_ss_0_2')
(35, 'ec_better_ewf_sen2cor_ewf_sen2cor_0_10')
(36, 'ec_better_tg_wfp_01_01_01_queue_tg_wfp_01_01_01_queue_0_8')
(37, 'coordinator_ec_better_tg_wfp_01_02_03_pipe_tg_wfp_01_02_03_pipe_0_9')
(38, 'ec_better_tg_ethz_01_02_01_queue_tg_ethz_01_02_01_queue_0_5')
(39, 'ec_better_tg_wfp_01_02_02_queue_ss_tg_wfp_01_02_02_queue_ss_0_9')
(40, 'ec_better_tg_wfp_01_03_02_queue_tg_wfp_01_03_02_queue_0_7')
(41, 'coordinator_ec_better_tg_satcen_01_02_01_queue_tg_satcen_01_02_01_queue_0_3')
(42, 'ec_better_tg_satcen_01_01_01_queue_tg_satcen_01_01_01_queue_0_6')
(43, 'coordinator_ec_better_tg_satcen_01_01_01_queue_tg_satcen_01_01_01_queue_0_6')
(44, 'coordinator_ec_better_tg_common_sen2cor_pipe_tg_common_sen2cor_pipe_0_5')
(45, 'ec_better_tg_satcen_01_03_01_queue_tg_satcen_01_03_01_queue_0_7')
(46, 'TerradueUnDeployProcess')
(47, 'ec_better_tg_wfp_01_02_03_queue_tg_wfp_01_02_03_queue_0_2')
(48, 'ec_better_tg_satcen_01_01_01_queue_tg_satcen_01_01_01_queue_0_7')
(49, 'coordinator_ec_better_tg_satcen_01_03_01_pipe_tg_satcen_01_03_01_pipe_0_2')
(50, 'ec_better_tg_wfp_01_03_02_queue_tg_wfp_01_03_02_queue_0_4')
(51, 'ec_better_tg_wfp_01_01_01_pipe_tg_wfp_01_01_01_pipe_0_6')
(52, 'ec_better_tg_pipe_tg_pipe_0_3')
(53, 'coordinator_ec_better_tg_wfp_01_03_02_queue_tg_wfp_01_03_02_queue_0_1')
(54, 'coordinator_ec_better_tg_satcen_01_01_01_queue_tg_satcen_01_01_01_queue_0_8')
(55, 'ec_better_tg_wfp_01_01_02_queue_tg_wfp_01_01_02_queue_0_1')
(56, 'ec_better_tg_satcen_01_02_01_queue_tg_satcen_01_02_01_queue_0_4')
(57, 'coordinator_ec_better_tg_better_wfp_00001_queue_tg_better_wfp_00001_queue_0_3')
(58, 'coordinator_ec_better_tg_wfp_01_02_02_queue_tg_wfp_01_02_02_queue_0_4')
(59, 'ec_better_tg_satcen_01_01_01_pipe_tg_satcen_01_01_01_pipe_0_1')
(60, 'ec_better_tg_wfp_01_01_01_queue_tg_wfp_01_01_01_queue_0_10')
(61, 'coordinator_ec_better_tg_wfp_01_03_02_queue_tg_wfp_01_03_02_queue_0_7')
(62, 'ec_better_tg_satcen_01_02_01_queue_tg_satcen_01_02_01_queue_0_3')
(63, 'ec_better_tg_wfp_01_02_03_pipe_tg_wfp_01_02_03_pipe_0_9')
(64, 'coordinator_ec_better_tg_wfp_01_02_01_pipe_tg_wfp_01_02_01_pipe_0_1')
(65, 'ec_better_tg_satcen_01_03_01_pipe_tg_satcen_01_03_01_pipe_0_2')
(66, 'ec_better_tg_wfp_01_02_03_pipe_tg_wfp_01_02_03_queue_0_1')
(67, 'ec_better_tg_wfp_01_02_01_pipe_tg_wfp_01_02_01_pipe_0_2')
(68, 'coordinator_ec_better_tg_satcen_01_02_01_pipe_tg_satcen_01_02_01_pipe_0_1')
(69, 'coordinator_ec_better_tg_wfp_01_03_02_queue_tg_wfp_01_03_02_queue_0_5')
(70, 'ec_better_tg_satcen_01_03_01_queue_tg_satcen_01_03_01_queue_0_5')
(71, 'coordinator_ec_better_tg_pipe_tg_pipe_0_1')
(72, 'ec_better_tg_better_wfp_00001_queue_tg_better_wfp_00001_queue_0_1')
(73, 'coordinator_ec_better_tg_wfp_01_01_01_pipe_tg_wfp_01_01_01_pipe_0_6')
(74, 'ec_better_tg_wfp_01_02_02_queue_tg_wfp_01_02_02_queue_0_4')
(75, 'ec_better_tg_wfp_01_02_03_queue_tg_wfp_01_02_03_queue_0_1')
(76, 'ec_better_tg_wfp_01_02_02_pipe_tg_wfp_01_02_02_pipe_0_7')
(77, 'ec_better_tg_wfp_01_02_02_pipe_tg_wfp_01_02_02_pipe_0_6')
(78, 'coordinator_ec_better_tg_wfp_01_03_02_queue_tg_wfp_01_03_02_queue_0_6')
(79, 'coordinator_ec_better_tg_wfp_01_02_03_queue_tg_wfp_01_02_03_queue_0_6')
(80, 'coordinator_ec_better_tg_wfp_01_03_02_queue_tg_wfp_01_03_02_queue_0_4')
(81, 'coordinator_ec_better_tg_wfp_01_02_03_pipe_tg_wfp_01_02_03_pipe_0_7')
(82, 'ec_better_tg_common_sen2cor_pipe_tg_common_sen2cor_pipe_0_5')
(83, 'coordinator_ec_better_tg_satcen_01_01_01_queue_tg_satcen_01_01_01_queue_0_7')
(84, 'coordinator_ec_better_tg_common_sen2cor_queue_ss_tg_common_sen2cor_queue_ss_0_2')
(85, 'coordinator_ec_better_tg_wfp_01_02_02_queue_ss_tg_wfp_01_02_02_queue_ss_0_9')
(86, 'ec_better_tg_satcen_01_02_01_pipe_tg_satcen_01_02_01_pipe_0_1')
(87, 'coordinator_ec_better_tg_wfp_01_02_01_queue_tg_wfp_01_02_01_queue_0_3')
(88, 'coordinator_ec_better_tg_wfp_01_03_01_queue_tg_wfp_01_03_01_queue_0_4')
(89, 'coordinator_ec_better_tg_common_sen2cor_queue_tg_common_sen2cor_queue_0_6')
(90, 'ec_better_tg_wfp_01_01_01_queue_tg_wfp_01_01_01_queue_0_6')
(91, 'coordinator_ec_better_tg_wfp_01_01_01_queue_tg_wfp_01_01_01_queue_0_8')
(92, 'coordinator_ec_better_tg_wfp_01_01_01_queue_tg_wfp_01_01_01_queue_0_10')
(93, 'ec_better_tg_wfp_01_03_01_queue_tg_wfp_01_03_01_queue_0_4')
(94, 'ec_better_tg_ethz_01_03_01_via_tg_tg_ethz_01_03_01_via_1_1')
(95, 'coordinator_ec_better_tg_wfp_01_02_01_pipe_tg_wfp_01_02_01_pipe_0_2')
(96, 'coordinator_ec_better_tg_wfp_01_01_01_queue_tg_wfp_01_01_01_queue_0_9')
(97, 'ec_better_tg_satcen_01_02_01_queue_tg_satcen_01_02_01_queue_0_5')
(98, 'coordinator_ec_better_tg_satcen_01_02_01_queue_tg_satcen_01_02_01_queue_0_4')
(99, 'DeployProcess')
(100, 'coordinator_ec_better_tg_wfp_01_02_03_queue_tg_wfp_01_02_03_queue_0_4')
(101, 'coordinator_ec_better_tg_wfp_01_01_01_pipe_tg_wfp_01_01_01_pipe_0_8')
(102, 'ec_better_tg_common_sen2cor_queue_tg_common_sen2cor_queue_0_6')
(103, 'ec_better_tg_satcen_01_03_01_pipe_tg_satcen_01_03_01_pipe_0_3')
(104, 'ec_better_tg_wfp_01_02_02_queue_ss_tg_wfp_01_02_02_queue_ss_0_10')
(105, 'coordinator_ec_better_tg_satcen_01_02_01_queue_tg_satcen_01_02_01_queue_0_2')
(106, 'GetStatus')
(107, 'ec_better_tg_satcen_01_02_01_queue_tg_satcen_01_02_01_queue_0_2')
(108, 'ec_better_tg_better_wfp_00001_queue_tg_better_wfp_00001_queue_0_3')
(109, 'coordinator_ec_better_tg_wfp_01_02_02_pipe_tg_wfp_01_02_02_pipe_0_7')
(110, 'coordinator_ec_better_tg_satcen_01_02_01_queue_tg_satcen_01_02_01_queue_0_5')
(111, 'ec_better_tg_pipe_tg_pipe_0_1')
(112, 'ec_better_tg_satcen_01_01_01_pipe_tg_satcen_01_01_01_pipe_0_2')
(113, 'coordinator_ec_better_tg_satcen_01_03_01_queue_tg_satcen_01_03_01_queue_0_7')
(114, 'ec_better_tg_wfp_01_03_02_queue_tg_wfp_01_03_02_queue_0_5')
(115, 'coordinator_ec_better_tg_wfp_01_02_02_queue_ss_tg_wfp_01_02_02_queue_ss_0_10')
(116, 'coordinator_ec_better_tg_wfp_01_01_02_queue_tg_wfp_01_01_02_queue_0_1')
(117, 'ec_better_tg_wfp_01_01_01_pipe_tg_wfp_01_01_01_pipe_0_9')
(118, 'ec_better_tg_wfp_01_02_03_pipe_tg_wfp_01_02_03_pipe_0_3')
(119, 'ec_better_tg_wfp_01_01_01_pipe_tg_better_wfp_00001_pipe_0_5')
(120, 'ec_better_tg_wfp_01_01_01_queue_tg_better_wfp_00001_queue_0_4')
(121, 'ec_better_tg_satcen_01_03_01_queue_tg_satcen_01_03_01_queue_0_6')
(122, 'ec_better_tg_wfp_01_01_01_pipe_tg_wfp_01_01_01_pipe_0_11')
(123, 'ec_better_tg_wfp_01_02_03_queue_tg_wfp_01_02_03_queue_0_6')
(124, 'TerradueDeployProcess')
(125, 'ec_better_tg_wfp_01_03_02_queue_tg_wfp_01_03_02_queue_0_1')
(126, 'coordinator_ec_better_tg_wfp_01_02_01_queue_tg_wfp_01_02_01_queue_0_1')
(127, 'coordinator_ec_better_tg_satcen_01_03_01_pipe_tg_satcen_01_03_01_pipe_0_3')
(128, 'coordinator_ec_better_tg_wfp_01_01_01_queue_tg_wfp_01_01_01_queue_0_5')
(129, 'coordinator_ec_better_tg_wfp_01_01_02_queue_tg_wfp_01_01_02_queue_0_3')
(130, 'coordinator_ec_better_tg_wfp_01_01_01_pipe_tg_wfp_01_01_01_pipe_0_11')
(131, 'coordinator_ec_better_tg_satcen_01_01_01_pipe_tg_satcen_01_01_01_pipe_0_2')
(132, 'ec_better_tg_satcen_01_01_01_pipe_tg_satcen_01_01_01_pipe_0_4')
(133, 'coordinator_ec_better_tg_satcen_01_03_01_pipe_tg_satcen_01_03_01_pipe_0_4')
(134, 'ec_better_tg_pipe_tg_pipe_0_2')
(135, 'ec_better_tg_wfp_01_02_03_pipe_tg_wfp_01_02_03_pipe_0_5')
(136, 'ec_better_tg_wfp_01_02_03_queue_tg_wfp_01_02_03_queue_0_4')
(137, 'ec_better_tg_wfp_01_02_01_pipe_tg_wfp_01_02_01_pipe_0_1')
(138, 'coordinator_ec_better_tg_pipe_tg_pipe_0_2')
(139, 'ec_better_tg_satcen_01_01_01_queue_tg_stacen_01_01_01_queue_0_2')
(140, 'coordinator_ec_better_tg_pipe_tg_pipe_0_3')
(141, 'coordinator_ec_better_tg_wfp_01_01_01_pipe_tg_wfp_01_01_01_pipe_0_9')
(142, 'coordinator_ec_better_tg_wfp_01_02_02_pipe_tg_wfp_01_02_02_pipe_0_6')
(143, 'ec_better_tg_wfp_01_03_02_queue_tg_wfp_01_03_02_queue_0_6')
(144, 'ec_better_tg_wfp_01_01_01_pipe_tg_wfp_01_01_01_pipe_0_8')
(145, 'coordinator_ec_better_tg_satcen_01_03_01_queue_tg_satcen_01_03_01_queue_0_5')
(146, 'ec_better_tg_satcen_01_02_01_queue_tg_satcen_01_02_01_queue_0_6')
(147, 'ec_better_tg_wfp_01_01_01_queue_tg_wfp_01_01_01_queue_0_5')
(148, 'ec_better_wfp_01_01_01_wfp_01_01_01_1_0')
(149, 'coordinator_ec_better_tg_wfp_01_03_02_queue_tg_wfp_01_03_02_queue_0_3')

Deploy Trigger-Pipe on Production Centre

In [11]:
trigger_pipe = dict([('artifact_id', trigger_pipe_artifact_id),
                     ('version', trigger_pipe_version),
                      ('repository', repository),
                      ('folder', folder),
                      ('community', community)])

trigger_pipe_process_id = '%s_%s_%s_%s' % (trigger_pipe['community'].replace('-', '_'),
                                            trigger_pipe['artifact_id'].replace('-', '_'),
                                            trigger_pipe['artifact_id'].replace('-', '_'),
                                            trigger_pipe['version'].replace('.', '_'))

In [17]:
trigger_pipe_process_id
Out[17]:
'ec_better_tg_wfp_01_01_01_pipe_tg_wfp_01_01_01_pipe_0_11'
In [18]:

for trigger in [trigger_pipe]:
    ows_context_url = '/%s/_applications/%s/%s/%s/%s-%s-application-context.xml' % (trigger['community'],
                                                                                    trigger['community'],
                                                                                    trigger['artifact_id'],
                                                                                    trigger['version'],
                                                                                    trigger['artifact_id'],
                                                                                    trigger['version'])

    trigger_process_id = '%s_%s_%s_%s' % (trigger['community'].replace('-', '_'),
                                          trigger['artifact_id'].replace('-', '_'),
                                          trigger['artifact_id'].replace('-', '_'),
                                          trigger['version'].replace('.', '_'))

    print 'Deploying %s' % ows_context_url

    inputs = [('applicationPackage', ows_context_url),
              ('apikey', ellip_api_key),
              ('coordinator', 'False')]

    execution = owslib.wps.WPSExecution(url=wps.url)

    execution_request = execution.buildRequest(process_id,
                                               inputs,
                                               output=[('deployResult', False)])


    execution_response = execution.submitRequest(etree.tostring(execution_request))

    execution.parseResponse(execution_response)

    monitorExecution(execution)

    if execution.isSucceded():
        print 'Application %s deployment is successful' % trigger_process_id
    else:
        raise Exception('Application %s deployment failed' % trigger_process_id)
Deploying /ec-better/_applications/ec-better/tg-wfp-01-01-01-pipe/0.11/tg-wfp-01-01-01-pipe-0.11-application-context.xml
Application ec_better_tg_wfp_01_01_01_pipe_tg_wfp_01_01_01_pipe_0_11 deployment is successful
In [19]:
inputs = [('applicationPackage', ows_context_url),
              ('apikey', ellip_api_key),
              ('coordinator', 'True')]

execution = owslib.wps.WPSExecution(url=wps.url)

execution_request = execution.buildRequest(process_id,
                                               inputs,
                                               output=[('deployResult', False)])

execution_response = execution.submitRequest(etree.tostring(execution_request))

execution.parseResponse(execution_response)

monitorExecution(execution)

if execution.isSucceded():
        print 'Application coordinator-%s deployment is successful' % trigger_process_id
else:
    raise Exception('Application coordinator-%s deployment failed' % trigger_process_id)
Application coordinator-ec_better_tg_wfp_01_01_01_pipe_tg_wfp_01_01_01_pipe_0_11 deployment is successful
In [20]:
wps = WebProcessingService(wps_url, verbose=False, skip_caps=True)
wps.getcapabilities()


trigger_pipe_deployed = False

for index, elem in enumerate(wps.processes):


     if elem.identifier == trigger_pipe_process_id:
            trigger_pipe_deployed = True


if trigger_pipe_deployed:
    print 'Process %s deployed' % trigger_pipe_process_id
else:
    raise Exception('Process %s not deployed' % trigger_pipe_process_id)
Process ec_better_tg_wfp_01_01_01_pipe_tg_wfp_01_01_01_pipe_0_11 deployed