From 6b4095f07b47e7f644b5b976b9cd5b52cf826857 Mon Sep 17 00:00:00 2001 From: Francis Charette Migneault Date: Tue, 21 Sep 2021 20:35:20 -0400 Subject: [PATCH 1/7] update test weaver 4.0 + run on live instance --- .../notebook-components/weaver_example.ipynb | 1110 +++++++++-------- 1 file changed, 593 insertions(+), 517 deletions(-) diff --git a/docs/source/notebook-components/weaver_example.ipynb b/docs/source/notebook-components/weaver_example.ipynb index a01c1205..6b6368d2 100644 --- a/docs/source/notebook-components/weaver_example.ipynb +++ b/docs/source/notebook-components/weaver_example.ipynb @@ -36,10 +36,10 @@ "output_type": "stream", "text": [ "Variables:\n", - " WEAVER_TEST_FQDN host-140-88.rdext.crim.ca\n", - " WEAVER_TEST_URL https://host-140-88.rdext.crim.ca/weaver\n", + " WEAVER_TEST_FQDN host-140-154.rdext.crim.ca\n", + " WEAVER_TEST_URL https://host-140-154.rdext.crim.ca/weaver\n", " WEAVER_TEST_SSL_VERIFY True\n", - " WEAVER_TEST_FILE https://host-140-88.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc\n", + " WEAVER_TEST_FILE https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc\n", " WEAVER_TEST_KNOWN_BIRDS ['catalog', 'finch', 'flyingpigeon', 'hummingbird', 'malleefowl', 'raven']\n" ] } @@ -121,7 +121,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 20, "metadata": { "collapsed": false, "jupyter": { @@ -139,49 +139,14 @@ "Listing WPS providers registered under Weaver...\n", "\n", "{\n", + " \"checked\": false,\n", " \"providers\": [\n", - " {\n", - " \"id\": \"catalog\",\n", - " \"title\": \"PyWPS Processing Service\",\n", - " \"abstract\": \"PyWPS is an implementation of the Web Processing Service standard from the Open Geospatial Consortium. PyWPS is written in Python.\",\n", - " \"url\": \"https://host-140-88.rdext.crim.ca/weaver/providers/catalog\",\n", - " \"public\": false\n", - " },\n", - " {\n", - " \"id\": \"finch\",\n", - " \"title\": \"Finch\",\n", - " \"abstract\": \"A Web Processing Service for Climate Indicators.\",\n", - " \"url\": \"https://host-140-88.rdext.crim.ca/weaver/providers/finch\",\n", - " \"public\": false\n", - " },\n", - " {\n", - " \"id\": \"flyingpigeon\",\n", - " \"title\": \"Flyingpigeon\",\n", - " \"abstract\": \"A Web Processing Service Testbed.\",\n", - " \"url\": \"https://host-140-88.rdext.crim.ca/weaver/providers/flyingpigeon\",\n", - " \"public\": false\n", - " },\n", - " {\n", - " \"id\": \"hummingbird\",\n", - " \"title\": \"Hummingbird 0.5_dev\",\n", - " \"abstract\": \"WPS processes for general tools used in the climate science community like cdo and compliance checker.\",\n", - " \"url\": \"https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird\",\n", - " \"public\": false\n", - " },\n", - " {\n", - " \"id\": \"malleefowl\",\n", - " \"title\": \"Malleefowl\",\n", - " \"abstract\": \"Malleefowl processes to access climate data from ESGF and Thredds data services.\",\n", - " \"url\": \"https://host-140-88.rdext.crim.ca/weaver/providers/malleefowl\",\n", - " \"public\": false\n", - " },\n", - " {\n", - " \"id\": \"raven\",\n", - " \"title\": \"Raven\",\n", - " \"abstract\": \"Raven offers processes related to hydrological modeling, and in particular, the Raven hydrological modeling framework.\",\n", - " \"url\": \"https://host-140-88.rdext.crim.ca/weaver/providers/raven\",\n", - " \"public\": false\n", - " }\n", + " \"catalog\",\n", + " \"finch\",\n", + " \"flyingpigeon\",\n", + " \"hummingbird\",\n", + " \"malleefowl\",\n", + " \"raven\"\n", " ]\n", "}\n" ] @@ -191,14 +156,15 @@ "print(\"Listing WPS providers registered under Weaver...\\n\")\n", "\n", "path = f\"{WEAVER_TEST_URL}/providers\"\n", - "resp = requests.get(path, headers=WEAVER_HEADERS, verify=WEAVER_TEST_SSL_VERIFY)\n", - "assert resp.status_code == 200, f\"Error during WPS bird providers listing:\\n{json_dump(resp.text)}\"\n", + "query = {\"detail\": False, \"check\": False} # skip pre-fetch to obtain results quickly (they are all checked in following cells)\n", + "resp = requests.get(path, params=query, headers=WEAVER_HEADERS, verify=WEAVER_TEST_SSL_VERIFY)\n", + "assert resp.status_code == 200, f\"Error during WPS bird providers listing from [{path}]:\\n{json_dump(resp.text)}\"\n", "body = resp.json()\n", "json_print(body)\n", "\n", "assert \"providers\" in body and len(body[\"providers\"]), \"Could not find Weaver WPS providers\"\n", - "bird_ids = [bird[\"id\"] for bird in body[\"providers\"]]\n", - "assert all(bird in bird_ids for bird in WEAVER_TEST_KNOWN_BIRDS), \"Could not find all expected Weaver WPS providers\"\n" + "assert all(bird in body[\"providers\"] for bird in WEAVER_TEST_KNOWN_BIRDS), \"Could not find all expected Weaver WPS providers\"\n", + "bird_ids = body[\"providers\"]" ] }, { @@ -213,7 +179,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 21, "metadata": { "collapsed": false, "jupyter": { @@ -230,449 +196,449 @@ "text": [ "Listing WPS provider processes converted to OGC-API interface by Weaver:\n", "\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/catalog/processes/getpoint\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/catalog/processes/ncplotly\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/catalog/processes/pavicrawler\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/catalog/processes/pavicsearch\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/catalog/processes/pavicsupdate\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/catalog/processes/pavicsvalidate\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/catalog/processes/period2indices\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/catalog/processes/pavicstestdocs\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tg\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/wind_speed_from_vector\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/wind_vector_from_speed\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/prsn\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/prlp\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/rain_frzgr\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/rx1day\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/max_n_day_precipitation_amount\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/wetdays\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/dry_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/cwd\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/cdd\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/sdii\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/max_pr_intensity\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/prcptot\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/liquidprcptot\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/solidprcptot\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/last_snowfall\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/first_snowfall\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/days_with_snow\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/days_over_precip_thresh\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/high_precip_low_temp\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/fraction_over_precip_thresh\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/liquid_precip_ratio\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tn_days_below\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tx_days_above\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tx_tn_days_above\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/heat_wave_frequency\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/heat_wave_max_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/heat_wave_total_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/heat_wave_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/hot_spell_frequency\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/hot_spell_max_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tg_mean\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tg_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tg_min\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tx_mean\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tx_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tx_min\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tn_mean\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tn_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tn_min\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/dtr\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/dtrmax\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/dtrvar\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/etr\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/cold_spell_duration_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/cold_spell_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/cold_spell_frequency\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/dlyfrzthw\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/cooling_degree_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/heating_degree_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/growing_degree_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/freshet_start\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/frost_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/frost_season_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/last_spring_frost\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/first_day_below\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/first_day_above\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ice_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/consecutive_frost_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/consecutive_frost_free_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/growing_season_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/growing_season_end\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tropical_nights\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tg90p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tg10p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tx90p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tx10p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tn90p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/tn10p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/degree_days_exceedance_date\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/warm_spell_duration_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/maximum_consecutive_warm_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/fire_season\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/snow_cover_duration\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/continuous_snow_cover_start\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/continuous_snow_cover_end\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/snd_max_doy\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/snow_melt_we_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/melt_and_precip_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/winter_storm\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/blowing_snow\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/base_flow_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/freq_analysis\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/rb_flashiness_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/stats\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/fit\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/doy_qmax\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/doy_qmin\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/sea_ice_extent\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/sea_ice_area\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_wind_speed_from_vector\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_wind_vector_from_speed\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_prsn\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_prlp\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_rain_frzgr\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_rx1day\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_max_n_day_precipitation_amount\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_wetdays\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_dry_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cwd\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cdd\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_sdii\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_max_pr_intensity\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_prcptot\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_liquidprcptot\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_solidprcptot\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_days_over_precip_thresh\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_high_precip_low_temp\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_fraction_over_precip_thresh\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_liquid_precip_ratio\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_days_below\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_days_above\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_tn_days_above\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_frequency\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_max_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_total_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_hot_spell_frequency\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_hot_spell_max_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg_mean\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg_min\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_mean\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_min\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_mean\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_min\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_dtr\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_dtrmax\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_dtrvar\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_etr\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cold_spell_duration_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cold_spell_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cold_spell_frequency\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_dlyfrzthw\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cooling_degree_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_heating_degree_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_growing_degree_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_freshet_start\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_frost_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_frost_season_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_last_spring_frost\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_first_day_below\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_first_day_above\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_ice_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_consecutive_frost_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_consecutive_frost_free_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_growing_season_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_growing_season_end\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tropical_nights\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg90p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg10p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx90p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx10p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn90p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn10p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_degree_days_exceedance_date\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_warm_spell_duration_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_maximum_consecutive_warm_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_fire_season\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_snow_cover_duration\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_continuous_snow_cover_start\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_continuous_snow_cover_end\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_snd_max_doy\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_snow_melt_we_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_melt_and_precip_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_winter_storm\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_blowing_snow\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_base_flow_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_freq_analysis\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_rb_flashiness_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_stats\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_fit\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_doy_qmax\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_doy_qmin\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_sea_ice_extent\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_sea_ice_area\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_wind_speed_from_vector\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_wind_vector_from_speed\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_prsn\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_prlp\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_rain_frzgr\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_rx1day\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_max_n_day_precipitation_amount\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_wetdays\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_dry_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cwd\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cdd\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_sdii\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_max_pr_intensity\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_prcptot\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_liquidprcptot\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_solidprcptot\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_days_over_precip_thresh\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_high_precip_low_temp\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_fraction_over_precip_thresh\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_liquid_precip_ratio\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn_days_below\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx_days_above\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx_tn_days_above\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_frequency\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_max_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_total_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_hot_spell_frequency\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_hot_spell_max_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg_mean\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg_min\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx_mean\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx_min\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn_mean\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn_min\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_dtr\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_dtrmax\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_dtrvar\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_etr\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cold_spell_duration_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cold_spell_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cold_spell_frequency\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_dlyfrzthw\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cooling_degree_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_heating_degree_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_growing_degree_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_freshet_start\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_frost_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_frost_season_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_last_spring_frost\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_first_day_below\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_first_day_above\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_ice_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_consecutive_frost_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_consecutive_frost_free_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_growing_season_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_growing_season_end\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tropical_nights\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg90p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg10p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx90p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx10p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn90p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn10p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_degree_days_exceedance_date\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_warm_spell_duration_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_maximum_consecutive_warm_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_fire_season\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_snow_cover_duration\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_continuous_snow_cover_start\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_continuous_snow_cover_end\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_snd_max_doy\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_snow_melt_we_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_melt_and_precip_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_winter_storm\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_blowing_snow\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_base_flow_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_freq_analysis\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_rb_flashiness_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_stats\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_fit\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_doy_qmax\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_doy_qmin\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_sea_ice_extent\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_sea_ice_area\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_wind_speed_from_vector\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_wind_vector_from_speed\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_prsn\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_prlp\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_rain_frzgr\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_rx1day\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_max_n_day_precipitation_amount\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_wetdays\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_dry_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cwd\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cdd\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_sdii\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_max_pr_intensity\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_prcptot\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_liquidprcptot\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_solidprcptot\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_days_over_precip_thresh\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_high_precip_low_temp\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_fraction_over_precip_thresh\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_liquid_precip_ratio\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn_days_below\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx_days_above\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx_tn_days_above\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_frequency\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_max_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_total_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_hot_spell_frequency\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_hot_spell_max_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg_mean\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg_min\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx_mean\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx_min\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn_mean\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn_min\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_dtr\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_dtrmax\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_dtrvar\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_etr\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cold_spell_duration_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cold_spell_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cold_spell_frequency\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_dlyfrzthw\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cooling_degree_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_heating_degree_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_growing_degree_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_freshet_start\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_frost_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_frost_season_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_last_spring_frost\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_first_day_below\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_first_day_above\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_ice_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_consecutive_frost_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_consecutive_frost_free_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_growing_season_length\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_growing_season_end\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tropical_nights\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg90p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg10p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx90p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx10p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn90p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn10p\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_degree_days_exceedance_date\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_warm_spell_duration_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_maximum_consecutive_warm_days\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_fire_season\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_snow_cover_duration\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_continuous_snow_cover_start\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_continuous_snow_cover_end\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_snd_max_doy\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_snow_melt_we_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_melt_and_precip_max\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_winter_storm\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_blowing_snow\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_base_flow_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_freq_analysis\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_rb_flashiness_index\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_stats\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_fit\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_doy_qmax\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_doy_qmin\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_sea_ice_extent\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_sea_ice_area\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/subset_grid_point_dataset\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/subset_ensemble_BCCAQv2\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/subset_bbox_dataset\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/subset_ensemble_bbox_BCCAQv2\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/BCCAQv2_heat_wave_frequency_gridpoint\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/subset_bbox\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/subset_gridpoint\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/subset_polygon\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/finch/processes/average_polygon\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/flyingpigeon/processes/subset-wfs-polygon\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/flyingpigeon/processes/subset_bbox\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/flyingpigeon/processes/subset_continents\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/flyingpigeon/processes/subset_countries\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/flyingpigeon/processes/pointinspection\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/flyingpigeon/processes/robustness_statistic\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/flyingpigeon/processes/climatechange_signal\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/flyingpigeon/processes/spatial_analog\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/flyingpigeon/processes/plot_spatial_analog\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/flyingpigeon/processes/plot_spaghetti\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/flyingpigeon/processes/plot_uncertainty\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/flyingpigeon/processes/plot_uncertaintyrcp\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/flyingpigeon/processes/plot_map_timemean\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird/processes/spotchecker\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird/processes/cchecker\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird/processes/cfchecker\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird/processes/cmor_checker\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird/processes/qa_cfchecker\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird/processes/qa_checker\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_sinfo\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_operation\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_copy\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_bbox\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_indices\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird/processes/ensembles\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_inter_mpi\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/malleefowl/processes/esgsearch\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/malleefowl/processes/download\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/malleefowl/processes/persist\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/malleefowl/processes/visualize\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/malleefowl/processes/thredds_download\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/malleefowl/processes/thredds_urls\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/malleefowl/processes/thredds_opendap_urls\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/malleefowl/processes/workflow\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/malleefowl/processes/custom_workflow\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/raven\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/raven-gr4j-cemaneige\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/raven-mohyse\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/raven-hmets\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/raven-hbv-ec\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/raven-multi-model\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/climatology_esp\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/hindcast-evaluation\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/hindcasting\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/realtime-forecast\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/climpred_hindcast_verification\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/ostrich-gr4j-cemaneige\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/ostrich-mohyse\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/ostrich-hmets\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/ostrich-hbv-ec\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/raster-subset\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/shape-properties\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/hydrobasins-select\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/terrain-analysis\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/zonal-stats\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/nalcms-zonal-stats\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/nalcms-zonal-stats-raster\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/objective-function\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/regionalisation\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/forecast-floodrisk\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/graph_ensemble_uncertainty\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/graph_single_hydrograph\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/ts_stats_graph\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/graph_objective_function_fit\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/graph_fit\n", - " - https://host-140-88.rdext.crim.ca/weaver/providers/raven/processes/graph_forecast_uncertainty\n" + " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/getpoint\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/ncplotly\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/pavicrawler\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/pavicsearch\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/pavicsupdate\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/pavicsvalidate\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/period2indices\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/pavicstestdocs\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tg\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/wind_speed_from_vector\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/wind_vector_from_speed\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/prsn\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/prlp\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/rain_frzgr\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/rx1day\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/max_n_day_precipitation_amount\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/wetdays\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/dry_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/cwd\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/cdd\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/sdii\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/max_pr_intensity\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/prcptot\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/liquidprcptot\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/solidprcptot\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/last_snowfall\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/first_snowfall\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/days_with_snow\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/days_over_precip_thresh\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/high_precip_low_temp\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/fraction_over_precip_thresh\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/liquid_precip_ratio\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tn_days_below\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tx_days_above\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tx_tn_days_above\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/heat_wave_frequency\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/heat_wave_max_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/heat_wave_total_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/heat_wave_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/hot_spell_frequency\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/hot_spell_max_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tg_mean\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tg_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tg_min\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tx_mean\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tx_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tx_min\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tn_mean\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tn_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tn_min\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/dtr\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/dtrmax\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/dtrvar\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/etr\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/cold_spell_duration_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/cold_spell_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/cold_spell_frequency\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/dlyfrzthw\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/cooling_degree_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/heating_degree_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/growing_degree_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/freshet_start\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/frost_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/frost_season_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/last_spring_frost\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/first_day_below\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/first_day_above\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ice_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/consecutive_frost_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/consecutive_frost_free_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/growing_season_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/growing_season_end\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tropical_nights\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tg90p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tg10p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tx90p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tx10p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tn90p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tn10p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/degree_days_exceedance_date\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/warm_spell_duration_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/maximum_consecutive_warm_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/fire_season\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/snow_cover_duration\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/continuous_snow_cover_start\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/continuous_snow_cover_end\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/snd_max_doy\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/snow_melt_we_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/melt_and_precip_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/winter_storm\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/blowing_snow\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/base_flow_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/freq_analysis\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/rb_flashiness_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/stats\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/fit\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/doy_qmax\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/doy_qmin\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/sea_ice_extent\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/sea_ice_area\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_wind_speed_from_vector\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_wind_vector_from_speed\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_prsn\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_prlp\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_rain_frzgr\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_rx1day\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_max_n_day_precipitation_amount\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_wetdays\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_dry_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cwd\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cdd\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_sdii\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_max_pr_intensity\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_prcptot\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_liquidprcptot\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_solidprcptot\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_days_over_precip_thresh\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_high_precip_low_temp\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_fraction_over_precip_thresh\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_liquid_precip_ratio\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_days_below\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_days_above\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_tn_days_above\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_frequency\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_max_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_total_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_hot_spell_frequency\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_hot_spell_max_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg_mean\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg_min\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_mean\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_min\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_mean\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_min\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_dtr\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_dtrmax\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_dtrvar\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_etr\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cold_spell_duration_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cold_spell_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cold_spell_frequency\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_dlyfrzthw\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cooling_degree_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_heating_degree_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_growing_degree_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_freshet_start\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_frost_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_frost_season_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_last_spring_frost\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_first_day_below\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_first_day_above\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_ice_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_consecutive_frost_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_consecutive_frost_free_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_growing_season_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_growing_season_end\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tropical_nights\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg90p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg10p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx90p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx10p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn90p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn10p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_degree_days_exceedance_date\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_warm_spell_duration_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_maximum_consecutive_warm_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_fire_season\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_snow_cover_duration\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_continuous_snow_cover_start\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_continuous_snow_cover_end\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_snd_max_doy\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_snow_melt_we_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_melt_and_precip_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_winter_storm\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_blowing_snow\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_base_flow_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_freq_analysis\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_rb_flashiness_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_stats\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_fit\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_doy_qmax\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_doy_qmin\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_sea_ice_extent\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_sea_ice_area\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_wind_speed_from_vector\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_wind_vector_from_speed\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_prsn\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_prlp\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_rain_frzgr\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_rx1day\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_max_n_day_precipitation_amount\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_wetdays\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_dry_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cwd\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cdd\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_sdii\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_max_pr_intensity\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_prcptot\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_liquidprcptot\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_solidprcptot\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_days_over_precip_thresh\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_high_precip_low_temp\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_fraction_over_precip_thresh\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_liquid_precip_ratio\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn_days_below\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx_days_above\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx_tn_days_above\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_frequency\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_max_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_total_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_hot_spell_frequency\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_hot_spell_max_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg_mean\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg_min\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx_mean\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx_min\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn_mean\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn_min\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_dtr\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_dtrmax\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_dtrvar\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_etr\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cold_spell_duration_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cold_spell_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cold_spell_frequency\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_dlyfrzthw\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cooling_degree_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_heating_degree_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_growing_degree_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_freshet_start\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_frost_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_frost_season_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_last_spring_frost\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_first_day_below\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_first_day_above\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_ice_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_consecutive_frost_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_consecutive_frost_free_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_growing_season_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_growing_season_end\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tropical_nights\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg90p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg10p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx90p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx10p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn90p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn10p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_degree_days_exceedance_date\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_warm_spell_duration_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_maximum_consecutive_warm_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_fire_season\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_snow_cover_duration\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_continuous_snow_cover_start\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_continuous_snow_cover_end\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_snd_max_doy\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_snow_melt_we_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_melt_and_precip_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_winter_storm\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_blowing_snow\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_base_flow_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_freq_analysis\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_rb_flashiness_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_stats\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_fit\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_doy_qmax\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_doy_qmin\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_sea_ice_extent\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_sea_ice_area\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_wind_speed_from_vector\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_wind_vector_from_speed\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_prsn\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_prlp\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_rain_frzgr\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_rx1day\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_max_n_day_precipitation_amount\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_wetdays\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_dry_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cwd\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cdd\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_sdii\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_max_pr_intensity\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_prcptot\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_liquidprcptot\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_solidprcptot\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_days_over_precip_thresh\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_high_precip_low_temp\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_fraction_over_precip_thresh\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_liquid_precip_ratio\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn_days_below\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx_days_above\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx_tn_days_above\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_frequency\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_max_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_total_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_hot_spell_frequency\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_hot_spell_max_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg_mean\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg_min\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx_mean\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx_min\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn_mean\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn_min\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_dtr\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_dtrmax\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_dtrvar\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_etr\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cold_spell_duration_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cold_spell_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cold_spell_frequency\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_dlyfrzthw\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cooling_degree_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_heating_degree_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_growing_degree_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_freshet_start\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_frost_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_frost_season_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_last_spring_frost\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_first_day_below\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_first_day_above\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_ice_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_consecutive_frost_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_consecutive_frost_free_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_growing_season_length\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_growing_season_end\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tropical_nights\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg90p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg10p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx90p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx10p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn90p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn10p\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_degree_days_exceedance_date\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_warm_spell_duration_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_maximum_consecutive_warm_days\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_fire_season\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_snow_cover_duration\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_continuous_snow_cover_start\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_continuous_snow_cover_end\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_snd_max_doy\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_snow_melt_we_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_melt_and_precip_max\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_winter_storm\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_blowing_snow\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_base_flow_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_freq_analysis\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_rb_flashiness_index\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_stats\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_fit\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_doy_qmax\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_doy_qmin\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_sea_ice_extent\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_sea_ice_area\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/subset_grid_point_dataset\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/subset_ensemble_BCCAQv2\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/subset_bbox_dataset\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/subset_ensemble_bbox_BCCAQv2\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/BCCAQv2_heat_wave_frequency_gridpoint\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/subset_bbox\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/subset_gridpoint\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/subset_polygon\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/average_polygon\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/subset-wfs-polygon\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/subset_bbox\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/subset_continents\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/subset_countries\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/pointinspection\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/robustness_statistic\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/climatechange_signal\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/spatial_analog\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/plot_spatial_analog\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/plot_spaghetti\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/plot_uncertainty\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/plot_uncertaintyrcp\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/plot_map_timemean\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/spotchecker\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cchecker\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cfchecker\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cmor_checker\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/qa_cfchecker\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/qa_checker\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_sinfo\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_operation\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_copy\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_bbox\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_indices\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ensembles\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_inter_mpi\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/esgsearch\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/download\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/persist\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/visualize\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/thredds_download\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/thredds_urls\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/thredds_opendap_urls\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/workflow\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/custom_workflow\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/raven\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/raven-gr4j-cemaneige\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/raven-mohyse\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/raven-hmets\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/raven-hbv-ec\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/raven-multi-model\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/climatology_esp\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/hindcast-evaluation\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/hindcasting\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/realtime-forecast\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/climpred_hindcast_verification\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/ostrich-gr4j-cemaneige\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/ostrich-mohyse\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/ostrich-hmets\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/ostrich-hbv-ec\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/raster-subset\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/shape-properties\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/hydrobasins-select\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/terrain-analysis\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/zonal-stats\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/nalcms-zonal-stats\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/nalcms-zonal-stats-raster\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/objective-function\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/regionalisation\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/forecast-floodrisk\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/graph_ensemble_uncertainty\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/graph_single_hydrograph\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/ts_stats_graph\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/graph_objective_function_fit\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/graph_fit\n", + " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/graph_forecast_uncertainty\n" ] } ], @@ -685,11 +651,11 @@ " resp = requests.get(path, headers=WEAVER_HEADERS, verify=WEAVER_TEST_SSL_VERIFY)\n", " assert resp.status_code == 200, f\"Error during WPS bird processes retrieval:\\n[{json_dump(resp.text)}]\"\n", " body = resp.json()\n", + " assert len(body[\"processes\"]), f\"WPS bird [{bird}] did not list any process!\"\n", " for process in body[\"processes\"]:\n", " process_desc_url = f\"{path}/{process['id']}\"\n", " process_locations.append(process_desc_url)\n", - " print(\" -\", process_desc_url)\n", - "assert len(process_locations), \"Could not find any process!\"" + " print(\" -\", process_desc_url)" ] }, { @@ -707,7 +673,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 22, "metadata": { "collapsed": false, "jupyter": { @@ -722,7 +688,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Will run process: [https://host-140-88.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump]\n" + "Will run process: [https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump]\n" ] } ], @@ -754,7 +720,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 23, "metadata": { "collapsed": false, "jupyter": { @@ -770,18 +736,118 @@ "output_type": "stream", "text": [ "Getting WPS process description...\n", - "\n" - ] - }, - { - "ename": "AssertionError", - "evalue": "Error getting WPS process description:\n[{\"description\": \"The server has either erred or is incapable of performing the requested operation. Unhandled internal server error.\", \"code\": \"Internal Server Error\", \"error\": {\"code\": 500, \"status\": \"500 Internal Server Error\"}}]", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mAssertionError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0mresp\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mrequests\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mWEAVER_BIRD_PROCESS_URL\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mheaders\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mWEAVER_HEADERS\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mverify\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mWEAVER_TEST_SSL_VERIFY\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 4\u001b[0;31m \u001b[0;32massert\u001b[0m \u001b[0mresp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstatus_code\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;36m200\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34mf\"Error getting WPS process description:\\n[{resp.text}]\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 5\u001b[0m \u001b[0mbody\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mresp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mjson\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0mjson_print\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mbody\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;31mAssertionError\u001b[0m: Error getting WPS process description:\n[{\"description\": \"The server has either erred or is incapable of performing the requested operation. Unhandled internal server error.\", \"code\": \"Internal Server Error\", \"error\": {\"code\": 500, \"status\": \"500 Internal Server Error\"}}]" + "\n", + "{\n", + " \"id\": \"ncdump\",\n", + " \"title\": \"NCDump\",\n", + " \"description\": \"Run ncdump to retrieve NetCDF header metadata.\",\n", + " \"keywords\": [\n", + " \"hummingbird\",\n", + " \"wps-remote\"\n", + " ],\n", + " \"metadata\": [\n", + " {\n", + " \"title\": \"Birdhouse\",\n", + " \"href\": \"http://bird-house.github.io/\",\n", + " \"rel\": \"birdhouse\"\n", + " },\n", + " {\n", + " \"title\": \"User Guide\",\n", + " \"href\": \"http://birdhouse-hummingbird.readthedocs.io/en/latest/\",\n", + " \"rel\": \"user-guide\"\n", + " }\n", + " ],\n", + " \"inputs\": {\n", + " \"dataset\": {\n", + " \"title\": \"Dataset\",\n", + " \"description\": \"Enter a URL pointing to a NetCDF file (optional)\",\n", + " \"minOccurs\": 0,\n", + " \"maxOccurs\": 100,\n", + " \"formats\": [\n", + " {\n", + " \"default\": true,\n", + " \"mediaType\": \"application/x-netcdf\"\n", + " }\n", + " ]\n", + " },\n", + " \"dataset_opendap\": {\n", + " \"title\": \"Remote OpenDAP Data URL\",\n", + " \"description\": \"Or provide a remote OpenDAP data URL, for example: http://my.opendap/thredds/dodsC/path/to/file.nc\",\n", + " \"minOccurs\": 0,\n", + " \"maxOccurs\": 100,\n", + " \"literalDataDomains\": [\n", + " {\n", + " \"default\": true,\n", + " \"dataType\": {\n", + " \"name\": \"string\"\n", + " },\n", + " \"valueDefinition\": {\n", + " \"anyValue\": true\n", + " }\n", + " }\n", + " ]\n", + " }\n", + " },\n", + " \"outputs\": {\n", + " \"output\": {\n", + " \"title\": \"NetCDF Metadata\",\n", + " \"description\": \"NetCDF Metadata\",\n", + " \"formats\": [\n", + " {\n", + " \"default\": true,\n", + " \"mediaType\": \"text/plain\"\n", + " }\n", + " ]\n", + " }\n", + " },\n", + " \"visibility\": \"private\",\n", + " \"jobControlOptions\": [\n", + " \"async-execute\"\n", + " ],\n", + " \"outputTransmission\": [\n", + " \"reference\"\n", + " ],\n", + " \"processDescriptionURL\": \"https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump\",\n", + " \"processEndpointWPS1\": \"https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird?service=WPS&request=DescribeProcess&version=1.0.0&identifier=ncdump\",\n", + " \"executeEndpoint\": \"https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump/jobs\",\n", + " \"links\": [\n", + " {\n", + " \"type\": \"application/json\",\n", + " \"title\": \"Process description.\",\n", + " \"hreflang\": \"en-CA\",\n", + " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/processes/ncdump\",\n", + " \"rel\": \"self\"\n", + " },\n", + " {\n", + " \"type\": \"application/json\",\n", + " \"title\": \"Process description.\",\n", + " \"hreflang\": \"en-CA\",\n", + " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/processes/ncdump\",\n", + " \"rel\": \"process-desc\"\n", + " },\n", + " {\n", + " \"type\": \"application/json\",\n", + " \"title\": \"Process execution endpoint for job submission.\",\n", + " \"hreflang\": \"en-CA\",\n", + " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/processes/ncdump/execution\",\n", + " \"rel\": \"execute\"\n", + " },\n", + " {\n", + " \"type\": \"application/json\",\n", + " \"title\": \"List of registered processes.\",\n", + " \"hreflang\": \"en-CA\",\n", + " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/processes\",\n", + " \"rel\": \"collection\"\n", + " },\n", + " {\n", + " \"type\": \"application/xml\",\n", + " \"title\": \"Service definition.\",\n", + " \"hreflang\": \"en-CA\",\n", + " \"href\": \"https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird?service=WPS&request=DescribeProcess&version=1.0.0&identifier=ncdump?service=WPS&request=GetCapabilities\",\n", + " \"rel\": \"service-desc\"\n", + " }\n", + " ]\n", + "}\n" ] } ], @@ -812,7 +878,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 24, "metadata": { "collapsed": false, "jupyter": { @@ -828,9 +894,19 @@ "output_type": "stream", "text": [ "Submitting process job with:\n", - " File: [https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc]\n", - " Process: [https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump]\n", - "Job Status Location: [https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump/jobs/11b4f3fc-e108-41ce-88cf-3ab847f21706]\n" + " File: [https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc]\n", + " Process: [https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump]\n" + ] + }, + { + "ename": "AssertionError", + "evalue": "Error during WPS job submission:\n{\"description\": \"The server has either erred or is incapable of performing the requested operation. Unhandled internal server error.\", \"code\": \"Internal Server Error\", \"error\": {\"code\": 500, \"status\": \"500 Internal Server Error\"}}", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mAssertionError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 22\u001b[0m \u001b[0mpath\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34mf\"{WEAVER_BIRD_PROCESS_URL}/jobs\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 23\u001b[0m \u001b[0mresp\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mrequests\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpost\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mpath\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mjson\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mdata\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mheaders\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mWEAVER_HEADERS\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mverify\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mWEAVER_TEST_SSL_VERIFY\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 24\u001b[0;31m \u001b[0;32massert\u001b[0m \u001b[0mresp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstatus_code\u001b[0m \u001b[0;32min\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;36m200\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m201\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34mf\"Error during WPS job submission:\\n{resp.text}\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 25\u001b[0m \u001b[0mstatus_location\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mresp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mheaders\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"Location\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 26\u001b[0m \u001b[0;32massert\u001b[0m \u001b[0mstatus_location\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"Could not find status location URL\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mAssertionError\u001b[0m: Error during WPS job submission:\n{\"description\": \"The server has either erred or is incapable of performing the requested operation. Unhandled internal server error.\", \"code\": \"Internal Server Error\", \"error\": {\"code\": 500, \"status\": \"500 Internal Server Error\"}}" ] } ], @@ -1046,9 +1122,9 @@ ], "metadata": { "kernelspec": { - "display_name": "PyCharm (pavics-sdi)", + "display_name": "Python 3", "language": "python", - "name": "pycharm-9367ac24" + "name": "python3" }, "language_info": { "codemirror_mode": { From 311c1eac8faa03b8c176635569e512a7975bc61a Mon Sep 17 00:00:00 2001 From: Francis Charette Migneault Date: Tue, 5 Oct 2021 21:30:51 -0400 Subject: [PATCH 2/7] updates sync with https://github.com/bird-house/birdhouse-deploy/pull/192/commits/1839c4006145a245f3ea31101e9f695272292e5b --- .../notebook-components/weaver_example.ipynb | 190 +++++++++++++----- docs/source/notebooks/WPS_example.ipynb | 50 +++-- 2 files changed, 162 insertions(+), 78 deletions(-) diff --git a/docs/source/notebook-components/weaver_example.ipynb b/docs/source/notebook-components/weaver_example.ipynb index 6b6368d2..47b98b1b 100644 --- a/docs/source/notebook-components/weaver_example.ipynb +++ b/docs/source/notebook-components/weaver_example.ipynb @@ -20,7 +20,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 17, "metadata": { "collapsed": false, "jupyter": { @@ -36,11 +36,12 @@ "output_type": "stream", "text": [ "Variables:\n", - " WEAVER_TEST_FQDN host-140-154.rdext.crim.ca\n", - " WEAVER_TEST_URL https://host-140-154.rdext.crim.ca/weaver\n", - " WEAVER_TEST_SSL_VERIFY True\n", - " WEAVER_TEST_FILE https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc\n", - " WEAVER_TEST_KNOWN_BIRDS ['catalog', 'finch', 'flyingpigeon', 'hummingbird', 'malleefowl', 'raven']\n" + " WEAVER_TEST_FQDN host-140-154.rdext.crim.ca\n", + " WEAVER_TEST_URL https://host-140-154.rdext.crim.ca/weaver\n", + " WEAVER_TEST_SSL_VERIFY True\n", + " WEAVER_TEST_FILE https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc\n", + " WEAVER_TEST_KNOWN_BIRDS ['catalog', 'finch', 'flyingpigeon', 'hummingbird', 'malleefowl', 'raven']\n", + " WEAVER_TEST_REQUEST_XARGS {'headers': {'Accept': 'application/json', 'Content-Type': 'application/json'}, 'verify': True, 'timeout': 5}\n" ] } ], @@ -60,7 +61,8 @@ "WEAVER_TEST_DEFAULT_FILE = \"/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc\"\n", "WEAVER_TEST_FILE = os.getenv(\"WEAVER_TEST_FILE\", \"https://{}{}\".format(WEAVER_TEST_FQDN, WEAVER_TEST_DEFAULT_FILE))\n", "\n", - "WEAVER_HEADERS = {\"Accept\": \"application/json\", \"Content-Type\": \"application/json\"}\n", + "WEAVER_TEST_REQUEST_HEADERS = {\"Accept\": \"application/json\", \"Content-Type\": \"application/json\"}\n", + "WEAVER_TEST_REQUEST_XARGS = dict(headers=WEAVER_TEST_REQUEST_HEADERS, verify=WEAVER_TEST_SSL_VERIFY, timeout=5)\n", "\n", "if not WEAVER_TEST_SSL_VERIFY:\n", " urllib3.disable_warnings()\n", @@ -72,6 +74,7 @@ " (\"WEAVER_TEST_SSL_VERIFY\", WEAVER_TEST_SSL_VERIFY),\n", " (\"WEAVER_TEST_FILE\", WEAVER_TEST_FILE),\n", " (\"WEAVER_TEST_KNOWN_BIRDS\", WEAVER_TEST_KNOWN_BIRDS),\n", + " (\"WEAVER_TEST_REQUEST_XARGS\", WEAVER_TEST_REQUEST_XARGS)\n", "]\n", "max_len = max(len(var[0]) for var in variables) + 2\n", "msg = f\" {{:{max_len}}}{{}}\"\n", @@ -121,7 +124,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 3, "metadata": { "collapsed": false, "jupyter": { @@ -157,13 +160,17 @@ "\n", "path = f\"{WEAVER_TEST_URL}/providers\"\n", "query = {\"detail\": False, \"check\": False} # skip pre-fetch to obtain results quickly (they are all checked in following cells)\n", - "resp = requests.get(path, params=query, headers=WEAVER_HEADERS, verify=WEAVER_TEST_SSL_VERIFY)\n", + "resp = requests.get(path, params=query, **WEAVER_TEST_REQUEST_XARGS)\n", "assert resp.status_code == 200, f\"Error during WPS bird providers listing from [{path}]:\\n{json_dump(resp.text)}\"\n", "body = resp.json()\n", "json_print(body)\n", "\n", "assert \"providers\" in body and len(body[\"providers\"]), \"Could not find Weaver WPS providers\"\n", - "assert all(bird in body[\"providers\"] for bird in WEAVER_TEST_KNOWN_BIRDS), \"Could not find all expected Weaver WPS providers\"\n", + "missing = []\n", + "for bird in WEAVER_TEST_KNOWN_BIRDS:\n", + " if bird not in body[\"providers\"]:\n", + " missing.append(bird) \n", + "assert not missing, f\"Could not find all expected Weaver WPS providers.\\nMissing: [{missing}]\\nExpected: [{WEAVER_TEST_KNOWN_BIRDS}]\"\n", "bird_ids = body[\"providers\"]" ] }, @@ -179,7 +186,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 4, "metadata": { "collapsed": false, "jupyter": { @@ -646,10 +653,10 @@ "print(\"Listing WPS provider processes converted to OGC-API interface by Weaver:\\n\")\n", "\n", "process_locations = []\n", - "for bird in bird_ids:\n", + "for bird in WEAVER_TEST_KNOWN_BIRDS:\n", " path = f\"{WEAVER_TEST_URL}/providers/{bird}/processes\"\n", - " resp = requests.get(path, headers=WEAVER_HEADERS, verify=WEAVER_TEST_SSL_VERIFY)\n", - " assert resp.status_code == 200, f\"Error during WPS bird processes retrieval:\\n[{json_dump(resp.text)}]\"\n", + " resp = requests.get(path, **WEAVER_TEST_REQUEST_XARGS)\n", + " assert resp.status_code == 200, f\"Error during WPS bird processes retrieval on: [{path}]\\n[{json_dump(resp.text)}]\"\n", " body = resp.json()\n", " assert len(body[\"processes\"]), f\"WPS bird [{bird}] did not list any process!\"\n", " for process in body[\"processes\"]:\n", @@ -673,7 +680,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 5, "metadata": { "collapsed": false, "jupyter": { @@ -720,7 +727,7 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 6, "metadata": { "collapsed": false, "jupyter": { @@ -743,6 +750,7 @@ " \"description\": \"Run ncdump to retrieve NetCDF header metadata.\",\n", " \"keywords\": [\n", " \"hummingbird\",\n", + " \"Hummingbird\",\n", " \"wps-remote\"\n", " ],\n", " \"metadata\": [\n", @@ -815,28 +823,28 @@ " \"type\": \"application/json\",\n", " \"title\": \"Process description.\",\n", " \"hreflang\": \"en-CA\",\n", - " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/processes/ncdump\",\n", + " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump\",\n", " \"rel\": \"self\"\n", " },\n", " {\n", " \"type\": \"application/json\",\n", " \"title\": \"Process description.\",\n", " \"hreflang\": \"en-CA\",\n", - " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/processes/ncdump\",\n", + " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump\",\n", " \"rel\": \"process-desc\"\n", " },\n", " {\n", " \"type\": \"application/json\",\n", " \"title\": \"Process execution endpoint for job submission.\",\n", " \"hreflang\": \"en-CA\",\n", - " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/processes/ncdump/execution\",\n", + " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump/execution\",\n", " \"rel\": \"execute\"\n", " },\n", " {\n", " \"type\": \"application/json\",\n", " \"title\": \"List of registered processes.\",\n", " \"hreflang\": \"en-CA\",\n", - " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/processes\",\n", + " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes\",\n", " \"rel\": \"collection\"\n", " },\n", " {\n", @@ -854,8 +862,8 @@ "source": [ "print(\"Getting WPS process description...\\n\")\n", "\n", - "resp = requests.get(WEAVER_BIRD_PROCESS_URL, headers=WEAVER_HEADERS, verify=WEAVER_TEST_SSL_VERIFY)\n", - "assert resp.status_code == 200, f\"Error getting WPS process description:\\n[{resp.text}]\"\n", + "resp = requests.get(WEAVER_BIRD_PROCESS_URL, **WEAVER_TEST_REQUEST_XARGS)\n", + "assert resp.status_code == 200, f\"Error getting WPS process description:\\n[{json_dump(resp.text)}]\"\n", "body = resp.json()\n", "json_print(body)" ] @@ -878,7 +886,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 67, "metadata": { "collapsed": false, "jupyter": { @@ -895,18 +903,8 @@ "text": [ "Submitting process job with:\n", " File: [https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc]\n", - " Process: [https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump]\n" - ] - }, - { - "ename": "AssertionError", - "evalue": "Error during WPS job submission:\n{\"description\": \"The server has either erred or is incapable of performing the requested operation. Unhandled internal server error.\", \"code\": \"Internal Server Error\", \"error\": {\"code\": 500, \"status\": \"500 Internal Server Error\"}}", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mAssertionError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 22\u001b[0m \u001b[0mpath\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34mf\"{WEAVER_BIRD_PROCESS_URL}/jobs\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 23\u001b[0m \u001b[0mresp\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mrequests\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpost\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mpath\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mjson\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mdata\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mheaders\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mWEAVER_HEADERS\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mverify\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mWEAVER_TEST_SSL_VERIFY\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 24\u001b[0;31m \u001b[0;32massert\u001b[0m \u001b[0mresp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstatus_code\u001b[0m \u001b[0;32min\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;36m200\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m201\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34mf\"Error during WPS job submission:\\n{resp.text}\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 25\u001b[0m \u001b[0mstatus_location\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mresp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mheaders\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"Location\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 26\u001b[0m \u001b[0;32massert\u001b[0m \u001b[0mstatus_location\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"Could not find status location URL\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;31mAssertionError\u001b[0m: Error during WPS job submission:\n{\"description\": \"The server has either erred or is incapable of performing the requested operation. Unhandled internal server error.\", \"code\": \"Internal Server Error\", \"error\": {\"code\": 500, \"status\": \"500 Internal Server Error\"}}" + " Process: [https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump]\n", + "Job Status Location: [https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump/jobs/a80aab59-1077-42e7-8a58-80251de44f44]\n" ] } ], @@ -920,8 +918,8 @@ " \"response\": \"document\", # Type of status response (only this mode supported for the time being)\n", " \"inputs\": [\n", " {\n", - " \"id\": \"dataset\", # The target input\n", - " \"href\": WEAVER_TEST_FILE\n", + " \"id\": \"dataset_opendap\", # Target input of the process\n", + " \"data\": WEAVER_TEST_FILE # Note: even though this is an URL, the expected type is a 'string' (not a 'File'), so 'data' must be used instead of 'href'\n", " }\n", " ],\n", " \"outputs\": [\n", @@ -933,8 +931,8 @@ "}\n", "\n", "path = f\"{WEAVER_BIRD_PROCESS_URL}/jobs\"\n", - "resp = requests.post(path, json=data, headers=WEAVER_HEADERS, verify=WEAVER_TEST_SSL_VERIFY)\n", - "assert resp.status_code in [200, 201], f\"Error during WPS job submission:\\n{resp.text}\"\n", + "resp = requests.post(path, json=data, **WEAVER_TEST_REQUEST_XARGS)\n", + "assert resp.status_code in [200, 201], f\"Error during WPS job submission:\\n{json_dump(resp.text)}\"\n", "status_location = resp.headers.get(\"Location\")\n", "assert status_location, \"Could not find status location URL\"\n", "print(f\"Job Status Location: [{status_location}]\")\n" @@ -955,7 +953,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 68, "metadata": { "collapsed": false, "jupyter": { @@ -971,10 +969,8 @@ "output_type": "stream", "text": [ "Waiting for job completion with pooling monitoring of its status...\n", - "Delay: 5s, Duration: 0:27:23, Status: accepted\n", - "Delay: 5s, Duration: 0:27:29, Status: running\n", - "Delay: 5s, Duration: 0:27:34, Status: running\n", - "Delay: 5s, Duration: 0:27:39, Status: succeeded\n" + "Delay: 5s, Duration: 00:00:00, Status: accepted\n", + "Final job status: [failed]\n" ] } ], @@ -988,18 +984,21 @@ "delta = 5\n", "body = {}\n", "while timeout >= 0:\n", - " resp = requests.get(status_location, headers=WEAVER_HEADERS, verify=WEAVER_TEST_SSL_VERIFY)\n", + " resp = requests.get(status_location, **WEAVER_TEST_REQUEST_XARGS)\n", " assert resp.status_code == 200, \"Failed retrieving job status at location [{}]\".format(status_location)\n", " body = resp.json()\n", " timeout -= delta\n", " if body[\"status\"] in [\"accepted\", \"running\"]:\n", " print(f\"Delay: {delta}s, Duration: {body['duration']}, Status: {body['status']}\")\n", " time.sleep(delta)\n", - " continue\n", + " continue \n", " if body[\"status\"] in [\"failed\", \"succeeded\"]:\n", + " print(f\"Final job status: [{body['status']}]\")\n", " break\n", " raise ValueError(f\"Unhandled job status during monitoring: [{body['status']}]\")\n", + "assert timeout > 0, \"Timeout reached. Process job submission never finished.\"\n", "\n", + "# note: don't assert the process success/failure yet, to retrieve more details in case it failed\n", "assert body and \"status\" in body, f\"Could not retrieve job status [{status_location}]\"\n", "status = body[\"status\"]" ] @@ -1025,7 +1024,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 69, "metadata": { "collapsed": false, "jupyter": { @@ -1041,9 +1040,96 @@ "output_type": "stream", "text": [ "Obtaining job logs from execution...\n", - "Job logs retrieved from [https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump/jobs/f6c42ea8-830c-4295-930f-29dc37fdbc10/logs]:\n", + "Job logs retrieved from [https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump/jobs/a80aab59-1077-42e7-8a58-80251de44f44/logs]:\n", "\n", - "\n" + "[2021-10-06 01:28:48] INFO [weaver.datatype.Job] 00:00:00 1% accepted Job task setup completed.\n", + "[2021-10-06 01:28:48] DEBUG [weaver.datatype.Job] 00:00:00 2% accepted Employed WPS URL: [https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird]\n", + "[2021-10-06 01:28:48] INFO [weaver.datatype.Job] 00:00:00 2% accepted Execute WPS request for process [ncdump]\n", + "[2021-10-06 01:28:48] INFO [weaver.datatype.Job] 00:00:00 3% accepted Fetching job input definitions.\n", + "[2021-10-06 01:28:48] INFO [weaver.datatype.Job] 00:00:00 4% accepted Fetching job output definitions.\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:00 5% accepted Starting job process execution.\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:00 5% accepted Following updates could take a while until the Application Package answers...\n", + "[2021-10-06 01:28:49] DEBUG [weaver.datatype.Job] 00:00:01 6% accepted Updated job status location: [/data/wps_outputs/weaver/a80aab59-1077-42e7-8a58-80251de44f44.xml].\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 7% running Starting monitoring of job execution.\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 8% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] 1% running Preparing package logs done.\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 9% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] 2% running Launching package...\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 10% running [2021-10-06 01:28:49] WARNING [weaver.processes.wps_package.ncdump] Visible application CWL euid:egid [0:0]\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 11% running [2021-10-06 01:28:49] INFO [cwltool] Resolved '/tmp/tmp3no_pjl6/ncdump' to 'file:///tmp/tmp3no_pjl6/ncdump'\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 12% running [2021-10-06 01:28:49] INFO [cwltool] ../../../../tmp/tmp3no_pjl6/ncdump:1:1: Unknown hint file:///tmp/tmp3no_pjl6/WPS1Requirement\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 13% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] 5% running Loading package content done.\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 14% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] 6% running Retrieve package inputs done.\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 16% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] File input (dataset) SKIPPED fetch: [{'mimeType': 'application/x-netcdf', 'encoding': None, 'schema': None, 'maximumMegabytes': None, 'default': True}]\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 17% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] 8% running Convert package inputs done.\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 18% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] 10% running Running package...\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 19% running [2021-10-06 01:28:49] ERROR [cwltool] Got workflow error\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 20% running Traceback (most recent call last):\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 21% running File \"/usr/local/lib/python3.7/site-packages/cwltool/executors.py\", line 221, in run_jobs\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 23% running for job in jobiter:\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 24% running File \"/opt/local/src/weaver/weaver/processes/wps_workflow.py\", line 152, in job\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 25% running builder = self._init_job(joborder, runtime_context)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 26% running File \"/usr/local/lib/python3.7/site-packages/cwltool/process.py\", line 732, in _init_job\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 27% running normalizeFilesDirs(job)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 28% running File \"/usr/local/lib/python3.7/site-packages/cwltool/pathmapper.py\", line 129, in normalizeFilesDirs\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 30% running visit_class(job, (\"File\", \"Directory\"), addLocation)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 31% running File \"/usr/local/lib/python3.7/site-packages/cwltool/utils.py\", line 231, in visit_class\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 32% running visit_class(rec[d], cls, op)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 33% running File \"/usr/local/lib/python3.7/site-packages/cwltool/utils.py\", line 229, in visit_class\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 34% running op(rec)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 35% running File \"/usr/local/lib/python3.7/site-packages/cwltool/pathmapper.py\", line 88, in addLocation\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 36% running parse = urllib.parse.urlparse(d[\"location\"])\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 38% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 370, in urlparse\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 39% running url, scheme, _coerce_result = _coerce_args(url, scheme)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 40% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 126, in _coerce_args\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 41% running return _decode_args(args) + (_encode_result,)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 42% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 110, in _decode_args\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 43% running return tuple(x.decode(encoding, errors) if x else '' for x in args)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 45% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 110, in \n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 46% running return tuple(x.decode(encoding, errors) if x else '' for x in args)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 47% running AttributeError: 'dict' object has no attribute 'decode'\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 48% running [2021-10-06 01:28:49] ERROR [weaver.processes.wps_package.ncdump] 10% failed PackageExecutionError: Failed package execution. [WorkflowException(\"'dict' object has no attribute 'decode'\")]\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 49% running Traceback (most recent call last):\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 50% running File \"/usr/local/lib/python3.7/site-packages/cwltool/executors.py\", line 221, in run_jobs\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 52% running for job in jobiter:\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 53% running File \"/opt/local/src/weaver/weaver/processes/wps_workflow.py\", line 152, in job\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 54% running builder = self._init_job(joborder, runtime_context)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 55% running File \"/usr/local/lib/python3.7/site-packages/cwltool/process.py\", line 732, in _init_job\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 56% running normalizeFilesDirs(job)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 57% running File \"/usr/local/lib/python3.7/site-packages/cwltool/pathmapper.py\", line 129, in normalizeFilesDirs\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 58% running visit_class(job, (\"File\", \"Directory\"), addLocation)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 60% running File \"/usr/local/lib/python3.7/site-packages/cwltool/utils.py\", line 231, in visit_class\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 61% running visit_class(rec[d], cls, op)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 62% running File \"/usr/local/lib/python3.7/site-packages/cwltool/utils.py\", line 229, in visit_class\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 63% running op(rec)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 64% running File \"/usr/local/lib/python3.7/site-packages/cwltool/pathmapper.py\", line 88, in addLocation\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 65% running parse = urllib.parse.urlparse(d[\"location\"])\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 67% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 370, in urlparse\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 68% running url, scheme, _coerce_result = _coerce_args(url, scheme)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 69% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 126, in _coerce_args\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 70% running return _decode_args(args) + (_encode_result,)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 71% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 110, in _decode_args\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 72% running return tuple(x.decode(encoding, errors) if x else '' for x in args)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 74% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 110, in \n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 75% running return tuple(x.decode(encoding, errors) if x else '' for x in args)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 76% running AttributeError: 'dict' object has no attribute 'decode'\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 77% running Job execution monitoring (progress: 0%, status: n/a).\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 78% running The above exception was the direct cause of the following exception:\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 79% running Job execution monitoring (progress: 0%, status: n/a).\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 80% running Traceback (most recent call last):\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 82% running File \"/opt/local/src/weaver/weaver/processes/wps_package.py\", line 1197, in _handler\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 83% running result = package_inst(**cwl_inputs) # type: CWLResults\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 84% running File \"/usr/local/lib/python3.7/site-packages/cwltool/factory.py\", line 31, in __call__\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 85% running out, status = self.factory.executor(self.t, kwargs, runtime_context)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 86% running File \"/usr/local/lib/python3.7/site-packages/cwltool/executors.py\", line 54, in __call__\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 87% running return self.execute(*args, **kwargs)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 89% running File \"/usr/local/lib/python3.7/site-packages/cwltool/executors.py\", line 137, in execute\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 90% running self.run_jobs(process, job_order_object, logger, runtime_context)\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 91% running File \"/usr/local/lib/python3.7/site-packages/cwltool/executors.py\", line 255, in run_jobs\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 92% running raise WorkflowException(str(err)) from err\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 93% running cwltool.errors.WorkflowException: 'dict' object has no attribute 'decode'\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 94% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] 10% failed Package completed with errors. Server logs: /data/wps_outputs/weaver/a80aab59-1077-42e7-8a58-80251de44f44.log\n", + "[2021-10-06 01:28:49] ERROR [weaver.datatype.Job] 00:00:01 96% failed Process failed, please check server error log - code=NoApplicableCode - locator=None\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 98% failed Job failed.\n", + "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 100% failed Job task complete.\n" ] }, { @@ -1053,7 +1139,7 @@ "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mAssertionError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 9\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34mf\"Job logs retrieved from [{path}]:\\n\\n{log_lines}\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 10\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 11\u001b[0;31m \u001b[0;32massert\u001b[0m \u001b[0mstatus\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m\"succeeded\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"Job execution was not successful\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 9\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34mf\"Job logs retrieved from [{path}]:\\n\\n{log_lines}\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 10\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 11\u001b[0;31m \u001b[0;32massert\u001b[0m \u001b[0mstatus\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m\"succeeded\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"Job execution was not successful\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;31mAssertionError\u001b[0m: Job execution was not successful" ] } @@ -1062,7 +1148,7 @@ "print(\"Obtaining job logs from execution...\")\n", "\n", "path = f\"{status_location}/logs\"\n", - "resp = requests.get(path, headers=WEAVER_HEADERS, verify=WEAVER_TEST_SSL_VERIFY)\n", + "resp = requests.get(path, **WEAVER_TEST_REQUEST_XARGS)\n", "assert resp.status_code == 200, f\"Failed to retrieve job logs [{path}]\"\n", "logs = resp.json()\n", "\n", @@ -1104,7 +1190,7 @@ "# Path 'result' becomes 'results' in later versions and should be employed for same interface as OGC-API - Processes\n", "# It is preserved here for backward compatibility.\n", "path = f\"{status_location}/result\"\n", - "resp = requests.get(path, headers=WEAVER_HEADERS, verify=WEAVER_TEST_SSL_VERIFY)\n", + "resp = requests.get(path, **WEAVER_TEST_REQUEST_XARGS)\n", "assert resp.status_code == 200, f\"Failed to retrieve job results location [{path}]\"\n", "body = resp.json()\n", "\n", diff --git a/docs/source/notebooks/WPS_example.ipynb b/docs/source/notebooks/WPS_example.ipynb index 7004ec39..310e42f2 100755 --- a/docs/source/notebooks/WPS_example.ipynb +++ b/docs/source/notebooks/WPS_example.ipynb @@ -2,13 +2,11 @@ "cells": [ { "cell_type": "markdown", - "metadata": { - "collapsed": true - }, + "metadata": {}, "source": [ - "## PAVICS Web Processing Services \n", + "## PAVICS Web Processing Services\n", "PAVICS allows access to a number of different WPS services via Birdhouse\n", - "* Each 'bird' groups a set of processing tools \n" + "* Each 'bird' groups a set of processing tools\n" ] }, { @@ -19,7 +17,7 @@ "source": [ "from owslib.wps import WebProcessingService\n", "import requests\n", - "from lxml import etree \n", + "from lxml import etree\n", "import owslib\n", "owslib.__version__\n", "\n", @@ -27,7 +25,7 @@ " o = requests.get(execute.statusLocation)\n", " t = etree.fromstring(o.content)\n", " ref = t.getchildren()[-1].getchildren()[-1].getchildren()[-1].get('{http://www.w3.org/1999/xlink}href')\n", - " \n", + "\n", " return ref" ] }, @@ -71,7 +69,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 4, "metadata": {}, "outputs": [ { @@ -119,13 +117,13 @@ "metadata": {}, "source": [ "### PAVICS/Hummingbird has lots of WPS services\n", - "### Let's keep it simple with 'ncdump' \n", + "### Let's keep it simple with 'ncdump'\n", "* Print info on WPS inputs needed" ] }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 5, "metadata": {}, "outputs": [ { @@ -161,20 +159,20 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc\n" + "https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc\n" ] } ], "source": [ "# Example netcdf url to NRCAN daily - tasmin 2013\n", - "nc_url = 'https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc'\n", + "nc_url = 'https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc'\n", "print(nc_url)" ] }, @@ -187,14 +185,14 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "[('dataset_opendap', 'https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc')]\n" + "[('dataset_opendap', 'https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc')]\n" ] } ], @@ -209,12 +207,12 @@ "metadata": {}, "source": [ "#### Execute the WPS\n", - "The execution is asynchronous, meaning that it does not automatically return the output. The response of the server is only a message saying that the request was accepted. " + "The execution is asynchronous, meaning that it does not automatically return the output. The response of the server is only a message saying that the request was accepted." ] }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 9, "metadata": {}, "outputs": [ { @@ -232,20 +230,20 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "\n", + "\n", " \n", " ncdump\n", " NCDump\n", " Run ncdump to retrieve NetCDF header metadata.\n", " \n", - " \n", + " \n", " PyWPS Process NCDump finished\n", " \n", " \n", @@ -253,7 +251,7 @@ " output\n", " NetCDF Metadata\n", " NetCDF Metadata\n", - " \n", + " \n", " \n", " \n", "\n" @@ -270,8 +268,8 @@ "metadata": {}, "source": [ "#### Get the result\n", - "To actually parse the output, we must first make sure that the process completed server-side. \n", - "`execute.checkStatus()` will poll the server and update its response. " + "To actually parse the output, we must first make sure that the process completed server-side.\n", + "`execute.checkStatus()` will poll the server and update its response." ] }, { @@ -396,9 +394,9 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.7" + "version": "3.7.9" } }, "nbformat": 4, - "nbformat_minor": 1 -} + "nbformat_minor": 4 +} \ No newline at end of file From 03c35ddfc14117fd2ba642210dc8cc490659cd31 Mon Sep 17 00:00:00 2001 From: Francis Charette Migneault Date: Wed, 6 Oct 2021 22:44:55 -0400 Subject: [PATCH 3/7] apply fix from https://github.com/crim-ca/weaver/pull/344 with demo output (output results patched inline until next weaver released and pushed in stack) --- .../notebook-components/weaver_example.ipynb | 292 +++++++++++------- 1 file changed, 176 insertions(+), 116 deletions(-) diff --git a/docs/source/notebook-components/weaver_example.ipynb b/docs/source/notebook-components/weaver_example.ipynb index 47b98b1b..78f56467 100644 --- a/docs/source/notebook-components/weaver_example.ipynb +++ b/docs/source/notebook-components/weaver_example.ipynb @@ -20,7 +20,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 103, "metadata": { "collapsed": false, "jupyter": { @@ -38,6 +38,7 @@ "Variables:\n", " WEAVER_TEST_FQDN host-140-154.rdext.crim.ca\n", " WEAVER_TEST_URL https://host-140-154.rdext.crim.ca/weaver\n", + " WEAVER_TEST_WPS_OUTPUTS https://host-140-154.rdext.crim.ca/wpsoutputs\n", " WEAVER_TEST_SSL_VERIFY True\n", " WEAVER_TEST_FILE https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc\n", " WEAVER_TEST_KNOWN_BIRDS ['catalog', 'finch', 'flyingpigeon', 'hummingbird', 'malleefowl', 'raven']\n", @@ -58,8 +59,9 @@ "WEAVER_TEST_DEFAULT_BIRDS = \"catalog, finch, flyingpigeon, hummingbird, malleefowl, raven\"\n", "WEAVER_TEST_KNOWN_BIRDS = os.getenv(\"WEAVER_TEST_KNOWN_BIRDS\", WEAVER_TEST_DEFAULT_BIRDS)\n", "WEAVER_TEST_KNOWN_BIRDS = list(bird.strip() for bird in WEAVER_TEST_KNOWN_BIRDS.split(\",\"))\n", - "WEAVER_TEST_DEFAULT_FILE = \"/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc\"\n", + "WEAVER_TEST_DEFAULT_FILE = \"/twitcher/ows/proxy/thredds/dodsC/birdhouse/testdata/ta_Amon_MRI-CGCM3_decadal1980_r1i1p1_199101-200012.nc\"\n", "WEAVER_TEST_FILE = os.getenv(\"WEAVER_TEST_FILE\", \"https://{}{}\".format(WEAVER_TEST_FQDN, WEAVER_TEST_DEFAULT_FILE))\n", + "WEAVER_TEST_WPS_OUTPUTS = f\"https://{WEAVER_TEST_FQDN}/wpsoutputs\" # for validation\n", "\n", "WEAVER_TEST_REQUEST_HEADERS = {\"Accept\": \"application/json\", \"Content-Type\": \"application/json\"}\n", "WEAVER_TEST_REQUEST_XARGS = dict(headers=WEAVER_TEST_REQUEST_HEADERS, verify=WEAVER_TEST_SSL_VERIFY, timeout=5)\n", @@ -71,6 +73,7 @@ "variables = [\n", " (\"WEAVER_TEST_FQDN\", WEAVER_TEST_FQDN),\n", " (\"WEAVER_TEST_URL\", WEAVER_TEST_URL),\n", + " (\"WEAVER_TEST_WPS_OUTPUTS\", WEAVER_TEST_WPS_OUTPUTS),\n", " (\"WEAVER_TEST_SSL_VERIFY\", WEAVER_TEST_SSL_VERIFY),\n", " (\"WEAVER_TEST_FILE\", WEAVER_TEST_FILE),\n", " (\"WEAVER_TEST_KNOWN_BIRDS\", WEAVER_TEST_KNOWN_BIRDS),\n", @@ -886,7 +889,7 @@ }, { "cell_type": "code", - "execution_count": 67, + "execution_count": 96, "metadata": { "collapsed": false, "jupyter": { @@ -903,8 +906,8 @@ "text": [ "Submitting process job with:\n", " File: [https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc]\n", - " Process: [https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump]\n", - "Job Status Location: [https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump/jobs/a80aab59-1077-42e7-8a58-80251de44f44]\n" + " Process: [http://localhost:4002/providers/hummingbird-154/processes/ncdump]\n", + "Job Status Location: [http://localhost:4002/providers/hummingbird-154/processes/ncdump/jobs/996e1f1c-cf4e-4559-adfb-d4af213db454]\n" ] } ], @@ -953,7 +956,7 @@ }, { "cell_type": "code", - "execution_count": 68, + "execution_count": 97, "metadata": { "collapsed": false, "jupyter": { @@ -970,7 +973,7 @@ "text": [ "Waiting for job completion with pooling monitoring of its status...\n", "Delay: 5s, Duration: 00:00:00, Status: accepted\n", - "Final job status: [failed]\n" + "Final job status: [succeeded]\n" ] } ], @@ -1024,7 +1027,7 @@ }, { "cell_type": "code", - "execution_count": 69, + "execution_count": 98, "metadata": { "collapsed": false, "jupyter": { @@ -1040,107 +1043,62 @@ "output_type": "stream", "text": [ "Obtaining job logs from execution...\n", - "Job logs retrieved from [https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump/jobs/a80aab59-1077-42e7-8a58-80251de44f44/logs]:\n", + "Job logs retrieved from [http://localhost:4002/providers/hummingbird-154/processes/ncdump/jobs/996e1f1c-cf4e-4559-adfb-d4af213db454/logs]:\n", "\n", - "[2021-10-06 01:28:48] INFO [weaver.datatype.Job] 00:00:00 1% accepted Job task setup completed.\n", - "[2021-10-06 01:28:48] DEBUG [weaver.datatype.Job] 00:00:00 2% accepted Employed WPS URL: [https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird]\n", - "[2021-10-06 01:28:48] INFO [weaver.datatype.Job] 00:00:00 2% accepted Execute WPS request for process [ncdump]\n", - "[2021-10-06 01:28:48] INFO [weaver.datatype.Job] 00:00:00 3% accepted Fetching job input definitions.\n", - "[2021-10-06 01:28:48] INFO [weaver.datatype.Job] 00:00:00 4% accepted Fetching job output definitions.\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:00 5% accepted Starting job process execution.\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:00 5% accepted Following updates could take a while until the Application Package answers...\n", - "[2021-10-06 01:28:49] DEBUG [weaver.datatype.Job] 00:00:01 6% accepted Updated job status location: [/data/wps_outputs/weaver/a80aab59-1077-42e7-8a58-80251de44f44.xml].\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 7% running Starting monitoring of job execution.\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 8% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] 1% running Preparing package logs done.\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 9% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] 2% running Launching package...\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 10% running [2021-10-06 01:28:49] WARNING [weaver.processes.wps_package.ncdump] Visible application CWL euid:egid [0:0]\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 11% running [2021-10-06 01:28:49] INFO [cwltool] Resolved '/tmp/tmp3no_pjl6/ncdump' to 'file:///tmp/tmp3no_pjl6/ncdump'\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 12% running [2021-10-06 01:28:49] INFO [cwltool] ../../../../tmp/tmp3no_pjl6/ncdump:1:1: Unknown hint file:///tmp/tmp3no_pjl6/WPS1Requirement\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 13% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] 5% running Loading package content done.\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 14% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] 6% running Retrieve package inputs done.\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 16% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] File input (dataset) SKIPPED fetch: [{'mimeType': 'application/x-netcdf', 'encoding': None, 'schema': None, 'maximumMegabytes': None, 'default': True}]\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 17% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] 8% running Convert package inputs done.\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 18% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] 10% running Running package...\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 19% running [2021-10-06 01:28:49] ERROR [cwltool] Got workflow error\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 20% running Traceback (most recent call last):\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 21% running File \"/usr/local/lib/python3.7/site-packages/cwltool/executors.py\", line 221, in run_jobs\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 23% running for job in jobiter:\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 24% running File \"/opt/local/src/weaver/weaver/processes/wps_workflow.py\", line 152, in job\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 25% running builder = self._init_job(joborder, runtime_context)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 26% running File \"/usr/local/lib/python3.7/site-packages/cwltool/process.py\", line 732, in _init_job\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 27% running normalizeFilesDirs(job)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 28% running File \"/usr/local/lib/python3.7/site-packages/cwltool/pathmapper.py\", line 129, in normalizeFilesDirs\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 30% running visit_class(job, (\"File\", \"Directory\"), addLocation)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 31% running File \"/usr/local/lib/python3.7/site-packages/cwltool/utils.py\", line 231, in visit_class\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 32% running visit_class(rec[d], cls, op)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 33% running File \"/usr/local/lib/python3.7/site-packages/cwltool/utils.py\", line 229, in visit_class\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 34% running op(rec)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 35% running File \"/usr/local/lib/python3.7/site-packages/cwltool/pathmapper.py\", line 88, in addLocation\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 36% running parse = urllib.parse.urlparse(d[\"location\"])\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 38% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 370, in urlparse\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 39% running url, scheme, _coerce_result = _coerce_args(url, scheme)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 40% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 126, in _coerce_args\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 41% running return _decode_args(args) + (_encode_result,)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 42% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 110, in _decode_args\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 43% running return tuple(x.decode(encoding, errors) if x else '' for x in args)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 45% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 110, in \n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 46% running return tuple(x.decode(encoding, errors) if x else '' for x in args)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 47% running AttributeError: 'dict' object has no attribute 'decode'\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 48% running [2021-10-06 01:28:49] ERROR [weaver.processes.wps_package.ncdump] 10% failed PackageExecutionError: Failed package execution. [WorkflowException(\"'dict' object has no attribute 'decode'\")]\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 49% running Traceback (most recent call last):\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 50% running File \"/usr/local/lib/python3.7/site-packages/cwltool/executors.py\", line 221, in run_jobs\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 52% running for job in jobiter:\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 53% running File \"/opt/local/src/weaver/weaver/processes/wps_workflow.py\", line 152, in job\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 54% running builder = self._init_job(joborder, runtime_context)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 55% running File \"/usr/local/lib/python3.7/site-packages/cwltool/process.py\", line 732, in _init_job\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 56% running normalizeFilesDirs(job)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 57% running File \"/usr/local/lib/python3.7/site-packages/cwltool/pathmapper.py\", line 129, in normalizeFilesDirs\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 58% running visit_class(job, (\"File\", \"Directory\"), addLocation)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 60% running File \"/usr/local/lib/python3.7/site-packages/cwltool/utils.py\", line 231, in visit_class\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 61% running visit_class(rec[d], cls, op)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 62% running File \"/usr/local/lib/python3.7/site-packages/cwltool/utils.py\", line 229, in visit_class\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 63% running op(rec)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 64% running File \"/usr/local/lib/python3.7/site-packages/cwltool/pathmapper.py\", line 88, in addLocation\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 65% running parse = urllib.parse.urlparse(d[\"location\"])\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 67% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 370, in urlparse\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 68% running url, scheme, _coerce_result = _coerce_args(url, scheme)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 69% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 126, in _coerce_args\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 70% running return _decode_args(args) + (_encode_result,)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 71% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 110, in _decode_args\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 72% running return tuple(x.decode(encoding, errors) if x else '' for x in args)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 74% running File \"/usr/local/lib/python3.7/urllib/parse.py\", line 110, in \n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 75% running return tuple(x.decode(encoding, errors) if x else '' for x in args)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 76% running AttributeError: 'dict' object has no attribute 'decode'\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 77% running Job execution monitoring (progress: 0%, status: n/a).\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 78% running The above exception was the direct cause of the following exception:\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 79% running Job execution monitoring (progress: 0%, status: n/a).\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 80% running Traceback (most recent call last):\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 82% running File \"/opt/local/src/weaver/weaver/processes/wps_package.py\", line 1197, in _handler\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 83% running result = package_inst(**cwl_inputs) # type: CWLResults\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 84% running File \"/usr/local/lib/python3.7/site-packages/cwltool/factory.py\", line 31, in __call__\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 85% running out, status = self.factory.executor(self.t, kwargs, runtime_context)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 86% running File \"/usr/local/lib/python3.7/site-packages/cwltool/executors.py\", line 54, in __call__\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 87% running return self.execute(*args, **kwargs)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 89% running File \"/usr/local/lib/python3.7/site-packages/cwltool/executors.py\", line 137, in execute\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 90% running self.run_jobs(process, job_order_object, logger, runtime_context)\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 91% running File \"/usr/local/lib/python3.7/site-packages/cwltool/executors.py\", line 255, in run_jobs\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 92% running raise WorkflowException(str(err)) from err\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 93% running cwltool.errors.WorkflowException: 'dict' object has no attribute 'decode'\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 94% running [2021-10-06 01:28:49] INFO [weaver.processes.wps_package.ncdump] 10% failed Package completed with errors. Server logs: /data/wps_outputs/weaver/a80aab59-1077-42e7-8a58-80251de44f44.log\n", - "[2021-10-06 01:28:49] ERROR [weaver.datatype.Job] 00:00:01 96% failed Process failed, please check server error log - code=NoApplicableCode - locator=None\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 98% failed Job failed.\n", - "[2021-10-06 01:28:49] INFO [weaver.datatype.Job] 00:00:01 100% failed Job task complete.\n" - ] - }, - { - "ename": "AssertionError", - "evalue": "Job execution was not successful", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mAssertionError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 9\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34mf\"Job logs retrieved from [{path}]:\\n\\n{log_lines}\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 10\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 11\u001b[0;31m \u001b[0;32massert\u001b[0m \u001b[0mstatus\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m\"succeeded\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"Job execution was not successful\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", - "\u001b[0;31mAssertionError\u001b[0m: Job execution was not successful" + "[2021-10-07 02:32:17] INFO [weaver.datatype.Job] 00:00:00 1% accepted Job task setup completed.\n", + "[2021-10-07 02:32:17] DEBUG [weaver.datatype.Job] 00:00:00 2% accepted Employed WPS URL: [https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird]\n", + "[2021-10-07 02:32:17] INFO [weaver.datatype.Job] 00:00:00 2% accepted Execute WPS request for process [ncdump]\n", + "[2021-10-07 02:32:18] INFO [weaver.datatype.Job] 00:00:00 3% accepted Fetching job input definitions.\n", + "[2021-10-07 02:32:18] INFO [weaver.datatype.Job] 00:00:00 4% accepted Fetching job output definitions.\n", + "[2021-10-07 02:32:19] INFO [weaver.datatype.Job] 00:00:01 5% accepted Starting job process execution.\n", + "[2021-10-07 02:32:19] INFO [weaver.datatype.Job] 00:00:01 5% accepted Following updates could take a while until the Application Package answers...\n", + "[2021-10-07 02:32:22] DEBUG [weaver.datatype.Job] 00:00:04 6% accepted Updated job status location: [/tmp/weaver-hybrid/996e1f1c-cf4e-4559-adfb-d4af213db454.xml].\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 7% running Starting monitoring of job execution.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 8% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 1% running Preparing package logs done.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 10% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 2% running Launching package...\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 12% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] Visible application CWL euid:egid [1000:1000]\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 14% running [2021-10-07 02:32:19] DEBUG [weaver.processes.wps_package.ncdump] Using cwltool.RuntimeContext args:\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 16% running {\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 18% running \"no_read_only\": false,\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 20% running \"no_match_user\": false,\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 22% running \"tmpdir_prefix\": \"/tmp/weaver-hybrid/cwltool_tmp_\",\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 24% running \"tmp_outdir_prefix\": \"/tmp/weaver-hybrid/cwltool_out_\",\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 26% running \"outdir\": \"/tmp/weaver-hybrid/pywps_process_1_tczi01\",\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 28% running \"debug\": true\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 31% running }\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 33% running [2021-10-07 02:32:19] INFO [cwltool] Resolved '/tmp/tmpov0xahvb/ncdump' to 'file:///tmp/tmpov0xahvb/ncdump'\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 35% running [2021-10-07 02:32:19] INFO [cwltool] ../../../../tmp/tmpov0xahvb/ncdump:1:1: Unknown hint file:///tmp/tmpov0xahvb/WPS1Requirement\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 37% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 5% running Loading package content done.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 39% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 6% running Retrieve package inputs done.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 41% running [2021-10-07 02:32:19] DEBUG [weaver.processes.wps_package.ncdump] File input (dataset) DROPPED. Detected default format as data.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 43% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 8% running Convert package inputs done.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 45% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 10% running Running package...\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 47% running [2021-10-07 02:32:19] DEBUG [weaver.processes.wps_package.ncdump] Launching process package with inputs:\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 49% running {\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 52% running \"dataset_opendap\": \"http://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/testdata/ta_Amon_MRI-CGCM3_decadal1980_r1i1p1_199101-200012.nc\"\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 54% running }\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 56% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 10% running Preparing to launch package ncdump.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 58% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] WPS-1 Package resolved from requirement/hint: WPS1Requirement\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 60% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 11% running https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird [ncdump] - Preparing execute request for remote WPS1 provider.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 62% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 14% running https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird [ncdump] - Executing job on remote WPS1 provider.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 64% running [2021-10-07 02:32:20] INFO [weaver.processes.wps_package.ncdump] 18% running https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird [ncdump] - Monitoring job on remote WPS1 provider : [https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird]\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 66% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 18% running https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird [ncdump] - 0% accepted PyWPS Process ncdump accepted\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 68% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 86% running https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird [ncdump] - 100% succeeded PyWPS Process NCDump finished\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 70% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 86% running https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird [ncdump] - Fetching job outputs from remote WPS1 provider.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 72% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 95% succeeded https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird [ncdump] - Execution on remote WPS1 provider completed.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 75% running [2021-10-07 02:32:22] DEBUG [cwltool] Moving /tmp/weaver-hybrid/cwltool_out_zx7exctj/output.txt to /tmp/weaver-hybrid/pywps_process_1_tczi01/output.txt\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 77% running [2021-10-07 02:32:22] DEBUG [cwltool] Moving /tmp/weaver-hybrid/cwltool_out_zx7exctj/stderr.log to /tmp/weaver-hybrid/pywps_process_1_tczi01/stderr.log\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 79% running [2021-10-07 02:32:22] DEBUG [cwltool] Moving /tmp/weaver-hybrid/cwltool_out_zx7exctj/stdout.log to /tmp/weaver-hybrid/pywps_process_1_tczi01/stdout.log\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 81% running [2021-10-07 02:32:22] DEBUG [cwltool] Removing intermediate output directory /tmp/weaver-hybrid/cwltool_out_fov11437\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 83% running [2021-10-07 02:32:22] DEBUG [cwltool] Removing intermediate output directory /tmp/weaver-hybrid/cwltool_out_zx7exctj\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 85% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 95% running Package execution done.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 87% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 95% running Nothing captured from internal application logs.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 89% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] Resolved WPS output [output] as file reference: [/tmp/weaver-hybrid/pywps_process_1_tczi01/output.txt]\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 91% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 98% running Generate package outputs done.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 93% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 100% succeeded Package complete.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 96% succeeded Job succeeded (status: Package complete.).\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 98% succeeded Job succeeded.\n", + "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 100% succeeded Job task complete.\n" ] } ], @@ -1172,7 +1130,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 102, "metadata": { "collapsed": false, "jupyter": { @@ -1182,28 +1140,130 @@ "name": "#%%\n" } }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Job was successful! Retrieving result location...\n", + "Result is located at: [http://localhost:4002/wpsoutputs/996e1f1c-cf4e-4559-adfb-d4af213db454/output.txt]\n", + "\n", + "NCDUMP 'output' result content:\n", + "\n", + "\n", + "netcdf ta_Amon_MRI-CGCM3_decadal1980_r1i1p1_199101-200012.nc {\n", + "dimensions:\n", + "\ttime = UNLIMITED ; // (120 currently)\n", + "\tbnds = 2 ;\n", + "\tlat = 160 ;\n", + "\tlon = 320 ;\n", + "\tplev = 23 ;\n", + "variables:\n", + "\tdouble time(time) ;\n", + "\t\ttime:bounds = \"time_bnds\" ;\n", + "\t\ttime:units = \"days since 1981-01-01\" ;\n", + "\t\ttime:calendar = \"standard\" ;\n", + "\t\ttime:axis = \"T\" ;\n", + "\t\ttime:long_name = \"time\" ;\n", + "\t\ttime:standard_name = \"time\" ;\n", + "\tdouble time_bnds(time, bnds) ;\n", + "\tdouble plev(plev) ;\n", + "\t\tplev:units = \"Pa\" ;\n", + "\t\tplev:axis = \"Z\" ;\n", + "\t\tplev:positive = \"down\" ;\n", + "\t\tplev:long_name = \"pressure\" ;\n", + "\t\tplev:standard_name = \"air_pressure\" ;\n", + "\tdouble lat(lat) ;\n", + "\t\tlat:bounds = \"lat_bnds\" ;\n", + "\t\tlat:units = \"degrees_north\" ;\n", + "\t\tlat:axis = \"Y\" ;\n", + "\t\tlat:long_name = \"latitude\" ;\n", + "\t\tlat:standard_name = \"latitude\" ;\n", + "\tdouble lat_bnds(lat, bnds) ;\n", + "\tdouble lon(lon) ;\n", + "\t\tlon:bounds = \"lon_bnds\" ;\n", + "\t\tlon:units = \"degrees_east\" ;\n", + "\t\tlon:axis = \"X\" ;\n", + "\t\tlon:long_name = \"longitude\" ;\n", + "\t\tlon:standard_name = \"longitude\" ;\n", + "\tdouble lon_bnds(lon, bnds) ;\n", + "\tfloat ta(time, plev, lat, lon) ;\n", + "\t\tta:standard_name = \"air_temperature\" ;\n", + "\t\tta:long_name = \"Air Temperature\" ;\n", + "\t\tta:units = \"K\" ;\n", + "\t\tta:original_name = \"T\" ;\n", + "\t\tta:cell_methods = \"time: mean (interval: 30 minutes)\" ;\n", + "\t\tta:cell_measures = \"area: areacella\" ;\n", + "\t\tta:history = \"2011-08-12T05:05:34Z altered by CMOR: replaced missing value flag (-9.99e+33) with standard missing value (1e+20).\" ;\n", + "\t\tta:missing_value = 1.e+20f ;\n", + "\t\tta:_FillValue = 1.e+20f ;\n", + "\t\tta:associated_files = \"baseURL: http://cmip-pcmdi.llnl.gov/CMIP5/dataLocation gridspecFile: gridspec_atmos_fx_MRI-CGCM3_decadal1980_r0i0p0.nc areacella: areacella_fx_MRI-CGCM3_decadal1980_r0i0p0.nc\" ;\n", + "\n", + "// global attributes:\n", + "\t\t:institution = \"MRI (Meteorological Research Institute, Tsukuba, Japan)\" ;\n", + "\t\t:institute_id = \"MRI\" ;\n", + "\t\t:experiment_id = \"decadal1980\" ;\n", + "\t\t:source = \"MRI-CGCM3 2011 atmosphere: GSMUV (gsmuv-110112, TL159L48); ocean: MRI.COM3 (MRICOM-3_0-20101116, 1x0.5L51); sea ice: MRI.COM3; land: HAL (HAL_cmip5_v0.31_04); aerosol: MASINGAR-mk2 (masingar_mk2-20110111_0203, TL95L48)\" ;\n", + "\t\t:model_id = \"MRI-CGCM3\" ;\n", + "\t\t:forcing = \"GHG, SA, Oz, LU, Sl, Vl, BC, OC (GHG includes CO2, CH4, N2O, CFC-11, CFC-12, and HCFC-22)\" ;\n", + "\t\t:parent_experiment_id = \"N/A\" ;\n", + "\t\t:parent_experiment_rip = \"N/A\" ;\n", + "\t\t:branch_time = 0. ;\n", + "\t\t:contact = \"Seiji Yukimoto (yukimoto@mri-jma.go.jp)\" ;\n", + "\t\t:history = \"Output from /sharex3/cmip5/decadal1980/run-C3_decadal1980_01a/grads/atm_avr_mon.ctl 2011-08-12T05:05:34Z CMOR rewrote data to comply with CF standards and CMIP5 requirements.\" ;\n", + "\t\t:references = \"Model described by Yukimoto et al. (Technical Report of the Meteorological Research Institute, 2011, 64, 83pp.)\" ;\n", + "\t\t:initialization_method = 1 ;\n", + "\t\t:physics_version = 1 ;\n", + "\t\t:tracking_id = \"ce91e727-5f22-44fc-b24d-5bb53393ac69\" ;\n", + "\t\t:product = \"output\" ;\n", + "\t\t:experiment = \"10- or 30-year run initialized in year 1980\" ;\n", + "\t\t:frequency = \"mon\" ;\n", + "\t\t:creation_date = \"2011-08-12T05:05:34Z\" ;\n", + "\t\t:Conventions = \"CF-1.4\" ;\n", + "\t\t:project_id = \"CMIP5\" ;\n", + "\t\t:table_id = \"Table Amon (26 July 2011) 976b7fd1d9e1be31dddd28f5dc79b7a1\" ;\n", + "\t\t:title = \"MRI-CGCM3 model output prepared for CMIP5 10- or 30-year run initialized in year 1980\" ;\n", + "\t\t:parent_experiment = \"N/A\" ;\n", + "\t\t:modeling_realm = \"atmos\" ;\n", + "\t\t:realization = 1 ;\n", + "\t\t:cmor_version = \"2.7.1\" ;\n", + "\t\t:DODS_EXTRA.Unlimited_Dimension = \"time\" ;\n", + "}\n", + "\n" + ] + } + ], "source": [ "print(\"\\nJob was successful! Retrieving result location...\")\n", "\n", "# NOTE:\n", "# Path 'result' becomes 'results' in later versions and should be employed for same interface as OGC-API - Processes\n", "# It is preserved here for backward compatibility.\n", - "path = f\"{status_location}/result\"\n", + "path = f\"{status_location}/results\"\n", "resp = requests.get(path, **WEAVER_TEST_REQUEST_XARGS)\n", "assert resp.status_code == 200, f\"Failed to retrieve job results location [{path}]\"\n", "body = resp.json()\n", "\n", "# Here, our target output ID is named 'output' according to the process description\n", - "output = list(filter(lambda out: out[\"id\"] == \"output\", body.get(\"outputs\", [])))\n", - "assert len(output) == 1, f\"Could not find result matching ID 'output' within:\\n{body}\"\n", - "href = output[0][\"href\"]\n", - "assert isinstance(href, str) and href.startswith(\"https://\"), \"Output result does not have expected reference format\"\n", + "output = body.get(\"output\")\n", + "assert isinstance(output, dict), f\"Could not find result matching ID 'output' within:\\n{body}\"\n", + "href = output[\"href\"]\n", + "assert isinstance(href, str) and href.startswith(WEAVER_TEST_WPS_OUTPUTS), f\"Output result location does not have expected reference format: [{href}]\"\n", + "print(f\"Result is located at: [{href}]\\n\")\n", "\n", + "print(\"Fetching output contents...\")\n", "resp = requests.get(href)\n", - "print(f\"\\nNCDUMP results:\\n\\n{resp.text}\")\n", + "print(f\"\\nNCDUMP 'output' result content:\\n\\n{resp.text}\")\n", "\n" ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { From 30a5fb2cc5f5cf07e35348e416ed396ed447769b Mon Sep 17 00:00:00 2001 From: Francis Charette Migneault Date: Wed, 13 Oct 2021 13:49:17 -0400 Subject: [PATCH 4/7] update weaver test notebook urls to match default PAVICS_HOST --- .../notebook-components/weaver_example.ipynb | 1111 ++++++++--------- 1 file changed, 511 insertions(+), 600 deletions(-) diff --git a/docs/source/notebook-components/weaver_example.ipynb b/docs/source/notebook-components/weaver_example.ipynb index 78f56467..6a7b101b 100644 --- a/docs/source/notebook-components/weaver_example.ipynb +++ b/docs/source/notebook-components/weaver_example.ipynb @@ -20,7 +20,7 @@ }, { "cell_type": "code", - "execution_count": 103, + "execution_count": 1, "metadata": { "collapsed": false, "jupyter": { @@ -36,11 +36,11 @@ "output_type": "stream", "text": [ "Variables:\n", - " WEAVER_TEST_FQDN host-140-154.rdext.crim.ca\n", - " WEAVER_TEST_URL https://host-140-154.rdext.crim.ca/weaver\n", - " WEAVER_TEST_WPS_OUTPUTS https://host-140-154.rdext.crim.ca/wpsoutputs\n", + " WEAVER_TEST_FQDN pavics.ouranos.ca\n", + " WEAVER_TEST_URL https://pavics.ouranos.ca/weaver\n", + " WEAVER_TEST_WPS_OUTPUTS https://pavics.ouranos.ca/wpsoutputs\n", " WEAVER_TEST_SSL_VERIFY True\n", - " WEAVER_TEST_FILE https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc\n", + " WEAVER_TEST_FILE https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc\n", " WEAVER_TEST_KNOWN_BIRDS ['catalog', 'finch', 'flyingpigeon', 'hummingbird', 'malleefowl', 'raven']\n", " WEAVER_TEST_REQUEST_XARGS {'headers': {'Accept': 'application/json', 'Content-Type': 'application/json'}, 'verify': True, 'timeout': 5}\n" ] @@ -206,449 +206,449 @@ "text": [ "Listing WPS provider processes converted to OGC-API interface by Weaver:\n", "\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/getpoint\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/ncplotly\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/pavicrawler\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/pavicsearch\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/pavicsupdate\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/pavicsvalidate\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/period2indices\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/catalog/processes/pavicstestdocs\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tg\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/wind_speed_from_vector\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/wind_vector_from_speed\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/prsn\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/prlp\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/rain_frzgr\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/rx1day\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/max_n_day_precipitation_amount\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/wetdays\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/dry_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/cwd\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/cdd\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/sdii\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/max_pr_intensity\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/prcptot\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/liquidprcptot\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/solidprcptot\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/last_snowfall\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/first_snowfall\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/days_with_snow\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/days_over_precip_thresh\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/high_precip_low_temp\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/fraction_over_precip_thresh\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/liquid_precip_ratio\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tn_days_below\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tx_days_above\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tx_tn_days_above\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/heat_wave_frequency\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/heat_wave_max_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/heat_wave_total_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/heat_wave_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/hot_spell_frequency\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/hot_spell_max_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tg_mean\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tg_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tg_min\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tx_mean\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tx_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tx_min\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tn_mean\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tn_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tn_min\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/dtr\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/dtrmax\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/dtrvar\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/etr\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/cold_spell_duration_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/cold_spell_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/cold_spell_frequency\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/dlyfrzthw\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/cooling_degree_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/heating_degree_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/growing_degree_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/freshet_start\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/frost_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/frost_season_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/last_spring_frost\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/first_day_below\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/first_day_above\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ice_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/consecutive_frost_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/consecutive_frost_free_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/growing_season_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/growing_season_end\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tropical_nights\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tg90p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tg10p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tx90p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tx10p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tn90p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/tn10p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/degree_days_exceedance_date\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/warm_spell_duration_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/maximum_consecutive_warm_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/fire_season\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/snow_cover_duration\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/continuous_snow_cover_start\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/continuous_snow_cover_end\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/snd_max_doy\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/snow_melt_we_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/melt_and_precip_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/winter_storm\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/blowing_snow\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/base_flow_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/freq_analysis\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/rb_flashiness_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/stats\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/fit\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/doy_qmax\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/doy_qmin\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/sea_ice_extent\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/sea_ice_area\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_wind_speed_from_vector\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_wind_vector_from_speed\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_prsn\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_prlp\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_rain_frzgr\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_rx1day\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_max_n_day_precipitation_amount\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_wetdays\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_dry_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cwd\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cdd\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_sdii\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_max_pr_intensity\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_prcptot\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_liquidprcptot\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_solidprcptot\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_days_over_precip_thresh\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_high_precip_low_temp\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_fraction_over_precip_thresh\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_liquid_precip_ratio\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_days_below\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_days_above\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_tn_days_above\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_frequency\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_max_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_total_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_hot_spell_frequency\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_hot_spell_max_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg_mean\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg_min\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_mean\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_min\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_mean\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_min\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_dtr\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_dtrmax\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_dtrvar\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_etr\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cold_spell_duration_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cold_spell_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cold_spell_frequency\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_dlyfrzthw\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_cooling_degree_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_heating_degree_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_growing_degree_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_freshet_start\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_frost_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_frost_season_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_last_spring_frost\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_first_day_below\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_first_day_above\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_ice_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_consecutive_frost_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_consecutive_frost_free_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_growing_season_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_growing_season_end\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tropical_nights\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg90p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tg10p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx90p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tx10p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn90p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_tn10p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_degree_days_exceedance_date\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_warm_spell_duration_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_maximum_consecutive_warm_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_fire_season\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_snow_cover_duration\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_continuous_snow_cover_start\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_continuous_snow_cover_end\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_snd_max_doy\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_snow_melt_we_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_melt_and_precip_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_winter_storm\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_blowing_snow\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_base_flow_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_freq_analysis\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_rb_flashiness_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_stats\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_fit\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_doy_qmax\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_doy_qmin\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_sea_ice_extent\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_grid_point_sea_ice_area\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_wind_speed_from_vector\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_wind_vector_from_speed\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_prsn\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_prlp\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_rain_frzgr\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_rx1day\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_max_n_day_precipitation_amount\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_wetdays\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_dry_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cwd\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cdd\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_sdii\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_max_pr_intensity\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_prcptot\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_liquidprcptot\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_solidprcptot\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_days_over_precip_thresh\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_high_precip_low_temp\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_fraction_over_precip_thresh\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_liquid_precip_ratio\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn_days_below\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx_days_above\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx_tn_days_above\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_frequency\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_max_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_total_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_hot_spell_frequency\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_hot_spell_max_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg_mean\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg_min\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx_mean\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx_min\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn_mean\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn_min\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_dtr\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_dtrmax\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_dtrvar\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_etr\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cold_spell_duration_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cold_spell_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cold_spell_frequency\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_dlyfrzthw\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_cooling_degree_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_heating_degree_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_growing_degree_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_freshet_start\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_frost_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_frost_season_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_last_spring_frost\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_first_day_below\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_first_day_above\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_ice_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_consecutive_frost_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_consecutive_frost_free_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_growing_season_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_growing_season_end\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tropical_nights\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg90p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tg10p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx90p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tx10p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn90p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_tn10p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_degree_days_exceedance_date\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_warm_spell_duration_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_maximum_consecutive_warm_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_fire_season\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_snow_cover_duration\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_continuous_snow_cover_start\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_continuous_snow_cover_end\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_snd_max_doy\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_snow_melt_we_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_melt_and_precip_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_winter_storm\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_blowing_snow\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_base_flow_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_freq_analysis\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_rb_flashiness_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_stats\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_fit\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_doy_qmax\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_doy_qmin\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_sea_ice_extent\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_bbox_sea_ice_area\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_wind_speed_from_vector\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_wind_vector_from_speed\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_prsn\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_prlp\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_rain_frzgr\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_rx1day\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_max_n_day_precipitation_amount\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_wetdays\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_dry_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cwd\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cdd\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_sdii\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_max_pr_intensity\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_prcptot\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_liquidprcptot\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_solidprcptot\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_days_over_precip_thresh\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_high_precip_low_temp\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_fraction_over_precip_thresh\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_liquid_precip_ratio\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn_days_below\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx_days_above\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx_tn_days_above\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_frequency\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_max_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_total_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_hot_spell_frequency\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_hot_spell_max_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg_mean\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg_min\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx_mean\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx_min\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn_mean\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn_min\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_dtr\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_dtrmax\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_dtrvar\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_etr\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cold_spell_duration_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cold_spell_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cold_spell_frequency\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_dlyfrzthw\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_cooling_degree_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_heating_degree_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_growing_degree_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_freshet_start\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_frost_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_frost_season_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_last_spring_frost\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_first_day_below\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_first_day_above\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_ice_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_consecutive_frost_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_consecutive_frost_free_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_growing_season_length\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_growing_season_end\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tropical_nights\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg90p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tg10p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx90p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tx10p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn90p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_tn10p\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_degree_days_exceedance_date\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_warm_spell_duration_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_maximum_consecutive_warm_days\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_fire_season\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_snow_cover_duration\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_continuous_snow_cover_start\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_continuous_snow_cover_end\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_snd_max_doy\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_snow_melt_we_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_melt_and_precip_max\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_winter_storm\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_blowing_snow\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_base_flow_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_freq_analysis\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_rb_flashiness_index\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_stats\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_fit\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_doy_qmax\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_doy_qmin\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_sea_ice_extent\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/ensemble_polygon_sea_ice_area\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/subset_grid_point_dataset\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/subset_ensemble_BCCAQv2\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/subset_bbox_dataset\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/subset_ensemble_bbox_BCCAQv2\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/BCCAQv2_heat_wave_frequency_gridpoint\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/subset_bbox\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/subset_gridpoint\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/subset_polygon\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/finch/processes/average_polygon\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/subset-wfs-polygon\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/subset_bbox\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/subset_continents\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/subset_countries\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/pointinspection\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/robustness_statistic\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/climatechange_signal\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/spatial_analog\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/plot_spatial_analog\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/plot_spaghetti\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/plot_uncertainty\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/plot_uncertaintyrcp\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/flyingpigeon/processes/plot_map_timemean\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/spotchecker\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cchecker\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cfchecker\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cmor_checker\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/qa_cfchecker\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/qa_checker\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_sinfo\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_operation\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_copy\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_bbox\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_indices\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ensembles\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/cdo_inter_mpi\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/esgsearch\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/download\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/persist\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/visualize\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/thredds_download\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/thredds_urls\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/thredds_opendap_urls\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/workflow\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/malleefowl/processes/custom_workflow\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/raven\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/raven-gr4j-cemaneige\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/raven-mohyse\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/raven-hmets\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/raven-hbv-ec\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/raven-multi-model\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/climatology_esp\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/hindcast-evaluation\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/hindcasting\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/realtime-forecast\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/climpred_hindcast_verification\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/ostrich-gr4j-cemaneige\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/ostrich-mohyse\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/ostrich-hmets\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/ostrich-hbv-ec\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/raster-subset\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/shape-properties\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/hydrobasins-select\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/terrain-analysis\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/zonal-stats\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/nalcms-zonal-stats\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/nalcms-zonal-stats-raster\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/objective-function\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/regionalisation\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/forecast-floodrisk\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/graph_ensemble_uncertainty\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/graph_single_hydrograph\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/ts_stats_graph\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/graph_objective_function_fit\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/graph_fit\n", - " - https://host-140-154.rdext.crim.ca/weaver/providers/raven/processes/graph_forecast_uncertainty\n" + " - https://pavics.ouranos.ca/weaver/providers/catalog/processes/getpoint\n", + " - https://pavics.ouranos.ca/weaver/providers/catalog/processes/ncplotly\n", + " - https://pavics.ouranos.ca/weaver/providers/catalog/processes/pavicrawler\n", + " - https://pavics.ouranos.ca/weaver/providers/catalog/processes/pavicsearch\n", + " - https://pavics.ouranos.ca/weaver/providers/catalog/processes/pavicsupdate\n", + " - https://pavics.ouranos.ca/weaver/providers/catalog/processes/pavicsvalidate\n", + " - https://pavics.ouranos.ca/weaver/providers/catalog/processes/period2indices\n", + " - https://pavics.ouranos.ca/weaver/providers/catalog/processes/pavicstestdocs\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tg\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/wind_speed_from_vector\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/wind_vector_from_speed\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/prsn\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/prlp\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/rain_frzgr\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/rx1day\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/max_n_day_precipitation_amount\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/wetdays\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/dry_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/cwd\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/cdd\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/sdii\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/max_pr_intensity\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/prcptot\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/liquidprcptot\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/solidprcptot\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/last_snowfall\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/first_snowfall\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/days_with_snow\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/days_over_precip_thresh\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/high_precip_low_temp\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/fraction_over_precip_thresh\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/liquid_precip_ratio\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tn_days_below\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tx_days_above\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tx_tn_days_above\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/heat_wave_frequency\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/heat_wave_max_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/heat_wave_total_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/heat_wave_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/hot_spell_frequency\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/hot_spell_max_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tg_mean\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tg_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tg_min\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tx_mean\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tx_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tx_min\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tn_mean\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tn_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tn_min\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/dtr\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/dtrmax\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/dtrvar\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/etr\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/cold_spell_duration_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/cold_spell_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/cold_spell_frequency\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/dlyfrzthw\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/cooling_degree_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/heating_degree_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/growing_degree_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/freshet_start\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/frost_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/frost_season_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/last_spring_frost\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/first_day_below\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/first_day_above\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ice_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/consecutive_frost_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/consecutive_frost_free_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/growing_season_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/growing_season_end\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tropical_nights\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tg90p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tg10p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tx90p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tx10p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tn90p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/tn10p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/degree_days_exceedance_date\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/warm_spell_duration_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/maximum_consecutive_warm_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/fire_season\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/snow_cover_duration\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/continuous_snow_cover_start\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/continuous_snow_cover_end\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/snd_max_doy\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/snow_melt_we_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/melt_and_precip_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/winter_storm\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/blowing_snow\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/base_flow_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/freq_analysis\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/rb_flashiness_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/stats\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/fit\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/doy_qmax\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/doy_qmin\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/sea_ice_extent\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/sea_ice_area\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tg\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_wind_speed_from_vector\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_wind_vector_from_speed\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_prsn\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_prlp\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_rain_frzgr\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_rx1day\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_max_n_day_precipitation_amount\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_wetdays\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_dry_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_cwd\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_cdd\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_sdii\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_max_pr_intensity\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_prcptot\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_liquidprcptot\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_solidprcptot\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_days_over_precip_thresh\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_high_precip_low_temp\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_fraction_over_precip_thresh\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_liquid_precip_ratio\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_days_below\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_days_above\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_tn_days_above\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_frequency\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_max_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_total_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_heat_wave_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_hot_spell_frequency\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_hot_spell_max_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tg_mean\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tg_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tg_min\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_mean\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tx_min\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_mean\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tn_min\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_dtr\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_dtrmax\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_dtrvar\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_etr\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_cold_spell_duration_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_cold_spell_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_cold_spell_frequency\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_dlyfrzthw\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_cooling_degree_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_heating_degree_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_growing_degree_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_freshet_start\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_frost_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_frost_season_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_last_spring_frost\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_first_day_below\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_first_day_above\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_ice_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_consecutive_frost_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_consecutive_frost_free_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_growing_season_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_growing_season_end\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tropical_nights\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tg90p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tg10p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tx90p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tx10p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tn90p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_tn10p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_degree_days_exceedance_date\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_warm_spell_duration_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_maximum_consecutive_warm_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_fire_season\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_snow_cover_duration\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_continuous_snow_cover_start\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_continuous_snow_cover_end\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_snd_max_doy\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_snow_melt_we_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_melt_and_precip_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_winter_storm\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_blowing_snow\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_base_flow_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_freq_analysis\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_rb_flashiness_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_stats\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_fit\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_doy_qmax\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_doy_qmin\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_sea_ice_extent\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_grid_point_sea_ice_area\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tg\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_wind_speed_from_vector\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_wind_vector_from_speed\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_prsn\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_prlp\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_rain_frzgr\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_rx1day\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_max_n_day_precipitation_amount\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_wetdays\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_dry_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_cwd\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_cdd\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_sdii\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_max_pr_intensity\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_prcptot\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_liquidprcptot\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_solidprcptot\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_days_over_precip_thresh\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_high_precip_low_temp\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_fraction_over_precip_thresh\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_liquid_precip_ratio\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tn_days_below\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tx_days_above\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tx_tn_days_above\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_frequency\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_max_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_total_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_heat_wave_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_hot_spell_frequency\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_hot_spell_max_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tg_mean\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tg_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tg_min\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tx_mean\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tx_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tx_min\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tn_mean\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tn_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tn_min\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_dtr\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_dtrmax\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_dtrvar\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_etr\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_cold_spell_duration_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_cold_spell_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_cold_spell_frequency\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_dlyfrzthw\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_cooling_degree_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_heating_degree_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_growing_degree_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_freshet_start\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_frost_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_frost_season_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_last_spring_frost\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_first_day_below\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_first_day_above\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_ice_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_consecutive_frost_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_consecutive_frost_free_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_growing_season_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_growing_season_end\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tropical_nights\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tg90p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tg10p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tx90p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tx10p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tn90p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_tn10p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_degree_days_exceedance_date\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_warm_spell_duration_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_maximum_consecutive_warm_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_fire_season\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_snow_cover_duration\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_continuous_snow_cover_start\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_continuous_snow_cover_end\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_snd_max_doy\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_snow_melt_we_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_melt_and_precip_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_winter_storm\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_blowing_snow\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_base_flow_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_freq_analysis\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_rb_flashiness_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_stats\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_fit\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_doy_qmax\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_doy_qmin\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_sea_ice_extent\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_bbox_sea_ice_area\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tg\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_wind_speed_from_vector\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_wind_vector_from_speed\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_prsn\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_prlp\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_rain_frzgr\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_rx1day\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_max_n_day_precipitation_amount\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_wetdays\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_dry_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_cwd\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_cdd\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_sdii\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_max_pr_intensity\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_prcptot\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_liquidprcptot\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_solidprcptot\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_days_over_precip_thresh\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_high_precip_low_temp\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_fraction_over_precip_thresh\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_liquid_precip_ratio\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tn_days_below\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tx_days_above\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tx_tn_days_above\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_frequency\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_max_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_total_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_heat_wave_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_hot_spell_frequency\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_hot_spell_max_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tg_mean\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tg_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tg_min\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tx_mean\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tx_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tx_min\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tn_mean\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tn_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tn_min\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_dtr\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_dtrmax\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_dtrvar\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_etr\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_cold_spell_duration_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_cold_spell_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_cold_spell_frequency\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_dlyfrzthw\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_cooling_degree_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_heating_degree_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_growing_degree_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_freshet_start\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_frost_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_frost_season_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_last_spring_frost\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_first_day_below\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_first_day_above\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_ice_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_consecutive_frost_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_consecutive_frost_free_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_growing_season_length\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_growing_season_end\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tropical_nights\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tg90p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tg10p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tx90p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tx10p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tn90p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_tn10p\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_degree_days_exceedance_date\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_warm_spell_duration_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_maximum_consecutive_warm_days\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_fire_season\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_snow_cover_duration\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_continuous_snow_cover_start\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_continuous_snow_cover_end\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_snd_max_doy\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_snow_melt_we_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_melt_and_precip_max\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_winter_storm\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_blowing_snow\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_base_flow_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_freq_analysis\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_rb_flashiness_index\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_stats\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_fit\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_doy_qmax\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_doy_qmin\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_sea_ice_extent\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/ensemble_polygon_sea_ice_area\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/subset_grid_point_dataset\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/subset_ensemble_BCCAQv2\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/subset_bbox_dataset\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/subset_ensemble_bbox_BCCAQv2\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/BCCAQv2_heat_wave_frequency_gridpoint\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/subset_bbox\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/subset_gridpoint\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/subset_polygon\n", + " - https://pavics.ouranos.ca/weaver/providers/finch/processes/average_polygon\n", + " - https://pavics.ouranos.ca/weaver/providers/flyingpigeon/processes/subset-wfs-polygon\n", + " - https://pavics.ouranos.ca/weaver/providers/flyingpigeon/processes/subset_bbox\n", + " - https://pavics.ouranos.ca/weaver/providers/flyingpigeon/processes/subset_continents\n", + " - https://pavics.ouranos.ca/weaver/providers/flyingpigeon/processes/subset_countries\n", + " - https://pavics.ouranos.ca/weaver/providers/flyingpigeon/processes/pointinspection\n", + " - https://pavics.ouranos.ca/weaver/providers/flyingpigeon/processes/robustness_statistic\n", + " - https://pavics.ouranos.ca/weaver/providers/flyingpigeon/processes/climatechange_signal\n", + " - https://pavics.ouranos.ca/weaver/providers/flyingpigeon/processes/spatial_analog\n", + " - https://pavics.ouranos.ca/weaver/providers/flyingpigeon/processes/plot_spatial_analog\n", + " - https://pavics.ouranos.ca/weaver/providers/flyingpigeon/processes/plot_spaghetti\n", + " - https://pavics.ouranos.ca/weaver/providers/flyingpigeon/processes/plot_uncertainty\n", + " - https://pavics.ouranos.ca/weaver/providers/flyingpigeon/processes/plot_uncertaintyrcp\n", + " - https://pavics.ouranos.ca/weaver/providers/flyingpigeon/processes/plot_map_timemean\n", + " - https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump\n", + " - https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/spotchecker\n", + " - https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/cchecker\n", + " - https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/cfchecker\n", + " - https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/cmor_checker\n", + " - https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/qa_cfchecker\n", + " - https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/qa_checker\n", + " - https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/cdo_sinfo\n", + " - https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/cdo_operation\n", + " - https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/cdo_copy\n", + " - https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/cdo_bbox\n", + " - https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/cdo_indices\n", + " - https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ensembles\n", + " - https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/cdo_inter_mpi\n", + " - https://pavics.ouranos.ca/weaver/providers/malleefowl/processes/esgsearch\n", + " - https://pavics.ouranos.ca/weaver/providers/malleefowl/processes/download\n", + " - https://pavics.ouranos.ca/weaver/providers/malleefowl/processes/persist\n", + " - https://pavics.ouranos.ca/weaver/providers/malleefowl/processes/visualize\n", + " - https://pavics.ouranos.ca/weaver/providers/malleefowl/processes/thredds_download\n", + " - https://pavics.ouranos.ca/weaver/providers/malleefowl/processes/thredds_urls\n", + " - https://pavics.ouranos.ca/weaver/providers/malleefowl/processes/thredds_opendap_urls\n", + " - https://pavics.ouranos.ca/weaver/providers/malleefowl/processes/workflow\n", + " - https://pavics.ouranos.ca/weaver/providers/malleefowl/processes/custom_workflow\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/raven\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/raven-gr4j-cemaneige\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/raven-mohyse\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/raven-hmets\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/raven-hbv-ec\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/raven-multi-model\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/climatology_esp\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/hindcast-evaluation\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/hindcasting\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/realtime-forecast\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/climpred_hindcast_verification\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/ostrich-gr4j-cemaneige\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/ostrich-mohyse\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/ostrich-hmets\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/ostrich-hbv-ec\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/raster-subset\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/shape-properties\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/hydrobasins-select\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/terrain-analysis\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/zonal-stats\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/nalcms-zonal-stats\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/nalcms-zonal-stats-raster\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/objective-function\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/regionalisation\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/forecast-floodrisk\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/graph_ensemble_uncertainty\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/graph_single_hydrograph\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/ts_stats_graph\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/graph_objective_function_fit\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/graph_fit\n", + " - https://pavics.ouranos.ca/weaver/providers/raven/processes/graph_forecast_uncertainty\n" ] } ], @@ -698,7 +698,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Will run process: [https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump]\n" + "Will run process: [https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump]\n" ] } ], @@ -818,43 +818,43 @@ " \"outputTransmission\": [\n", " \"reference\"\n", " ],\n", - " \"processDescriptionURL\": \"https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump\",\n", - " \"processEndpointWPS1\": \"https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird?service=WPS&request=DescribeProcess&version=1.0.0&identifier=ncdump\",\n", - " \"executeEndpoint\": \"https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump/jobs\",\n", + " \"processDescriptionURL\": \"https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump\",\n", + " \"processEndpointWPS1\": \"https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird?service=WPS&request=DescribeProcess&version=1.0.0&identifier=ncdump\",\n", + " \"executeEndpoint\": \"https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump/jobs\",\n", " \"links\": [\n", " {\n", " \"type\": \"application/json\",\n", " \"title\": \"Process description.\",\n", " \"hreflang\": \"en-CA\",\n", - " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump\",\n", + " \"href\": \"https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump\",\n", " \"rel\": \"self\"\n", " },\n", " {\n", " \"type\": \"application/json\",\n", " \"title\": \"Process description.\",\n", " \"hreflang\": \"en-CA\",\n", - " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump\",\n", + " \"href\": \"https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump\",\n", " \"rel\": \"process-desc\"\n", " },\n", " {\n", " \"type\": \"application/json\",\n", " \"title\": \"Process execution endpoint for job submission.\",\n", " \"hreflang\": \"en-CA\",\n", - " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes/ncdump/execution\",\n", + " \"href\": \"https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump/execution\",\n", " \"rel\": \"execute\"\n", " },\n", " {\n", " \"type\": \"application/json\",\n", " \"title\": \"List of registered processes.\",\n", " \"hreflang\": \"en-CA\",\n", - " \"href\": \"https://host-140-154.rdext.crim.ca/weaver/providers/hummingbird/processes\",\n", + " \"href\": \"https://pavics.ouranos.ca/weaver/providers/hummingbird/processes\",\n", " \"rel\": \"collection\"\n", " },\n", " {\n", " \"type\": \"application/xml\",\n", " \"title\": \"Service definition.\",\n", " \"hreflang\": \"en-CA\",\n", - " \"href\": \"https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird?service=WPS&request=DescribeProcess&version=1.0.0&identifier=ncdump?service=WPS&request=GetCapabilities\",\n", + " \"href\": \"https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird?service=WPS&request=DescribeProcess&version=1.0.0&identifier=ncdump?service=WPS&request=GetCapabilities\",\n", " \"rel\": \"service-desc\"\n", " }\n", " ]\n", @@ -889,7 +889,7 @@ }, { "cell_type": "code", - "execution_count": 96, + "execution_count": 1, "metadata": { "collapsed": false, "jupyter": { @@ -905,9 +905,9 @@ "output_type": "stream", "text": [ "Submitting process job with:\n", - " File: [https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc]\n", - " Process: [http://localhost:4002/providers/hummingbird-154/processes/ncdump]\n", - "Job Status Location: [http://localhost:4002/providers/hummingbird-154/processes/ncdump/jobs/996e1f1c-cf4e-4559-adfb-d4af213db454]\n" + " File: [https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc]\n", + " Process: [https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump]\n", + "Job Status Location: [https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump/jobs/a4994551-4799-461a-a7bb-1e91aeace32c]\n" ] } ], @@ -956,7 +956,7 @@ }, { "cell_type": "code", - "execution_count": 97, + "execution_count": 1, "metadata": { "collapsed": false, "jupyter": { @@ -983,7 +983,7 @@ "\n", "print(\"Waiting for job completion with pooling monitoring of its status...\")\n", "\n", - "timeout = 60 # Define a timeout to abandon this monitoring. Process is relatively quick and shouldn't last too long.\n", + "timeout = 20 # Define a timeout to abandon this monitoring. Process is relatively quick and shouldn't last too long.\n", "delta = 5\n", "body = {}\n", "while timeout >= 0:\n", @@ -1027,7 +1027,7 @@ }, { "cell_type": "code", - "execution_count": 98, + "execution_count": 1, "metadata": { "collapsed": false, "jupyter": { @@ -1043,62 +1043,43 @@ "output_type": "stream", "text": [ "Obtaining job logs from execution...\n", - "Job logs retrieved from [http://localhost:4002/providers/hummingbird-154/processes/ncdump/jobs/996e1f1c-cf4e-4559-adfb-d4af213db454/logs]:\n", + "Job logs retrieved from [https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump/jobs/a4994551-4799-461a-a7bb-1e91aeace32c/logs]:\n", "\n", - "[2021-10-07 02:32:17] INFO [weaver.datatype.Job] 00:00:00 1% accepted Job task setup completed.\n", - "[2021-10-07 02:32:17] DEBUG [weaver.datatype.Job] 00:00:00 2% accepted Employed WPS URL: [https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird]\n", - "[2021-10-07 02:32:17] INFO [weaver.datatype.Job] 00:00:00 2% accepted Execute WPS request for process [ncdump]\n", - "[2021-10-07 02:32:18] INFO [weaver.datatype.Job] 00:00:00 3% accepted Fetching job input definitions.\n", - "[2021-10-07 02:32:18] INFO [weaver.datatype.Job] 00:00:00 4% accepted Fetching job output definitions.\n", - "[2021-10-07 02:32:19] INFO [weaver.datatype.Job] 00:00:01 5% accepted Starting job process execution.\n", - "[2021-10-07 02:32:19] INFO [weaver.datatype.Job] 00:00:01 5% accepted Following updates could take a while until the Application Package answers...\n", - "[2021-10-07 02:32:22] DEBUG [weaver.datatype.Job] 00:00:04 6% accepted Updated job status location: [/tmp/weaver-hybrid/996e1f1c-cf4e-4559-adfb-d4af213db454.xml].\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 7% running Starting monitoring of job execution.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 8% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 1% running Preparing package logs done.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 10% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 2% running Launching package...\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 12% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] Visible application CWL euid:egid [1000:1000]\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 14% running [2021-10-07 02:32:19] DEBUG [weaver.processes.wps_package.ncdump] Using cwltool.RuntimeContext args:\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 16% running {\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 18% running \"no_read_only\": false,\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 20% running \"no_match_user\": false,\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 22% running \"tmpdir_prefix\": \"/tmp/weaver-hybrid/cwltool_tmp_\",\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 24% running \"tmp_outdir_prefix\": \"/tmp/weaver-hybrid/cwltool_out_\",\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 26% running \"outdir\": \"/tmp/weaver-hybrid/pywps_process_1_tczi01\",\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 28% running \"debug\": true\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 31% running }\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 33% running [2021-10-07 02:32:19] INFO [cwltool] Resolved '/tmp/tmpov0xahvb/ncdump' to 'file:///tmp/tmpov0xahvb/ncdump'\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 35% running [2021-10-07 02:32:19] INFO [cwltool] ../../../../tmp/tmpov0xahvb/ncdump:1:1: Unknown hint file:///tmp/tmpov0xahvb/WPS1Requirement\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 37% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 5% running Loading package content done.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 39% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 6% running Retrieve package inputs done.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 41% running [2021-10-07 02:32:19] DEBUG [weaver.processes.wps_package.ncdump] File input (dataset) DROPPED. Detected default format as data.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 43% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 8% running Convert package inputs done.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 45% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 10% running Running package...\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 47% running [2021-10-07 02:32:19] DEBUG [weaver.processes.wps_package.ncdump] Launching process package with inputs:\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 49% running {\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 52% running \"dataset_opendap\": \"http://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/testdata/ta_Amon_MRI-CGCM3_decadal1980_r1i1p1_199101-200012.nc\"\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 54% running }\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 56% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 10% running Preparing to launch package ncdump.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 58% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] WPS-1 Package resolved from requirement/hint: WPS1Requirement\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 60% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 11% running https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird [ncdump] - Preparing execute request for remote WPS1 provider.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 62% running [2021-10-07 02:32:19] INFO [weaver.processes.wps_package.ncdump] 14% running https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird [ncdump] - Executing job on remote WPS1 provider.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 64% running [2021-10-07 02:32:20] INFO [weaver.processes.wps_package.ncdump] 18% running https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird [ncdump] - Monitoring job on remote WPS1 provider : [https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird]\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 66% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 18% running https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird [ncdump] - 0% accepted PyWPS Process ncdump accepted\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 68% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 86% running https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird [ncdump] - 100% succeeded PyWPS Process NCDump finished\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 70% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 86% running https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird [ncdump] - Fetching job outputs from remote WPS1 provider.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 72% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 95% succeeded https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/hummingbird [ncdump] - Execution on remote WPS1 provider completed.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 75% running [2021-10-07 02:32:22] DEBUG [cwltool] Moving /tmp/weaver-hybrid/cwltool_out_zx7exctj/output.txt to /tmp/weaver-hybrid/pywps_process_1_tczi01/output.txt\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 77% running [2021-10-07 02:32:22] DEBUG [cwltool] Moving /tmp/weaver-hybrid/cwltool_out_zx7exctj/stderr.log to /tmp/weaver-hybrid/pywps_process_1_tczi01/stderr.log\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 79% running [2021-10-07 02:32:22] DEBUG [cwltool] Moving /tmp/weaver-hybrid/cwltool_out_zx7exctj/stdout.log to /tmp/weaver-hybrid/pywps_process_1_tczi01/stdout.log\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 81% running [2021-10-07 02:32:22] DEBUG [cwltool] Removing intermediate output directory /tmp/weaver-hybrid/cwltool_out_fov11437\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 83% running [2021-10-07 02:32:22] DEBUG [cwltool] Removing intermediate output directory /tmp/weaver-hybrid/cwltool_out_zx7exctj\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 85% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 95% running Package execution done.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 87% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 95% running Nothing captured from internal application logs.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 89% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] Resolved WPS output [output] as file reference: [/tmp/weaver-hybrid/pywps_process_1_tczi01/output.txt]\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 91% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 98% running Generate package outputs done.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 93% running [2021-10-07 02:32:22] INFO [weaver.processes.wps_package.ncdump] 100% succeeded Package complete.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 96% succeeded Job succeeded (status: Package complete.).\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 98% succeeded Job succeeded.\n", - "[2021-10-07 02:32:22] INFO [weaver.datatype.Job] 00:00:04 100% succeeded Job task complete.\n" + "[2021-10-13 16:53:04] INFO [weaver.datatype.Job] 00:00:00 1% accepted Job task setup completed.\n", + "[2021-10-13 16:53:04] DEBUG [weaver.datatype.Job] 00:00:00 2% accepted Employed WPS URL: [https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird]\n", + "[2021-10-13 16:53:04] INFO [weaver.datatype.Job] 00:00:00 2% accepted Execute WPS request for process [ncdump]\n", + "[2021-10-13 16:53:04] INFO [weaver.datatype.Job] 00:00:00 3% accepted Fetching job input definitions.\n", + "[2021-10-13 16:53:04] INFO [weaver.datatype.Job] 00:00:00 4% accepted Fetching job output definitions.\n", + "[2021-10-13 16:53:05] INFO [weaver.datatype.Job] 00:00:00 5% accepted Starting job process execution.\n", + "[2021-10-13 16:53:05] INFO [weaver.datatype.Job] 00:00:00 5% accepted Following updates could take a while until the Application Package answers...\n", + "[2021-10-13 16:53:08] DEBUG [weaver.datatype.Job] 00:00:03 6% accepted Updated job status location: [/data/wps_outputs/weaver/a4994551-4799-461a-a7bb-1e91aeace32c.xml].\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 7% running Starting monitoring of job execution.\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 8% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 1% running Preparing package logs done.\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 11% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 2% running Launching package...\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 15% running [2021-10-13 16:53:05] WARNING [weaver.processes.wps_package.ncdump] Visible application CWL euid:egid [0:0]\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 19% running [2021-10-13 16:53:05] INFO [cwltool] Resolved '/tmp/tmph0rfrr_e/ncdump' to 'file:///tmp/tmph0rfrr_e/ncdump'\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 23% running [2021-10-13 16:53:05] INFO [cwltool] ../../../../tmp/tmph0rfrr_e/ncdump:1:1: Unknown hint file:///tmp/tmph0rfrr_e/WPS1Requirement\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 27% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 5% running Loading package content done.\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 30% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 6% running Retrieve package inputs done.\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 34% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 8% running Convert package inputs done.\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 38% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 10% running Running package...\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 42% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 10% running Preparing to launch package ncdump.\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 46% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] WPS-1 Package resolved from requirement/hint: WPS1Requirement\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 50% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 11% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - Preparing execute request for remote WPS1 provider.\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 53% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 14% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - Executing job on remote WPS1 provider.\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 57% running [2021-10-13 16:53:06] INFO [weaver.processes.wps_package.ncdump] 18% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - Monitoring job on remote WPS1 provider : [https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird]\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 61% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 18% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - 0% accepted PyWPS Process ncdump accepted\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 65% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 86% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - 100% succeeded PyWPS Process NCDump finished\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 69% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 86% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - Fetching job outputs from remote WPS1 provider.\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 73% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 95% succeeded https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - Execution on remote WPS1 provider completed.\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 76% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 95% running Package execution done.\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 80% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 95% running Nothing captured from internal application logs.\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 84% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] Resolved WPS output [output] as file reference: [/tmp/wps_workdir/weaver/pywps_process_8w98i2h5/output.txt]\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 88% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 98% running Generate package outputs done.\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 92% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 100% succeeded Package complete.\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 96% succeeded Job succeeded (status: Package complete.).\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 98% succeeded Job succeeded.\n", + "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 100% succeeded Job task complete.\n" ] } ], @@ -1130,7 +1111,7 @@ }, { "cell_type": "code", - "execution_count": 102, + "execution_count": 1, "metadata": { "collapsed": false, "jupyter": { @@ -1147,89 +1128,19 @@ "text": [ "\n", "Job was successful! Retrieving result location...\n", - "Result is located at: [http://localhost:4002/wpsoutputs/996e1f1c-cf4e-4559-adfb-d4af213db454/output.txt]\n", - "\n", - "NCDUMP 'output' result content:\n", + "Result is located at: [https://pavics.ouranos.ca/wpsoutputs/weaver/a4994551-4799-461a-a7bb-1e91aeace32c/output.txt]\n", "\n", + "Fetching output contents...\n", "\n", - "netcdf ta_Amon_MRI-CGCM3_decadal1980_r1i1p1_199101-200012.nc {\n", - "dimensions:\n", - "\ttime = UNLIMITED ; // (120 currently)\n", - "\tbnds = 2 ;\n", - "\tlat = 160 ;\n", - "\tlon = 320 ;\n", - "\tplev = 23 ;\n", - "variables:\n", - "\tdouble time(time) ;\n", - "\t\ttime:bounds = \"time_bnds\" ;\n", - "\t\ttime:units = \"days since 1981-01-01\" ;\n", - "\t\ttime:calendar = \"standard\" ;\n", - "\t\ttime:axis = \"T\" ;\n", - "\t\ttime:long_name = \"time\" ;\n", - "\t\ttime:standard_name = \"time\" ;\n", - "\tdouble time_bnds(time, bnds) ;\n", - "\tdouble plev(plev) ;\n", - "\t\tplev:units = \"Pa\" ;\n", - "\t\tplev:axis = \"Z\" ;\n", - "\t\tplev:positive = \"down\" ;\n", - "\t\tplev:long_name = \"pressure\" ;\n", - "\t\tplev:standard_name = \"air_pressure\" ;\n", - "\tdouble lat(lat) ;\n", - "\t\tlat:bounds = \"lat_bnds\" ;\n", - "\t\tlat:units = \"degrees_north\" ;\n", - "\t\tlat:axis = \"Y\" ;\n", - "\t\tlat:long_name = \"latitude\" ;\n", - "\t\tlat:standard_name = \"latitude\" ;\n", - "\tdouble lat_bnds(lat, bnds) ;\n", - "\tdouble lon(lon) ;\n", - "\t\tlon:bounds = \"lon_bnds\" ;\n", - "\t\tlon:units = \"degrees_east\" ;\n", - "\t\tlon:axis = \"X\" ;\n", - "\t\tlon:long_name = \"longitude\" ;\n", - "\t\tlon:standard_name = \"longitude\" ;\n", - "\tdouble lon_bnds(lon, bnds) ;\n", - "\tfloat ta(time, plev, lat, lon) ;\n", - "\t\tta:standard_name = \"air_temperature\" ;\n", - "\t\tta:long_name = \"Air Temperature\" ;\n", - "\t\tta:units = \"K\" ;\n", - "\t\tta:original_name = \"T\" ;\n", - "\t\tta:cell_methods = \"time: mean (interval: 30 minutes)\" ;\n", - "\t\tta:cell_measures = \"area: areacella\" ;\n", - "\t\tta:history = \"2011-08-12T05:05:34Z altered by CMOR: replaced missing value flag (-9.99e+33) with standard missing value (1e+20).\" ;\n", - "\t\tta:missing_value = 1.e+20f ;\n", - "\t\tta:_FillValue = 1.e+20f ;\n", - "\t\tta:associated_files = \"baseURL: http://cmip-pcmdi.llnl.gov/CMIP5/dataLocation gridspecFile: gridspec_atmos_fx_MRI-CGCM3_decadal1980_r0i0p0.nc areacella: areacella_fx_MRI-CGCM3_decadal1980_r0i0p0.nc\" ;\n", + "NCDUMP 'output' result content:\n", "\n", - "// global attributes:\n", - "\t\t:institution = \"MRI (Meteorological Research Institute, Tsukuba, Japan)\" ;\n", - "\t\t:institute_id = \"MRI\" ;\n", - "\t\t:experiment_id = \"decadal1980\" ;\n", - "\t\t:source = \"MRI-CGCM3 2011 atmosphere: GSMUV (gsmuv-110112, TL159L48); ocean: MRI.COM3 (MRICOM-3_0-20101116, 1x0.5L51); sea ice: MRI.COM3; land: HAL (HAL_cmip5_v0.31_04); aerosol: MASINGAR-mk2 (masingar_mk2-20110111_0203, TL95L48)\" ;\n", - "\t\t:model_id = \"MRI-CGCM3\" ;\n", - "\t\t:forcing = \"GHG, SA, Oz, LU, Sl, Vl, BC, OC (GHG includes CO2, CH4, N2O, CFC-11, CFC-12, and HCFC-22)\" ;\n", - "\t\t:parent_experiment_id = \"N/A\" ;\n", - "\t\t:parent_experiment_rip = \"N/A\" ;\n", - "\t\t:branch_time = 0. ;\n", - "\t\t:contact = \"Seiji Yukimoto (yukimoto@mri-jma.go.jp)\" ;\n", - "\t\t:history = \"Output from /sharex3/cmip5/decadal1980/run-C3_decadal1980_01a/grads/atm_avr_mon.ctl 2011-08-12T05:05:34Z CMOR rewrote data to comply with CF standards and CMIP5 requirements.\" ;\n", - "\t\t:references = \"Model described by Yukimoto et al. (Technical Report of the Meteorological Research Institute, 2011, 64, 83pp.)\" ;\n", - "\t\t:initialization_method = 1 ;\n", - "\t\t:physics_version = 1 ;\n", - "\t\t:tracking_id = \"ce91e727-5f22-44fc-b24d-5bb53393ac69\" ;\n", - "\t\t:product = \"output\" ;\n", - "\t\t:experiment = \"10- or 30-year run initialized in year 1980\" ;\n", - "\t\t:frequency = \"mon\" ;\n", - "\t\t:creation_date = \"2011-08-12T05:05:34Z\" ;\n", - "\t\t:Conventions = \"CF-1.4\" ;\n", - "\t\t:project_id = \"CMIP5\" ;\n", - "\t\t:table_id = \"Table Amon (26 July 2011) 976b7fd1d9e1be31dddd28f5dc79b7a1\" ;\n", - "\t\t:title = \"MRI-CGCM3 model output prepared for CMIP5 10- or 30-year run initialized in year 1980\" ;\n", - "\t\t:parent_experiment = \"N/A\" ;\n", - "\t\t:modeling_realm = \"atmos\" ;\n", - "\t\t:realization = 1 ;\n", - "\t\t:cmor_version = \"2.7.1\" ;\n", - "\t\t:DODS_EXTRA.Unlimited_Dimension = \"time\" ;\n", - "}\n", + "\n", + "404 Not Found\n", + "\n", + "

404 Not Found

\n", + "
nginx/1.13.6
\n", + "\n", + "\n", "\n" ] } From 93c56e7c4db011b3aaed0740cb8119ffb2bcee4c Mon Sep 17 00:00:00 2001 From: Francis Charette Migneault Date: Wed, 13 Oct 2021 15:06:23 -0400 Subject: [PATCH 5/7] patch WPS-example notebook PAVICS_FQDN endpoint --- docs/source/notebooks/WPS_example.ipynb | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/source/notebooks/WPS_example.ipynb b/docs/source/notebooks/WPS_example.ipynb index 310e42f2..ce90f402 100755 --- a/docs/source/notebooks/WPS_example.ipynb +++ b/docs/source/notebooks/WPS_example.ipynb @@ -166,13 +166,13 @@ "name": "stdout", "output_type": "stream", "text": [ - "https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc\n" + "https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc\n" ] } ], "source": [ "# Example netcdf url to NRCAN daily - tasmin 2013\n", - "nc_url = 'https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc'\n", + "nc_url = 'https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc'\n", "print(nc_url)" ] }, @@ -192,7 +192,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "[('dataset_opendap', 'https://host-140-154.rdext.crim.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc')]\n" + "[('dataset_opendap', 'https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc')]\n" ] } ], @@ -237,7 +237,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "\n", + "\n", " \n", " ncdump\n", " NCDump\n", @@ -251,7 +251,7 @@ " output\n", " NetCDF Metadata\n", " NetCDF Metadata\n", - " \n", + " \n", " \n", " \n", "\n" From 79b322c72484151217eb62ac56409a6182bacdf3 Mon Sep 17 00:00:00 2001 From: Francis Charette Migneault Date: Wed, 13 Oct 2021 15:17:30 -0400 Subject: [PATCH 6/7] update test file in outputs --- docs/source/notebook-components/weaver_example.ipynb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/source/notebook-components/weaver_example.ipynb b/docs/source/notebook-components/weaver_example.ipynb index 6a7b101b..8d9d4016 100644 --- a/docs/source/notebook-components/weaver_example.ipynb +++ b/docs/source/notebook-components/weaver_example.ipynb @@ -40,7 +40,7 @@ " WEAVER_TEST_URL https://pavics.ouranos.ca/weaver\n", " WEAVER_TEST_WPS_OUTPUTS https://pavics.ouranos.ca/wpsoutputs\n", " WEAVER_TEST_SSL_VERIFY True\n", - " WEAVER_TEST_FILE https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc\n", + " WEAVER_TEST_FILE https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/testdata/ta_Amon_MRI-CGCM3_decadal1980_r1i1p1_199101-200012.nc\n", " WEAVER_TEST_KNOWN_BIRDS ['catalog', 'finch', 'flyingpigeon', 'hummingbird', 'malleefowl', 'raven']\n", " WEAVER_TEST_REQUEST_XARGS {'headers': {'Accept': 'application/json', 'Content-Type': 'application/json'}, 'verify': True, 'timeout': 5}\n" ] @@ -905,7 +905,7 @@ "output_type": "stream", "text": [ "Submitting process job with:\n", - " File: [https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/nrcan/nrcan_canada_daily/tasmin/nrcan_canada_daily_tasmin_2013.nc]\n", + " File: [https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/testdata/ta_Amon_MRI-CGCM3_decadal1980_r1i1p1_199101-200012.nc]\n", " Process: [https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump]\n", "Job Status Location: [https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump/jobs/a4994551-4799-461a-a7bb-1e91aeace32c]\n" ] From ea3b684021302c80431d0f4c06a848d431c6141e Mon Sep 17 00:00:00 2001 From: Francis Charette Migneault Date: Thu, 14 Oct 2021 14:15:30 -0400 Subject: [PATCH 7/7] update output result from ncdump --- .../notebook-components/weaver_example.ipynb | 193 +++++++++++++----- 1 file changed, 139 insertions(+), 54 deletions(-) diff --git a/docs/source/notebook-components/weaver_example.ipynb b/docs/source/notebook-components/weaver_example.ipynb index 8d9d4016..ee5c6ee9 100644 --- a/docs/source/notebook-components/weaver_example.ipynb +++ b/docs/source/notebook-components/weaver_example.ipynb @@ -84,7 +84,7 @@ "for var, val in variables:\n", " print(msg.format(var, val))\n", "\n", - " \n", + "\n", "assert len(WEAVER_TEST_KNOWN_BIRDS) >= 1, \"No test WPS provider provided in 'WEAVER_TEST_KNOWN_BIRDS'.\"\n" ] }, @@ -172,7 +172,7 @@ "missing = []\n", "for bird in WEAVER_TEST_KNOWN_BIRDS:\n", " if bird not in body[\"providers\"]:\n", - " missing.append(bird) \n", + " missing.append(bird)\n", "assert not missing, f\"Could not find all expected Weaver WPS providers.\\nMissing: [{missing}]\\nExpected: [{WEAVER_TEST_KNOWN_BIRDS}]\"\n", "bird_ids = body[\"providers\"]" ] @@ -730,7 +730,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 8, "metadata": { "collapsed": false, "jupyter": { @@ -863,12 +863,19 @@ } ], "source": [ + "# NBVAL_IGNORE_OUTPUT\n", + "# ignore detailed description prone to changes, instead run a few basic manual validations\n", + "\n", "print(\"Getting WPS process description...\\n\")\n", "\n", "resp = requests.get(WEAVER_BIRD_PROCESS_URL, **WEAVER_TEST_REQUEST_XARGS)\n", "assert resp.status_code == 200, f\"Error getting WPS process description:\\n[{json_dump(resp.text)}]\"\n", "body = resp.json()\n", - "json_print(body)" + "json_print(body)\n", + "\n", + "assert \"hummingbird\" in body[\"keywords\"]\n", + "assert \"wps-remote\" in body[\"keywords\"]\n", + "assert body[\"id\"] == \"ncdump\"" ] }, { @@ -889,7 +896,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 17, "metadata": { "collapsed": false, "jupyter": { @@ -907,7 +914,7 @@ "Submitting process job with:\n", " File: [https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/testdata/ta_Amon_MRI-CGCM3_decadal1980_r1i1p1_199101-200012.nc]\n", " Process: [https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump]\n", - "Job Status Location: [https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump/jobs/a4994551-4799-461a-a7bb-1e91aeace32c]\n" + "Job Status Location: [https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump/jobs/3d1e5b91-6cde-49ee-a607-222b9a857546]\n" ] } ], @@ -956,7 +963,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 18, "metadata": { "collapsed": false, "jupyter": { @@ -994,7 +1001,7 @@ " if body[\"status\"] in [\"accepted\", \"running\"]:\n", " print(f\"Delay: {delta}s, Duration: {body['duration']}, Status: {body['status']}\")\n", " time.sleep(delta)\n", - " continue \n", + " continue\n", " if body[\"status\"] in [\"failed\", \"succeeded\"]:\n", " print(f\"Final job status: [{body['status']}]\")\n", " break\n", @@ -1027,7 +1034,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 19, "metadata": { "collapsed": false, "jupyter": { @@ -1043,47 +1050,50 @@ "output_type": "stream", "text": [ "Obtaining job logs from execution...\n", - "Job logs retrieved from [https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump/jobs/a4994551-4799-461a-a7bb-1e91aeace32c/logs]:\n", + "Job logs retrieved from [https://pavics.ouranos.ca/weaver/providers/hummingbird/processes/ncdump/jobs/3d1e5b91-6cde-49ee-a607-222b9a857546/logs]:\n", "\n", - "[2021-10-13 16:53:04] INFO [weaver.datatype.Job] 00:00:00 1% accepted Job task setup completed.\n", - "[2021-10-13 16:53:04] DEBUG [weaver.datatype.Job] 00:00:00 2% accepted Employed WPS URL: [https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird]\n", - "[2021-10-13 16:53:04] INFO [weaver.datatype.Job] 00:00:00 2% accepted Execute WPS request for process [ncdump]\n", - "[2021-10-13 16:53:04] INFO [weaver.datatype.Job] 00:00:00 3% accepted Fetching job input definitions.\n", - "[2021-10-13 16:53:04] INFO [weaver.datatype.Job] 00:00:00 4% accepted Fetching job output definitions.\n", - "[2021-10-13 16:53:05] INFO [weaver.datatype.Job] 00:00:00 5% accepted Starting job process execution.\n", - "[2021-10-13 16:53:05] INFO [weaver.datatype.Job] 00:00:00 5% accepted Following updates could take a while until the Application Package answers...\n", - "[2021-10-13 16:53:08] DEBUG [weaver.datatype.Job] 00:00:03 6% accepted Updated job status location: [/data/wps_outputs/weaver/a4994551-4799-461a-a7bb-1e91aeace32c.xml].\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 7% running Starting monitoring of job execution.\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 8% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 1% running Preparing package logs done.\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 11% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 2% running Launching package...\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 15% running [2021-10-13 16:53:05] WARNING [weaver.processes.wps_package.ncdump] Visible application CWL euid:egid [0:0]\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 19% running [2021-10-13 16:53:05] INFO [cwltool] Resolved '/tmp/tmph0rfrr_e/ncdump' to 'file:///tmp/tmph0rfrr_e/ncdump'\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 23% running [2021-10-13 16:53:05] INFO [cwltool] ../../../../tmp/tmph0rfrr_e/ncdump:1:1: Unknown hint file:///tmp/tmph0rfrr_e/WPS1Requirement\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 27% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 5% running Loading package content done.\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 30% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 6% running Retrieve package inputs done.\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 34% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 8% running Convert package inputs done.\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 38% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 10% running Running package...\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 42% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 10% running Preparing to launch package ncdump.\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 46% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] WPS-1 Package resolved from requirement/hint: WPS1Requirement\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 50% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 11% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - Preparing execute request for remote WPS1 provider.\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 53% running [2021-10-13 16:53:05] INFO [weaver.processes.wps_package.ncdump] 14% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - Executing job on remote WPS1 provider.\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 57% running [2021-10-13 16:53:06] INFO [weaver.processes.wps_package.ncdump] 18% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - Monitoring job on remote WPS1 provider : [https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird]\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 61% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 18% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - 0% accepted PyWPS Process ncdump accepted\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 65% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 86% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - 100% succeeded PyWPS Process NCDump finished\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 69% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 86% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - Fetching job outputs from remote WPS1 provider.\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 73% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 95% succeeded https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - Execution on remote WPS1 provider completed.\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 76% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 95% running Package execution done.\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 80% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 95% running Nothing captured from internal application logs.\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 84% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] Resolved WPS output [output] as file reference: [/tmp/wps_workdir/weaver/pywps_process_8w98i2h5/output.txt]\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 88% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 98% running Generate package outputs done.\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 92% running [2021-10-13 16:53:08] INFO [weaver.processes.wps_package.ncdump] 100% succeeded Package complete.\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 96% succeeded Job succeeded (status: Package complete.).\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 98% succeeded Job succeeded.\n", - "[2021-10-13 16:53:08] INFO [weaver.datatype.Job] 00:00:03 100% succeeded Job task complete.\n" + "[2021-10-14 17:28:34] INFO [weaver.datatype.Job] 00:00:00 1% accepted Job task setup completed.\n", + "[2021-10-14 17:28:34] DEBUG [weaver.datatype.Job] 00:00:00 2% accepted Employed WPS URL: [https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird]\n", + "[2021-10-14 17:28:34] INFO [weaver.datatype.Job] 00:00:00 2% accepted Execute WPS request for process [ncdump]\n", + "[2021-10-14 17:28:35] INFO [weaver.datatype.Job] 00:00:00 3% accepted Fetching job input definitions.\n", + "[2021-10-14 17:28:35] INFO [weaver.datatype.Job] 00:00:00 4% accepted Fetching job output definitions.\n", + "[2021-10-14 17:28:35] INFO [weaver.datatype.Job] 00:00:00 5% accepted Starting job process execution.\n", + "[2021-10-14 17:28:35] INFO [weaver.datatype.Job] 00:00:00 5% accepted Following updates could take a while until the Application Package answers...\n", + "[2021-10-14 17:28:38] DEBUG [weaver.datatype.Job] 00:00:03 6% accepted Updated job status location: [/data/wps_outputs/weaver/3d1e5b91-6cde-49ee-a607-222b9a857546.xml].\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 7% running Starting monitoring of job execution.\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 8% running [2021-10-14 17:28:35] INFO [weaver.processes.wps_package.ncdump] 1% running Preparing package logs done.\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 11% running [2021-10-14 17:28:35] INFO [weaver.processes.wps_package.ncdump] 2% running Launching package...\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 15% running [2021-10-14 17:28:35] WARNING [weaver.processes.wps_package.ncdump] Visible application CWL euid:egid [0:0]\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 19% running [2021-10-14 17:28:35] INFO [cwltool] Resolved '/tmp/tmp44_7wb_h/ncdump' to 'file:///tmp/tmp44_7wb_h/ncdump'\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 23% running [2021-10-14 17:28:35] INFO [cwltool] ../../../../tmp/tmp44_7wb_h/ncdump:1:1: Unknown hint file:///tmp/tmp44_7wb_h/WPS1Requirement\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 27% running [2021-10-14 17:28:35] INFO [weaver.processes.wps_package.ncdump] 5% running Loading package content done.\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 30% running [2021-10-14 17:28:35] INFO [weaver.processes.wps_package.ncdump] 6% running Retrieve package inputs done.\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 34% running [2021-10-14 17:28:35] INFO [weaver.processes.wps_package.ncdump] 8% running Convert package inputs done.\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 38% running [2021-10-14 17:28:35] INFO [weaver.processes.wps_package.ncdump] 10% running Running package...\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 42% running [2021-10-14 17:28:35] INFO [weaver.processes.wps_package.ncdump] 10% running Preparing to launch package ncdump.\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 46% running [2021-10-14 17:28:35] INFO [weaver.processes.wps_package.ncdump] WPS-1 Package resolved from requirement/hint: WPS1Requirement\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 50% running [2021-10-14 17:28:35] INFO [weaver.processes.wps_package.ncdump] 11% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - Preparing execute request for remote WPS1 provider.\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 53% running [2021-10-14 17:28:35] INFO [weaver.processes.wps_package.ncdump] 14% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - Executing job on remote WPS1 provider.\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 57% running [2021-10-14 17:28:36] INFO [weaver.processes.wps_package.ncdump] 18% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - Monitoring job on remote WPS1 provider : [https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird]\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 61% running [2021-10-14 17:28:38] INFO [weaver.processes.wps_package.ncdump] 18% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - 0% accepted PyWPS Process ncdump accepted\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 65% running [2021-10-14 17:28:38] INFO [weaver.processes.wps_package.ncdump] 86% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - 100% succeeded PyWPS Process NCDump finished\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 69% running [2021-10-14 17:28:38] INFO [weaver.processes.wps_package.ncdump] 86% running https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - Fetching job outputs from remote WPS1 provider.\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 73% running [2021-10-14 17:28:38] INFO [weaver.processes.wps_package.ncdump] 95% succeeded https://pavics.ouranos.ca/twitcher/ows/proxy/hummingbird [ncdump] - Execution on remote WPS1 provider completed.\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 76% running [2021-10-14 17:28:38] INFO [weaver.processes.wps_package.ncdump] 95% running Package execution done.\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 80% running [2021-10-14 17:28:38] INFO [weaver.processes.wps_package.ncdump] 95% running Nothing captured from internal application logs.\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 84% running [2021-10-14 17:28:38] INFO [weaver.processes.wps_package.ncdump] Resolved WPS output [output] as file reference: [/tmp/wps_workdir/weaver/pywps_process__cj5gwx0/output.txt]\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 88% running [2021-10-14 17:28:38] INFO [weaver.processes.wps_package.ncdump] 98% running Generate package outputs done.\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 92% running [2021-10-14 17:28:38] INFO [weaver.processes.wps_package.ncdump] 100% succeeded Package complete.\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 96% succeeded Job succeeded (status: Package complete.).\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 98% succeeded Job succeeded.\n", + "[2021-10-14 17:28:38] INFO [weaver.datatype.Job] 00:00:03 100% succeeded Job task complete.\n" ] } ], "source": [ + "# NBVAL_IGNORE_OUTPUT\n", + "# ignore variable logs values that could easily change, only informative\n", + "\n", "print(\"Obtaining job logs from execution...\")\n", "\n", "path = f\"{status_location}/logs\"\n", @@ -1094,6 +1104,8 @@ "log_lines = \"\\n\".join(logs)\n", "print(f\"Job logs retrieved from [{path}]:\\n\\n{log_lines}\")\n", "\n", + "assert len(logs) > 1\n", + "assert \"100%\" in logs[-1] and \"succeeded\" in logs[-1]\n", "assert status == \"succeeded\", \"Job execution was not successful\"\n" ] }, @@ -1111,7 +1123,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 22, "metadata": { "collapsed": false, "jupyter": { @@ -1128,19 +1140,91 @@ "text": [ "\n", "Job was successful! Retrieving result location...\n", - "Result is located at: [https://pavics.ouranos.ca/wpsoutputs/weaver/a4994551-4799-461a-a7bb-1e91aeace32c/output.txt]\n", + "Result is located at: [https://pavics.ouranos.ca/wpsoutputs/weaver/3d1e5b91-6cde-49ee-a607-222b9a857546/output.txt]\n", "\n", "Fetching output contents...\n", "\n", "NCDUMP 'output' result content:\n", "\n", - "\n", - "404 Not Found\n", - "\n", - "

404 Not Found

\n", - "
nginx/1.13.6
\n", - "\n", - "\n", + "netcdf ta_Amon_MRI-CGCM3_decadal1980_r1i1p1_199101-200012.nc {\n", + "dimensions:\n", + "\ttime = UNLIMITED ; // (120 currently)\n", + "\tbnds = 2 ;\n", + "\tlat = 160 ;\n", + "\tlon = 320 ;\n", + "\tplev = 23 ;\n", + "variables:\n", + "\tdouble time(time) ;\n", + "\t\ttime:bounds = \"time_bnds\" ;\n", + "\t\ttime:units = \"days since 1981-01-01\" ;\n", + "\t\ttime:calendar = \"standard\" ;\n", + "\t\ttime:axis = \"T\" ;\n", + "\t\ttime:long_name = \"time\" ;\n", + "\t\ttime:standard_name = \"time\" ;\n", + "\tdouble time_bnds(time, bnds) ;\n", + "\tdouble plev(plev) ;\n", + "\t\tplev:units = \"Pa\" ;\n", + "\t\tplev:axis = \"Z\" ;\n", + "\t\tplev:positive = \"down\" ;\n", + "\t\tplev:long_name = \"pressure\" ;\n", + "\t\tplev:standard_name = \"air_pressure\" ;\n", + "\tdouble lat(lat) ;\n", + "\t\tlat:bounds = \"lat_bnds\" ;\n", + "\t\tlat:units = \"degrees_north\" ;\n", + "\t\tlat:axis = \"Y\" ;\n", + "\t\tlat:long_name = \"latitude\" ;\n", + "\t\tlat:standard_name = \"latitude\" ;\n", + "\tdouble lat_bnds(lat, bnds) ;\n", + "\tdouble lon(lon) ;\n", + "\t\tlon:bounds = \"lon_bnds\" ;\n", + "\t\tlon:units = \"degrees_east\" ;\n", + "\t\tlon:axis = \"X\" ;\n", + "\t\tlon:long_name = \"longitude\" ;\n", + "\t\tlon:standard_name = \"longitude\" ;\n", + "\tdouble lon_bnds(lon, bnds) ;\n", + "\tfloat ta(time, plev, lat, lon) ;\n", + "\t\tta:standard_name = \"air_temperature\" ;\n", + "\t\tta:long_name = \"Air Temperature\" ;\n", + "\t\tta:units = \"K\" ;\n", + "\t\tta:original_name = \"T\" ;\n", + "\t\tta:cell_methods = \"time: mean (interval: 30 minutes)\" ;\n", + "\t\tta:cell_measures = \"area: areacella\" ;\n", + "\t\tta:history = \"2011-08-12T05:05:34Z altered by CMOR: replaced missing value flag (-9.99e+33) with standard missing value (1e+20).\" ;\n", + "\t\tta:missing_value = 1.e+20f ;\n", + "\t\tta:_FillValue = 1.e+20f ;\n", + "\t\tta:associated_files = \"baseURL: http://cmip-pcmdi.llnl.gov/CMIP5/dataLocation gridspecFile: gridspec_atmos_fx_MRI-CGCM3_decadal1980_r0i0p0.nc areacella: areacella_fx_MRI-CGCM3_decadal1980_r0i0p0.nc\" ;\n", + "\n", + "// global attributes:\n", + "\t\t:institution = \"MRI (Meteorological Research Institute, Tsukuba, Japan)\" ;\n", + "\t\t:institute_id = \"MRI\" ;\n", + "\t\t:experiment_id = \"decadal1980\" ;\n", + "\t\t:source = \"MRI-CGCM3 2011 atmosphere: GSMUV (gsmuv-110112, TL159L48); ocean: MRI.COM3 (MRICOM-3_0-20101116, 1x0.5L51); sea ice: MRI.COM3; land: HAL (HAL_cmip5_v0.31_04); aerosol: MASINGAR-mk2 (masingar_mk2-20110111_0203, TL95L48)\" ;\n", + "\t\t:model_id = \"MRI-CGCM3\" ;\n", + "\t\t:forcing = \"GHG, SA, Oz, LU, Sl, Vl, BC, OC (GHG includes CO2, CH4, N2O, CFC-11, CFC-12, and HCFC-22)\" ;\n", + "\t\t:parent_experiment_id = \"N/A\" ;\n", + "\t\t:parent_experiment_rip = \"N/A\" ;\n", + "\t\t:branch_time = 0. ;\n", + "\t\t:contact = \"Seiji Yukimoto (yukimoto@mri-jma.go.jp)\" ;\n", + "\t\t:history = \"Output from /sharex3/cmip5/decadal1980/run-C3_decadal1980_01a/grads/atm_avr_mon.ctl 2011-08-12T05:05:34Z CMOR rewrote data to comply with CF standards and CMIP5 requirements.\" ;\n", + "\t\t:references = \"Model described by Yukimoto et al. (Technical Report of the Meteorological Research Institute, 2011, 64, 83pp.)\" ;\n", + "\t\t:initialization_method = 1 ;\n", + "\t\t:physics_version = 1 ;\n", + "\t\t:tracking_id = \"ce91e727-5f22-44fc-b24d-5bb53393ac69\" ;\n", + "\t\t:product = \"output\" ;\n", + "\t\t:experiment = \"10- or 30-year run initialized in year 1980\" ;\n", + "\t\t:frequency = \"mon\" ;\n", + "\t\t:creation_date = \"2011-08-12T05:05:34Z\" ;\n", + "\t\t:Conventions = \"CF-1.4\" ;\n", + "\t\t:project_id = \"CMIP5\" ;\n", + "\t\t:table_id = \"Table Amon (26 July 2011) 976b7fd1d9e1be31dddd28f5dc79b7a1\" ;\n", + "\t\t:title = \"MRI-CGCM3 model output prepared for CMIP5 10- or 30-year run initialized in year 1980\" ;\n", + "\t\t:parent_experiment = \"N/A\" ;\n", + "\t\t:modeling_realm = \"atmos\" ;\n", + "\t\t:realization = 1 ;\n", + "\t\t:cmor_version = \"2.7.1\" ;\n", + "\t\t:DODS_EXTRA.Unlimited_Dimension = \"time\" ;\n", + "}\n", + "\n", "\n" ] } @@ -1162,6 +1246,7 @@ "href = output[\"href\"]\n", "assert isinstance(href, str) and href.startswith(WEAVER_TEST_WPS_OUTPUTS), f\"Output result location does not have expected reference format: [{href}]\"\n", "print(f\"Result is located at: [{href}]\\n\")\n", + "assert href.endswith(\"output.txt\")\n", "\n", "print(\"Fetching output contents...\")\n", "resp = requests.get(href)\n",