Closed zaneselvans closed 2 months ago
In our meeting today we agreed to first stop "successfully publishes to zenodo sandbox" from blocking "we mark a nightly build as successful." This should still let all the data get published, we just won't be able to test the Zenodo interaction until we try to do a manual data release. That's frustrating and fragile but not the end of the world.
Then we will, at some point, think about how to make our data publication process more robust and less dependent on the vagaries of Zenodo's sandbox environment.
@jdangerx who did we deputize to ping the Zenodo folks about this new and exciting behavior?
Nobody yet, are you game to explain the specifics of the failure to them?
If not, I'm happy to dig through the logs to provide a good bug report too.
All that's required to reproduce the failure is:
import requests
import os
import json
token = os.environ["ZENODO_SANDBOX_TOKEN_PUBLISH"]
dude = requests.request(
method="GET",
url="https://sandbox.zenodo.org/api/records/5563",
headers={"Authorization": f"Bearer {token}"},
timeout=5,
)
print(json.dumps(dude.json(), indent=4))
But trying it again now... it works! I guess they heard I was going to send an email and fixed it.
I'll close this issue in the morning if the nightly builds pass.
Zenodo appears to have fixed this problem without intervention from us, as the nightly builds succeeded tonight, so I'll close the issue.
Overview
Everything except the creation of the Zenodo sandbox data release archive succeeded. That step fails with a Pydanic validation error when attempting to create a
_NewRecord
from the JSON that comes from a Zenodo response. It looks like it's getting a server error instead of the expected response, so my guess is this is a problem that originates with Zenodo.This error first appeared on 2024-04-11, but recurred the next time the nightly builds ran, on 2024-04-14.
Next steps
ZENODO_SANDBOX_TOKEN_PUBLISH
for some other purpose. Does that work? If we're able to make new raw data archives then presumably yes, and the most recent test archives are from 2024-04-13._NewRecord
class and failing. Reproducible, but not terribly helpful.However, trying the same thing on the production server seems to work fine, so this seems to be an issue with the Zenodo sandbox server.
Verify that everything is fixed!
Once you've applied any necessary fixes, make sure that the nightly build outputs are all in their right places.
Relevant logs
I get the same behavior very quickly when running the data release script locally: