-
Notifications
You must be signed in to change notification settings - Fork 21
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
Run OPTIMADE validator for Netlify PR instance #57
Run OPTIMADE validator for Netlify PR instance #57
Conversation
76cddf1
to
9a980f3
Compare
Now it seems this PR is blocked by Materials-Consortia/optimade-python-tools#659. |
The new error about missing provider prefixes should strongly encourage you to review and merge Materials-Consortia/optimade-python-tools#659 😁 |
Right, so the new error is because netlify has a rich 404 page that doesn't have any JSON... |
Looking again at this, the validator itself runs correctly for the versioned URL without any changes; since the HTML 404 page still returns the expected 404 status code (duh), no attempt is made to deserialize to JSON in the validator, so the PR 665 linked above isn't super necessary (though it might be nice to have to give a more instructive error message when the 404 isn't expected). The problem here is that the validator action is taking the versioned URL as the base URL and is appending another version to it. You can see in the logs that the first validation goes fine, but the second fails. I think this should be clarified in the validator action and will raise an issue there. |
|
7069f65
to
eed504a
Compare
Add path: `/`
The current reason for the validator failing is a real reason. Issue #58 has been opened to track this. |
32d514e
to
88b0780
Compare
Target `/v1/`.
This should encompass the build time
I.e., between the scheduled validation and the CI validation.
I have now done stuff. Instead I have now separated the actual OPTIMADE validator tests into a separate workflow, which tests the Netlify deployed preview, both the list of providers index meta-db, as well as the locally hosted index meta-dbs. Then the existing validation (pytest run) still runs for all PRs and all pushes. But I'm pretty sure the pytests are running similar tests as the OPTIMADE validator is running. So I'm suspecting we should simply remove it. But as I'm not 100 % sure, I'd rather do an all-in at this point. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, nice one @CasperWA.
I think its fine to keep the sanity checks in for now (mostly as a sanity check for the validator itself). It's a shame the wait-for-it hasn't been turned into an action yet!
Actually, I haven't even checked. There might be something. But yeah, otherwise it could be a procrastination project 😅 |
I had a quick look but couldn't see anything, surprising given how widely that script is used |
Yeah! Okay. Well, I might set up something then. After hours :) |
Use the OPTIMADE validator GitHub Action on the Netlify instance created for a PR to validate the providers as an index meta-database.
To do:
Possibly also test all externally hosted index meta-databases.