in src/guclimate/requests/cli.py [0:0]
def new_request():
chosen_template = inquirer.list_input(
message="Which data would you like to request?",
choices=[
(
"Anomaly data from the 'ecv-for-climate-change' dataset",
"anomalies",
),
(
"Monthly means from the 'ecv-for-climate-changes' dataset",
"monthly-means",
),
],
)
if chosen_template == "anomalies":
request = ecv.anomlies()
elif chosen_template == "monthly-means":
request = ecv.monthly_means()
request.print()
confirm = inquirer.confirm(
message="Would you like to submit this request?",
)
if not confirm:
return
try:
client = ApiClient(progress=False)
client.submit(collection_id=request.product, request=request.params)
ui.success("Request submitted to CDS.", after="\n\n")
print(
f"You can view and download requests using {
ui.color('blue', 'guclimate requests list')},"
+ " or at https://cds.climate.copernicus.eu/requests.\n"
)
except requests.HTTPError as err:
response = err.response.json()
ui.error("Request rejected by CDS. Here's what they said:")
print('"' + response["detail"] + '"')
except Exception as err:
ui.error("Request unexpectedly failed.")
print(err)