Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(providers): wekeo split to wekeo_main and wekeo_ecmwf #1214

Merged
merged 19 commits into from
Aug 9, 2024
Merged
Show file tree
Hide file tree
Changes from 15 commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
cbb037c
fix: add authentication for queryables discovery
anesson-cs Jun 14, 2024
dd0ee73
feat: add logs when queryables discovery with 'StacSearch' plugin is …
anesson-cs Jun 14, 2024
7c118d8
feat: split wekeo provider into two providers
anesson-cs Jun 14, 2024
a8f12b9
test: adapt all necessary tests to the two new providers
anesson-cs Jun 14, 2024
2a5bed2
docs: update some tutorials
anesson-cs Jun 14, 2024
96f8264
fix: remove useless parameter in 'wekeo_ecmwf' configuration
anesson-cs Jun 14, 2024
de9c5a4
fix: add 'MARK' comment on wekeo_cmems provider configuration
anesson-cs Jun 17, 2024
cf77299
fix: make product types fetching and discovery works for grouped prov…
anesson-cs Jun 21, 2024
136307d
test: update and add tests for grouped providers
anesson-cs Jun 21, 2024
ba1308f
fix: change the name of 'wekeo_sentinel' to 'wekeo_main''
anesson-cs Jun 24, 2024
7bb4b4b
docs: complete description of wekeo provider
anesson-cs Jun 24, 2024
4502e9b
test: fix end to end test of wekeo_main provider
anesson-cs Jun 24, 2024
579d98f
test: add tests on the new search plugin created for wekeo_main
anesson-cs Jun 25, 2024
65d78cc
test: add checks about wekeo providers on two tests
anesson-cs Jun 25, 2024
b04b3e9
docs: update a notebook after the rebase
anesson-cs Aug 2, 2024
a0a3c41
refactor(core): product types fetch for groups
sbrunato Aug 8, 2024
9b42aaf
refactor: docs and tests
sbrunato Aug 8, 2024
f2d6d41
docs: fix plugins table
sbrunato Aug 8, 2024
32a4b05
docs: pruned providers notification
sbrunato Aug 9, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
486 changes: 243 additions & 243 deletions docs/_static/product_types_information.csv

Large diffs are not rendered by default.

3 changes: 2 additions & 1 deletion docs/getting_started_guide/providers.rst
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,8 @@ Products from the following providers are made avaiable through ``eodag``:
* `cop_dataspace <https://dataspace.copernicus.eu/>`_: Copernicus Data Space
* `planetary_computer <https://planetarycomputer.microsoft.com/>`_: Microsoft Planetary Computer
* `hydroweb_next <https://hydroweb.next.theia-land.fr>`_: hydroweb.next thematic hub for hydrology data access
* `wekeo <https://www.wekeo.eu>`_: WEkEO Copernicus and Sentinel data
* `wekeo_main <https://www.wekeo.eu/>`_: WEkEO Sentinel and some various Copernicus data
sbrunato marked this conversation as resolved.
Show resolved Hide resolved
* `wekeo_ecmwf <https://www.wekeo.eu/>`_: WEkEO ECMWF data
* `wekeo_cmems <https://www.wekeo.eu>`_: Copernicus Marine (CMEMS) data from WEkEO
* `dedt_lumi <https://polytope.lumi.apps.dte.destination-earth.eu/openapi>`_: DestinE Digital Twin output on Lumi
* `dedl <https://hda.data.destination-earth.eu/ui>`_: Destination Earth Data Lake (DEDL)
Expand Down
6 changes: 4 additions & 2 deletions docs/getting_started_guide/register.rst
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ to each provider supported by ``eodag``:

* ``earth_search_cog``: no authentication needed.

* ``wekeo``: you need an access token to authenticate and to accept terms and conditions with it:
* ``wekeo_main``: you need an access token to authenticate and to accept terms and conditions with it:

* Create an account on `WEkEO <https://www.wekeo.eu/register>`__

Expand Down Expand Up @@ -150,7 +150,9 @@ to each provider supported by ``eodag``:
* Copernicus_DEM_Instance_COP-DEM-GLO-30-F_Global_30m
* Copernicus_DEM_Instance_COP-DEM-GLO-90-F_Global_90m

* ``wekeo_cmems``: The registration procedure is the same as for ``wekeo``. The licence that has to be accepted to access the Copernicus Marine data is ``Copernicus_Marine_Service_Product_License``.
* ``wekeo_ecmwf``: The registration procedure is the same as for ``wekeo_main``.

* ``wekeo_cmems``: The registration procedure is the same as for ``wekeo_main``. The licence that has to be accepted to access the Copernicus Marine data is ``Copernicus_Marine_Service_Product_License``.

* ``dedt_lumi``: Create an account on `DestinE <https://platform.destine.eu/>`__, then use your `username`, `password` in eodag credentials.

Expand Down
2 changes: 1 addition & 1 deletion docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ types (Sentinel 1, Sentinel 2, Sentinel 3, Landsat, etc.) that can be searched a
`cop_dataspace <https://dataspace.copernicus.eu/>`_,
`planetary_computer <https://planetarycomputer.microsoft.com/>`_,
`hydroweb_next <https://hydroweb.next.theia-land.fr>`_,
`wekeo <https://www.wekeo.eu/>`_,
`wekeo_main <https://www.wekeo.eu/>`_, `wekeo_ecmwf <https://www.wekeo.eu/>`_,
`wekeo_cmems <https://www.wekeo.eu>`_,
`dedt_lumi <https://polytope.lumi.apps.dte.destination-earth.eu/openapi>`_,
`dedl <https://hda.data.destination-earth.eu/ui>`_,
Expand Down
158 changes: 117 additions & 41 deletions docs/notebooks/api_user_guide/2_providers_products_available.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
Expand Down Expand Up @@ -39,31 +39,33 @@
{
"data": {
"text/plain": [
"['dedl',\n",
" 'dedt_lumi',\n",
" 'peps',\n",
"['peps',\n",
" 'astraea_eod',\n",
" 'aws_eos',\n",
" 'cop_ads',\n",
" 'cop_cds',\n",
" 'cop_dataspace',\n",
" 'cop_marine',\n",
" 'creodias',\n",
" 'creodias_s3',\n",
" 'dedt_lumi',\n",
" 'earth_search',\n",
" 'earth_search_cog',\n",
" 'earth_search_gcs',\n",
" 'ecmwf',\n",
" 'eumetsat_ds',\n",
" 'hydroweb_next',\n",
" 'meteoblue',\n",
" 'onda',\n",
" 'planetary_computer',\n",
" 'sara',\n",
" 'theia',\n",
" 'usgs',\n",
" 'usgs_satapi_aws',\n",
" 'wekeo',\n",
" 'wekeo_cmems']"
" 'wekeo_cmems',\n",
" 'wekeo_ecmwf',\n",
" 'wekeo_main',\n",
" 'creodias_s3',\n",
" 'dedl',\n",
" 'usgs']"
]
},
"execution_count": 2,
Expand All @@ -85,7 +87,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
"eodag has 22 providers already configured.\n"
"eodag has 27 providers already configured.\n"
]
}
],
Expand All @@ -108,18 +110,19 @@
{
"data": {
"text/plain": [
"['astraea_eod',\n",
"['peps',\n",
" 'astraea_eod',\n",
" 'aws_eos',\n",
" 'cop_dataspace',\n",
" 'creodias',\n",
" 'creodias_s3',\n",
" 'earth_search',\n",
" 'earth_search_gcs',\n",
" 'onda',\n",
" 'peps',\n",
" 'sara',\n",
" 'usgs',\n",
" 'wekeo']"
" 'wekeo_main',\n",
" 'creodias_s3',\n",
" 'dedl',\n",
" 'usgs']"
]
},
"execution_count": 4,
Expand Down Expand Up @@ -160,14 +163,14 @@
},
{
"cell_type": "code",
"execution_count": 3,
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"EODAG has 245 product types stored in its internal catalog.\n"
"EODAG has 247 product types stored in its internal catalog.\n"
]
}
],
Expand All @@ -181,11 +184,18 @@
"execution_count": 6,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Could not authenticate on dedl: ('Could not authenticate user with provider dedl.', 'Please verify your credentials')\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"EODAG has 414 product types stored in its extended catalog, after having fetched providers.\n"
"EODAG has 1431 product types stored in its extended catalog, after having fetched providers.\n"
]
}
],
Expand All @@ -210,7 +220,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
"list_product_types() keeps returning 414 product types.\n"
"list_product_types() keeps returning 1431 product types.\n"
]
}
],
Expand All @@ -227,18 +237,18 @@
{
"data": {
"text/plain": [
"{'ID': 'CAMS_EAC4',\n",
" 'abstract': 'EAC4 (ECMWF Atmospheric Composition Reanalysis 4) is the fourth generation ECMWF global reanalysis of atmospheric composition. Reanalysis combines model data with observations from across the world into a globally complete and consistent dataset using a model of the atmosphere based on the laws of physics and chemistry.\\nThis principle, called data assimilation, is based on the method used by numerical weather prediction centres and air quality forecasting centres, where every so many hours (12 hours at ECMWF) a previous forecast is combined with newly available observations in an optimal way to produce a new best estimate of the state of the atmosphere, called analysis, from which an updated, improved forecast is issued.\\nReanalysis works in the same way to allow for the provision of a dataset spanning back more than a decade.\\nReanalysis does not have the constraint of issuing timely forecasts, so there is more time to collect observations, and when going further back in time, to allow for the ingestion of improved versions of the original observations, which all benefit the quality of the reanalysis product.\\nThe assimilation system is able to estimate biases between observations and to sift good-quality data from poor data.\\nThe atmosphere model allows for estimates at locations where data coverage is low or for atmospheric pollutants for which no direct observations are available.\\nThe provision of estimates at each grid point around the globe for each regular output time, over a long period, always using the same format, makes reanalysis a very convenient and popular dataset to work with.\\nThe observing system has changed drastically over time, and although the assimilation system can resolve data holes, the initially much sparser networks will lead to less accurate estimates.\\nFor this reason, EAC4 is only available from 2003 onwards.\\nAlthough the analysis procedure considers chunks of data in a window of 12 hours in one go, EAC4 provides estimates every 3 hours, worldwide. This is made possible by the 4D-Var assimilation method, which takes account of the exact timing of the observations and model evolution within the assimilation window.\\n',\n",
"{'ID': 'AG_ERA5',\n",
" 'abstract': \"This dataset provides daily surface meteorological data for the period from 1979 to present as input for agriculture\\nand agro-ecological studies. This dataset is based on the hourly ECMWF ERA5 data at surface level and is referred to\\nas AgERA5. Acquisition and pre-processing of the original ERA5 data is a complex and specialized job. By providing\\nthe AgERA5 dataset, users are freed from this work and can directly start with meaningful input for their analyses\\nand modelling. To this end, the variables provided in this dataset match the input needs of most agriculture and\\nagro-ecological models.\\nData were aggregated to daily time steps at the local time zone and corrected towards a finer topography at a 0.1°\\nspatial resolution. The correction to the 0.1° grid was realized by applying grid and variable-specific regression\\nequations to the ERA5 dataset interpolated at 0.1° grid. The equations were trained on ECMWF's operational\\nhigh-resolution atmospheric model (HRES) at a 0.1° resolution. This way the data is tuned to the finer topography,\\nfiner land use pattern and finer land-sea delineation of the ECMWF HRES model.\\nThe data was produced on behalf of the Copernicus Climate Change Service.\\n\",\n",
" 'platform': 'ERA5',\n",
" 'instrument': None,\n",
" 'platform': 'CAMS',\n",
" 'platformSerialIdentifier': 'CAMS',\n",
" 'platformSerialIdentifier': 'ERA5',\n",
" 'processingLevel': None,\n",
" 'keywords': 'Copernicus,ADS,CAMS,Atmosphere,Atmospheric,EWMCF,EAC4',\n",
" 'keywords': 'ECMWF,Reanalysis,ERA5,CDS,Atmospheric,climate,land,agriculture,AgERA5,surface',\n",
" 'sensorType': 'ATMOSPHERIC',\n",
" 'license': 'proprietary',\n",
" 'title': 'CAMS global reanalysis (EAC4)',\n",
" 'missionStartDate': '2003-01-01T00:00:00Z',\n",
" '_id': 'CAMS_EAC4'}"
" 'title': 'Agrometeorological indicators from 1979 to present derived from reanalysis',\n",
" 'missionStartDate': '1979-01-01T00:00:00Z',\n",
" '_id': 'AG_ERA5'}"
]
},
"execution_count": 8,
Expand All @@ -258,7 +268,8 @@
{
"data": {
"text/plain": [
"['CAMS_EAC4',\n",
"['AG_ERA5',\n",
" 'CAMS_EAC4',\n",
" 'CAMS_EAC4_MONTHLY',\n",
" 'CAMS_EU_AIR_QUALITY_FORECAST',\n",
" 'CAMS_EU_AIR_QUALITY_RE',\n",
Expand Down Expand Up @@ -291,8 +302,8 @@
" 'COP_DEM_GLO30_DTED',\n",
" 'COP_DEM_GLO90_DGED',\n",
" 'COP_DEM_GLO90_DTED',\n",
" 'EEA_DAILY_SSM_1KM',\n",
" 'EEA_DAILY_SWI_1KM',\n",
" 'DT_CLIMATE_ADAPTATION',\n",
" 'DT_EXTREMES',\n",
" 'EEA_DAILY_VI',\n",
" 'EFAS_FORECAST',\n",
" 'EFAS_HISTORICAL',\n",
Expand All @@ -307,12 +318,12 @@
" 'ERA5_SL_MONTHLY',\n",
" 'FIRE_HISTORICAL',\n",
" 'GLACIERS_DIST_RANDOLPH',\n",
" 'GLACIERS_ELEVATION_AND_MASS_CHANGE',\n",
" 'GLOFAS_FORECAST',\n",
" 'GLOFAS_HISTORICAL',\n",
" 'GLOFAS_REFORECAST',\n",
" 'GLOFAS_SEASONAL',\n",
" 'GLOFAS_SEASONAL_REFORECAST',\n",
" 'GRIDDED_GLACIERS_MASS_CHANGE',\n",
" 'L57_REFLECTANCE',\n",
" 'L8_OLI_TIRS_C1L1',\n",
" 'L8_REFLECTANCE',\n",
Expand All @@ -330,7 +341,69 @@
" 'LANDSAT_TM_C1',\n",
" 'LANDSAT_TM_C2L1',\n",
" 'LANDSAT_TM_C2L2',\n",
" 'METOP_AMSU_L1',\n",
" 'METOP_ASCSZF1B',\n",
" 'METOP_ASCSZFR02',\n",
" 'METOP_ASCSZO1B',\n",
" 'METOP_ASCSZOR02',\n",
" 'METOP_ASCSZR1B',\n",
" 'METOP_ASCSZRR02',\n",
" 'METOP_AVHRRGACR02',\n",
" 'METOP_AVHRRL1',\n",
" 'METOP_GLB_SST_NC',\n",
" 'METOP_GOMEL1',\n",
" 'METOP_GOMEL1R03',\n",
" 'METOP_HIRSL1',\n",
" 'METOP_IASIL1C_ALL',\n",
" 'METOP_IASSND02',\n",
" 'METOP_IASTHR011',\n",
" 'METOP_LSA_002',\n",
" 'METOP_MHSL1',\n",
" 'METOP_OSI_104',\n",
" 'METOP_OSI_150A',\n",
" 'METOP_OSI_150B',\n",
" 'METOP_SOMO12',\n",
" 'METOP_SOMO25',\n",
" 'MODIS_MCD43A4',\n",
" 'MO_GLOBAL_ANALYSISFORECAST_BGC_001_028',\n",
" 'MO_GLOBAL_ANALYSISFORECAST_PHY_001_024',\n",
" 'MO_GLOBAL_ANALYSISFORECAST_WAV_001_027',\n",
" 'MO_GLOBAL_MULTIYEAR_BGC_001_033',\n",
" 'MO_GLOBAL_MULTIYEAR_PHY_ENS_001_031',\n",
" 'MO_GLOBAL_MULTIYEAR_WAV_001_032',\n",
" 'MO_INSITU_GLO_PHY_TS_OA_MY_013_052',\n",
" 'MO_INSITU_GLO_PHY_TS_OA_NRT_013_002',\n",
" 'MO_INSITU_GLO_PHY_UV_DISCRETE_NRT_013_048',\n",
" 'MO_MULTIOBS_GLO_BGC_NUTRIENTS_CARBON_PROFILES_MYNRT_015_009',\n",
" 'MO_MULTIOBS_GLO_BIO_BGC_3D_REP_015_010',\n",
" 'MO_MULTIOBS_GLO_BIO_CARBON_SURFACE_REP_015_008',\n",
" 'MO_MULTIOBS_GLO_PHY_MYNRT_015_003',\n",
" 'MO_MULTIOBS_GLO_PHY_S_SURFACE_MYNRT_015_013',\n",
" 'MO_MULTIOBS_GLO_PHY_TSUV_3D_MYNRT_015_012',\n",
" 'MO_MULTIOBS_GLO_PHY_W_3D_REP_015_007',\n",
" 'MO_OCEANCOLOUR_GLO_BGC_L3_MY_009_103',\n",
" 'MO_OCEANCOLOUR_GLO_BGC_L3_MY_009_107',\n",
" 'MO_OCEANCOLOUR_GLO_BGC_L3_NRT_009_101',\n",
" 'MO_OCEANCOLOUR_GLO_BGC_L4_MY_009_104',\n",
" 'MO_OCEANCOLOUR_GLO_BGC_L4_MY_009_108',\n",
" 'MO_OCEANCOLOUR_GLO_BGC_L4_NRT_009_102',\n",
" 'MO_SEAICE_GLO_SEAICE_L4_NRT_OBSERVATIONS_011_001',\n",
" 'MO_SEAICE_GLO_SEAICE_L4_NRT_OBSERVATIONS_011_006',\n",
" 'MO_SEAICE_GLO_SEAICE_L4_REP_OBSERVATIONS_011_009',\n",
" 'MO_SEALEVEL_GLO_PHY_L4_NRT_008_046',\n",
" 'MO_SEALEVEL_GLO_PHY_MDT_008_063',\n",
" 'MO_SST_GLO_SST_L3S_NRT_OBSERVATIONS_010_010',\n",
" 'MO_SST_GLO_SST_L4_NRT_OBSERVATIONS_010_001',\n",
" 'MO_SST_GLO_SST_L4_REP_OBSERVATIONS_010_011',\n",
" 'MO_SST_GLO_SST_L4_REP_OBSERVATIONS_010_024',\n",
" 'MO_WAVE_GLO_PHY_SWH_L3_NRT_014_001',\n",
" 'MO_WAVE_GLO_PHY_SWH_L4_NRT_014_003',\n",
" 'MO_WAVE_GLO_WAV_L3_SPC_NRT_OBSERVATIONS_014_002',\n",
" 'MO_WIND_GLO_PHY_CLIMATE_L4_MY_012_003',\n",
" 'MO_WIND_GLO_PHY_L3_MY_012_005',\n",
" 'MO_WIND_GLO_PHY_L3_NRT_012_002',\n",
" 'MO_WIND_GLO_PHY_L4_MY_012_006',\n",
" 'MO_WIND_GLO_PHY_L4_NRT_012_004',\n",
" 'NAIP',\n",
" 'NEMSAUTO_TCDC',\n",
" 'NEMSGLOBAL_TCDC',\n",
Expand All @@ -356,13 +429,15 @@
" 'S3_ERR',\n",
" 'S3_ERR_BC002',\n",
" 'S3_LAN',\n",
" 'S3_LAN_HY',\n",
" 'S3_LAN_LI',\n",
" 'S3_LAN_SI',\n",
" 'S3_OLCI_L2LFR',\n",
" 'S3_OLCI_L2LRR',\n",
" 'S3_OLCI_L2WFR',\n",
" 'S3_OLCI_L2WFR_BC003',\n",
" 'S3_OLCI_L2WRR',\n",
" 'S3_OLCI_L2WRR_BC003',\n",
" 'S3_OLCI_L4BALTIC',\n",
" 'S3_RAC',\n",
" 'S3_SLSTR_L1RBT',\n",
" 'S3_SLSTR_L1RBT_BC003',\n",
Expand Down Expand Up @@ -390,7 +465,7 @@
" 'S3_WAT',\n",
" 'S3_WAT_BC004',\n",
" 'S3_WAT_BC005',\n",
" 'S5P_L1B2_IR_ALL',\n",
" 'S5P_L1B_IR_ALL',\n",
" 'S5P_L1B_IR_SIR',\n",
" 'S5P_L1B_IR_UVN',\n",
" 'S5P_L1B_RA_BD1',\n",
Expand All @@ -407,6 +482,7 @@
" 'S5P_L2_CLOUD',\n",
" 'S5P_L2_CO',\n",
" 'S5P_L2_HCHO',\n",
" 'S5P_L2_IR_ALL',\n",
" 'S5P_L2_NO2',\n",
" 'S5P_L2_NP_BD3',\n",
" 'S5P_L2_NP_BD6',\n",
Expand All @@ -415,15 +491,15 @@
" 'S5P_L2_O3_PR',\n",
" 'S5P_L2_O3_TCL',\n",
" 'S5P_L2_SO2',\n",
" 'S6_AMR_L2_F06',\n",
" 'S6_P4_L1AHR_F06',\n",
" 'S6_P4_L1BAHR_F06',\n",
" 'S6_P4_L1BLR_F06',\n",
" 'S6_P4_L2HR_F06',\n",
" 'S6_P4_L2LR_F06',\n",
" 'SATELLITE_CARBON_DIOXIDE',\n",
" 'SATELLITE_FIRE_BURNED_AREA',\n",
" 'SATELLITE_METHANE',\n",
" 'SATELLITE_SEA_ICE_CONCENTRATION',\n",
" 'SATELLITE_SEA_ICE_EDGE_TYPE',\n",
" 'SATELLITE_SEA_ICE_THICKNESS',\n",
" 'SATELLITE_SEA_LEVEL_BLACK_SEA',\n",
" 'SATELLITE_SEA_LEVEL_GLOBAL',\n",
" 'SATELLITE_SEA_LEVEL_MEDITERRANEAN',\n",
" 'SEASONAL_MONTHLY_PL',\n",
" 'SEASONAL_MONTHLY_SL',\n",
" 'SEASONAL_ORIGINAL_PL',\n",
Expand Down Expand Up @@ -502,7 +578,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
"The most common product type is 'S2_MSI_L1C' with 12 providers offering it.\n"
"The most common product type is 'S2_MSI_L1C' with 13 providers offering it.\n"
]
}
],
Expand Down Expand Up @@ -532,7 +608,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
"The provider with the largest number of product types is 'planetary_computer' with 123.\n"
"The provider with the largest number of product types is 'wekeo_cmems' with 699.\n"
]
}
],
Expand Down Expand Up @@ -600,7 +676,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.4"
"version": "3.8.10"
},
"nbsphinx": {
"execute": "always"
Expand Down
Loading
Loading