WFP-01-03-01 Deploy the application on the Production Centre - COPERNICUS Vegetation Indicators - Aggregations and AnomaliesΒΆ

This Jupyter Notebook creates a Web Processing Request to deploy the data transformation application on the Production Centre.

  • First do the imports of the Python libraries required and also of our own aux_functions file
In [1]:
import time
import lxml.etree as etree
import sys
import requests
import os
import string
import hashlib
import urllib2
import pytz
from datetime import datetime
import time
import owslib
from owslib.wps import monitorExecution
import uuid
from owslib.wps import WebProcessingService
import getpass
from nbconvert.preprocessors import ExecutePreprocessor, CellExecutionError
import nbformat as nbf
  • Load the data pipeline configuration
In [2]:
%store -r

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

nb = nbf.read(nb_config, 4)

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

app = dict([('artifact_id', app_artifact_id.replace('ewf-','')),
            ('version', app_version),
            ('repository', repository),
            ('community', community)])
app_process_id = '%s_%s_%s_%s' % (app['community'].replace('-', '_'), app['artifact_id'].replace('-', '_'), app['artifact_id'].replace('-', '_'), app['version'].replace('.', '_'))
In [3]:
print(app_process_id)
ec_better_wfp_01_03_01_wfp_01_03_01_1_5
  • Connect to the WPS server and do a GetCapabilities request to check if the deploy process is available:
In [5]:
api_key = getpass.getpass('Ellip API Key')
In [6]:
wps_url = 'https://ec-better-apps-deployer.terradue.com/zoo-bin/zoo_loader.cgi'

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

wps.getcapabilities()
In [7]:
for index, elem in enumerate(wps.processes):
    print(index, elem.identifier)
(0, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_5')
(1, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_14')
(2, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_10')
(3, 'ec_better_ewf_satcen_01_03_01_ewf_satcen_01_03_01_0_4')
(4, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_6')
(5, 'ec_better_ewf_sen2cor_ewf_sen2cor_0_12')
(6, 'ec_better_ewf_ethz_01_02_01_ewf_ethz_01_02_01_0_4')
(7, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_11')
(8, 'ec_better_ewf_satcen_01_03_01_ewf_satcen_01_03_01_0_3')
(9, 'UnDeployProcess')
(10, 'ec_better_dcs_better_wfp_00001_dcs_better_wfp_00001_1_1')
(11, 'ec_better_ewf_wfp_01_02_01_ewf_wfp_01_02_01_0_1')
(12, 'ec_better_ewf_wfp_01_01_01_ewf_wfp_01_01_01_1_14')
(13, 'ec_better_ewf_satcen_01_03_01_ewf_satcen_01_03_01_0_5')
(14, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_15')
(15, 'ec_better_ewf_ethz_01_03_01_ewf_ethz_01_03_01_0_6')
(16, 'ec_better_wfp_01_03_01_wfp_01_03_01_1_0')
(17, 'ec_better_ewf_wfp_01_02_02_ewf_wfp_01_02_02_0_6')
(18, 'ec_better_ewf_ethz_01_01_01_ewf_ethz_01_01_01_0_7')
(19, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_14')
(20, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_12')
(21, 'ec_better_ewf_wfp_01_02_03_ewf_wfp_01_02_03_0_5')
(22, 'ec_better_wfp_01_01_01_wfp_01_01_01_1_5')
(23, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_10')
(24, 'ec_better_ewf_sen2cor_sen2cor_0_3')
(25, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_8')
(26, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_11')
(27, 'ec_better_ewf_satcen_01_03_01_ewf_satcen_01_03_01_0_7')
(28, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_2')
(29, 'ec_better_ewf_wfp_01_02_02_ewf_wfp_01_02_02_0_10')
(30, 'ec_better_ewf_wfp_01_02_01_ewf_wfp_01_02_01_0_3')
(31, 'ec_better_ewf_ethz_01_01_01_ewf_ethz_01_01_01_0_2')
(32, 'ec_better_ewf_wfp_01_01_01_ewf_wfp_01_01_01_1_9')
(33, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_2')
(34, 'ec_better_ewf_ethz_01_01_01_ewf_ethz_01_01_01_0_5')
(35, 'ec_better_wfp_01_01_01_wfp_01_01_01_0_4')
(36, 'ec_better_wfp_01_01_01_wfp_01_01_01_1_7')
(37, 'ec_better_ewf_satcen_01_03_01_ewf_satcen_01_03_01_0_6')
(38, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_13')
(39, 'TerradueUnDeployProcess')
(40, 'ec_better_ewf_sen2cor_sen2cor_0_4')
(41, 'ec_better_wfp_01_03_01_wfp_01_03_01_1_2')
(42, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_14')
(43, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_8')
(44, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_5')
(45, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_3')
(46, 'ec_better_ewf_ethz_01_01_01_ewf_ethz_01_01_01_0_6')
(47, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_16')
(48, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_8')
(49, 'ec_better_wfp_01_01_01_g_wfp_01_01_01_0_4')
(50, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_9')
(51, 'ec_better_ewf_satcen_01_03_01_ewf_satcen_01_03_01_0_2')
(52, 'ec_better_ewf_ethz_01_01_01_ewf_ethz_01_01_01_0_1')
(53, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_1')
(54, 'ec_better_ewf_wfp_01_01_01_ewf_wfp_01_01_01_1_16')
(55, 'ec_better_ewf_ethz_01_03_02_ewf_ethz_01_03_02_0_2')
(56, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_3')
(57, 'coordinator_ec_better_wfp_01_03_01_wfp_01_03_01_1_2')
(58, 'ec_better_wfp_01_01_01_wfp_01_01_01_1_1')
(59, 'ec_better_ewf_wfp_01_02_01_ewf_wfp_01_02_01_0_2')
(60, 'ec_better_ewf_ethz_01_02_01_ewf_ethz_01_02_01_0_7')
(61, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_13')
(62, 'ec_better_wfp_01_03_01_wfp_01_03_01_1_3')
(63, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_1')
(64, 'ec_better_ewf_sen2cor_sen2cor_0_1')
(65, 'ec_better_ewf_wfp_01_01_01_ewf_wfp_01_01_01_1_10')
(66, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_12')
(67, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_9')
(68, 'ec_better_ewf_wfp_01_02_02_ewf_wfp_01_02_02_0_11')
(69, 'ec_better_ewf_satcen_01_01_01_ewf_satcen_01_01_01_0_11')
(70, 'ec_better_ewf_satcen_01_03_01_ewf_satcen_01_03_01_0_1')
(71, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_13')
(72, 'ec_better_dcs_better_wfp_00001_dcs_better_wfp_00001_1_2_1')
(73, 'ec_better_wfp_01_01_01_wfp_01_01_01_0_1')
(74, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_0')
(75, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_7')
(76, 'ec_better_ewf_ethz_01_03_01_ewf_ethz_01_03_01_0_2')
(77, 'ec_better_ewf_ethz_01_02_01_ewf_ethz_01_02_01_0_6')
(78, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_17')
(79, 'ec_better_ewf_wfp_01_01_01_ewf_wfp_01_01_01_1_15')
(80, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_5')
(81, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_11')
(82, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_7')
(83, 'DeployProcess')
(84, 'ec_better_ewf_sen2cor_ewf_sen2cor_0_11')
(85, 'ec_better_ewf_sen2cor_ewf_sen2cor_0_9')
(86, 'ec_better_wfp_01_01_01_wfp_01_01_01_1_6')
(87, 'GetStatus')
(88, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_8')
(89, 'ec_better_tg_wfp_01_02_02_queue_start_stop_tg_wfp_01_02_02_queue_start_stop_0_1')
(90, 'ec_better_ewf_wfp_01_02_02_ewf_wfp_01_02_02_0_9')
(91, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_13')
(92, 'ec_better_ewf_wfp_01_02_03_ewf_wfp_01_02_03_0_4')
(93, 'ec_better_ewf_ethz_01_03_01_ewf_ethz_01_03_01_0_5')
(94, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_10')
(95, 'coordinator_ec_better_wfp_01_03_01_wfp_01_03_01_1_1')
(96, 'ec_better_wfp_01_03_01_wfp_01_03_01_1_1')
(97, 'coordinator_ec_better_wfp_01_03_01_wfp_01_03_01_1_3')
(98, 'ec_better_ewf_satcen_01_01_01_ewf_satcen_01_01_01_0_10')
(99, 'ec_better_ewf_sen2cor_ewf_sen2cor_0_6')
(100, 'ec_better_wfp_01_01_01_wfp_01_01_01_1_2')
(101, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_10')
(102, 'TerradueDeployProcess')
(103, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_0')
(104, 'ec_better_ewf_wfp_01_02_02_ewf_wfp_01_02_02_0_8')
(105, 'ec_better_ewf_sen2cor_sen2cor_0_2')
(106, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_9')
(107, 'ec_better_ewf_wfp_01_01_01_ewf_wfp_01_01_01_1_11')
(108, 'ec_better_ewf_wfp_01_01_01_ewf_wfp_01_01_01_1_13')
(109, 'ec_better_ewf_satcen_01_01_01_ewf_satcen_01_01_01_0_12')
(110, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_14')
(111, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_11')
(112, 'ec_better_wfp_01_01_01_a_wfp_01_01_01_0_1')
(113, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_9')
(114, 'ec_better_ewf_ethz_01_03_01_ewf_ethz_01_03_01_0_4')
(115, 'ec_better_wfp_01_01_01_wfp_01_01_01_1_0')
  • Select the TerradueDeployProcess process to submit a DescribeProcess request and list the inputs and outputs:
In [8]:
process_id = 'TerradueDeployProcess'

process = wps.describeprocess(process_id)

for input in process.dataInputs:
    print(input.abstract)
An application package, encoded as an ATOM-encoded OGC context document, describing the details of the application.
Reference to user's apikey
Set True to deploy the coordinators
In [9]:
for process_output in process.processOutputs:
    print process_output.identifier
deployResult
  • Create the OWS Context document URL:
In [10]:
ows_context_url = '/%s/_applications/%s/%s/%s/%s-%s-application-context.xml' % (app['community'],
                                                                   app['community'],
                                                                   app['artifact_id'],
                                                                   app['version'],
                                                                   app['artifact_id'],
                                                                    app['version'])
In [11]:
print(ows_context_url)
/ec-better/_applications/ec-better/wfp-01-03-01/1.5/wfp-01-03-01-1.5-application-context.xml
  • Cretate the TerradueDeployProcess inputs
In [12]:
inputs = [('applicationPackage', ows_context_url),
          ('apikey', api_key),
          ('coordinator', 'True')]
  • Submit the TerradueDeployProcess Execute WPS request:
In [13]:
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)
  • Monitor the TerradueDeployProcess Execute request:
In [14]:
monitorExecution(execution)
  • Check if the application was successfully deployed
In [15]:
if execution.isSucceded():

    print 'Application deployed!'

else:

    print 'Application not deployed :-('
Application deployed!
  • List the WPS process available, the newly deployed process must be amongst the exposed process
In [16]:
wps = WebProcessingService(wps_url, verbose=False, skip_caps=True)

wps.getcapabilities()

app_deployed = False
In [17]:
for index, elem in enumerate(wps.processes):
    if elem.identifier == app_process_id:
        app_deployed = True
    print(index, elem.identifier)

if app_deployed:
    print 'Process %s deployed' % app_process_id
else:
    raise Exception('Process %s not deployed' % app_process_id)
(0, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_5')
(1, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_14')
(2, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_10')
(3, 'ec_better_ewf_satcen_01_03_01_ewf_satcen_01_03_01_0_4')
(4, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_6')
(5, 'ec_better_ewf_sen2cor_ewf_sen2cor_0_12')
(6, 'ec_better_ewf_ethz_01_02_01_ewf_ethz_01_02_01_0_4')
(7, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_11')
(8, 'ec_better_ewf_satcen_01_03_01_ewf_satcen_01_03_01_0_3')
(9, 'UnDeployProcess')
(10, 'ec_better_dcs_better_wfp_00001_dcs_better_wfp_00001_1_1')
(11, 'ec_better_ewf_wfp_01_02_01_ewf_wfp_01_02_01_0_1')
(12, 'ec_better_ewf_wfp_01_01_01_ewf_wfp_01_01_01_1_14')
(13, 'ec_better_ewf_satcen_01_03_01_ewf_satcen_01_03_01_0_5')
(14, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_15')
(15, 'ec_better_ewf_ethz_01_03_01_ewf_ethz_01_03_01_0_6')
(16, 'ec_better_wfp_01_03_01_wfp_01_03_01_1_0')
(17, 'ec_better_ewf_wfp_01_02_02_ewf_wfp_01_02_02_0_6')
(18, 'ec_better_ewf_ethz_01_01_01_ewf_ethz_01_01_01_0_7')
(19, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_14')
(20, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_12')
(21, 'ec_better_ewf_wfp_01_02_03_ewf_wfp_01_02_03_0_5')
(22, 'ec_better_wfp_01_01_01_wfp_01_01_01_1_5')
(23, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_10')
(24, 'ec_better_ewf_sen2cor_sen2cor_0_3')
(25, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_8')
(26, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_11')
(27, 'ec_better_ewf_satcen_01_03_01_ewf_satcen_01_03_01_0_7')
(28, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_2')
(29, 'ec_better_ewf_wfp_01_02_02_ewf_wfp_01_02_02_0_10')
(30, 'ec_better_ewf_wfp_01_02_01_ewf_wfp_01_02_01_0_3')
(31, 'ec_better_ewf_ethz_01_01_01_ewf_ethz_01_01_01_0_2')
(32, 'ec_better_ewf_wfp_01_01_01_ewf_wfp_01_01_01_1_9')
(33, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_2')
(34, 'ec_better_ewf_ethz_01_01_01_ewf_ethz_01_01_01_0_5')
(35, 'ec_better_wfp_01_01_01_wfp_01_01_01_0_4')
(36, 'ec_better_wfp_01_01_01_wfp_01_01_01_1_7')
(37, 'ec_better_ewf_satcen_01_03_01_ewf_satcen_01_03_01_0_6')
(38, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_13')
(39, 'TerradueUnDeployProcess')
(40, 'ec_better_ewf_sen2cor_sen2cor_0_4')
(41, 'ec_better_wfp_01_03_01_wfp_01_03_01_1_2')
(42, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_14')
(43, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_8')
(44, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_5')
(45, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_3')
(46, 'ec_better_ewf_ethz_01_01_01_ewf_ethz_01_01_01_0_6')
(47, 'coordinator_ec_better_wfp_01_03_01_wfp_01_03_01_1_5')
(48, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_16')
(49, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_8')
(50, 'ec_better_wfp_01_01_01_g_wfp_01_01_01_0_4')
(51, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_9')
(52, 'ec_better_ewf_satcen_01_03_01_ewf_satcen_01_03_01_0_2')
(53, 'ec_better_ewf_ethz_01_01_01_ewf_ethz_01_01_01_0_1')
(54, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_1')
(55, 'ec_better_ewf_wfp_01_01_01_ewf_wfp_01_01_01_1_16')
(56, 'ec_better_ewf_ethz_01_03_02_ewf_ethz_01_03_02_0_2')
(57, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_3')
(58, 'coordinator_ec_better_wfp_01_03_01_wfp_01_03_01_1_2')
(59, 'ec_better_wfp_01_01_01_wfp_01_01_01_1_1')
(60, 'ec_better_ewf_wfp_01_02_01_ewf_wfp_01_02_01_0_2')
(61, 'ec_better_ewf_ethz_01_02_01_ewf_ethz_01_02_01_0_7')
(62, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_13')
(63, 'ec_better_wfp_01_03_01_wfp_01_03_01_1_3')
(64, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_1')
(65, 'ec_better_ewf_sen2cor_sen2cor_0_1')
(66, 'ec_better_ewf_wfp_01_01_01_ewf_wfp_01_01_01_1_10')
(67, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_12')
(68, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_9')
(69, 'ec_better_ewf_wfp_01_02_02_ewf_wfp_01_02_02_0_11')
(70, 'ec_better_ewf_satcen_01_01_01_ewf_satcen_01_01_01_0_11')
(71, 'ec_better_ewf_satcen_01_03_01_ewf_satcen_01_03_01_0_1')
(72, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_13')
(73, 'ec_better_wfp_01_03_01_wfp_01_03_01_1_5')
(74, 'ec_better_dcs_better_wfp_00001_dcs_better_wfp_00001_1_2_1')
(75, 'ec_better_wfp_01_01_01_wfp_01_01_01_0_1')
(76, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_0')
(77, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_7')
(78, 'ec_better_ewf_ethz_01_03_01_ewf_ethz_01_03_01_0_2')
(79, 'ec_better_ewf_ethz_01_02_01_ewf_ethz_01_02_01_0_6')
(80, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_17')
(81, 'ec_better_ewf_wfp_01_01_01_ewf_wfp_01_01_01_1_15')
(82, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_5')
(83, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_11')
(84, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_7')
(85, 'DeployProcess')
(86, 'ec_better_ewf_sen2cor_ewf_sen2cor_0_11')
(87, 'ec_better_ewf_sen2cor_ewf_sen2cor_0_9')
(88, 'ec_better_wfp_01_01_01_wfp_01_01_01_1_6')
(89, 'GetStatus')
(90, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_8')
(91, 'ec_better_tg_wfp_01_02_02_queue_start_stop_tg_wfp_01_02_02_queue_start_stop_0_1')
(92, 'ec_better_ewf_wfp_01_02_02_ewf_wfp_01_02_02_0_9')
(93, 'ec_better_ewf_wfp_01_01_02_ewf_wfp_01_01_02_0_13')
(94, 'ec_better_ewf_wfp_01_02_03_ewf_wfp_01_02_03_0_4')
(95, 'ec_better_ewf_ethz_01_03_01_ewf_ethz_01_03_01_0_5')
(96, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_10')
(97, 'coordinator_ec_better_wfp_01_03_01_wfp_01_03_01_1_1')
(98, 'ec_better_wfp_01_03_01_wfp_01_03_01_1_1')
(99, 'coordinator_ec_better_wfp_01_03_01_wfp_01_03_01_1_3')
(100, 'ec_better_ewf_satcen_01_01_01_ewf_satcen_01_01_01_0_10')
(101, 'ec_better_ewf_sen2cor_ewf_sen2cor_0_6')
(102, 'ec_better_wfp_01_01_01_wfp_01_01_01_1_2')
(103, 'ec_better_wfp_01_03_02_wfp_01_03_02_1_10')
(104, 'TerradueDeployProcess')
(105, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_0')
(106, 'ec_better_ewf_wfp_01_02_02_ewf_wfp_01_02_02_0_8')
(107, 'ec_better_ewf_sen2cor_sen2cor_0_2')
(108, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_9')
(109, 'ec_better_ewf_wfp_01_01_01_ewf_wfp_01_01_01_1_11')
(110, 'ec_better_ewf_wfp_01_01_01_ewf_wfp_01_01_01_1_13')
(111, 'ec_better_ewf_satcen_01_01_01_ewf_satcen_01_01_01_0_12')
(112, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_14')
(113, 'coordinator_ec_better_wfp_01_03_02_wfp_01_03_02_1_11')
(114, 'ec_better_wfp_01_01_01_a_wfp_01_01_01_0_1')
(115, 'ec_better_ewf_satcen_01_02_01_ewf_satcen_01_02_01_0_9')
(116, 'ec_better_ewf_ethz_01_03_01_ewf_ethz_01_03_01_0_4')
(117, 'ec_better_wfp_01_01_01_wfp_01_01_01_1_0')
Process ec_better_wfp_01_03_01_wfp_01_03_01_1_5 deployed
In [18]:

process = wps.describeprocess(app_process_id)

for input in process.dataInputs:
    print(input.identifier)
source
N_1
N_3
N_6
N_9
N_12
N_15
N_18
N_27
N_36
regionOfInterest
nameOfRegion
_T2Username