carpentries / feeds.carpentries.org

A repo to generate dynamic JSON data feeds for The Carpentries
https://feeds.carpentries.org
MIT License
3 stars 2 forks source link

reinstate incubator feed build; parse out the feeds #73

Closed zkamvar closed 1 year ago

zkamvar commented 1 year ago

This reverts commit e66363b0f5f121bb10577067a4523147537ccc70.

@tobyhodges found and fixed the problem:

I think I found and fixed the problem. Someone had added another life cycle stage tag to their lesson repository in the Incubator, but had not removed the old stage tag, and the script was failing because two different life cycle stages were present and it didn’t know how to deal with that. If I can figure out how to edit the script, I will open a PR to update it so that the later life cycle stage is chosen in cases like this (i.e. stable>beta>alpha>pre-alpha)

The API limit exceeded warning is due to us making too many GitHub API requests within an hour, but that's a separate issue.

Note: this will address #71

I've also update the github workflow to run each make command in a separate run, skipping the incubator run if it fails. This will fix #72

maneesha commented 1 year ago

I'm not worried about the API rate limit, as that likely happened because we kept re-trying the failed script. Right now if we add back make incubator and we have lessons with multiple tags, the feed build will fail again.

Would it work to add the the EXIT_STATUS to the other functions in this script?

zkamvar commented 1 year ago

Would it work to add the EXIT_STATUS to the other functions in this script?

It would partially fix the problem. When I added #62, it was to fix a standalone check that checked for missingness. Since missing data would not be adverse for the build, it was okay to throw an EXIT_STATUS. This situation is a bit different because there are multiple entries in a field designed for one, but it still can be fixed.

Ultimately, this could also be addressed by implementing #72.

maneesha commented 1 year ago

We could merge this back but there is a small chance the incubator build could fail again if the repos get mis-tagged, preventing all the other feeds from running. We'd like to avoid this failure especially as we will be short staffed in the coming weeks.

@zkamvar will be checking with @tobyhodges to see if this is a critical feed. If not, we can add it back in after addressing #72

zkamvar commented 1 year ago

Update: when this feed does not run, then the entire JSON feed is removed so it returns a 403, which is currently preventing me from updating the invalid hash table on files.carpentries.org: https://github.com/carpentries/reactables/actions/runs/3659955398/jobs/6186535743

cannot open URL 'https://feeds.carpentries.org/community_lessons.json': HTTP status was '403 Forbidden'

maneesha commented 1 year ago

@zkamvar this is only on the incubator feed, so it will work if that feed fails, but not any other, correct? In that case, I think we can merge this but should still keep #72 open.

zkamvar commented 1 year ago

@zkamvar this is only on the incubator feed, so it will work if that feed fails, but not any other, correct? In that case, I think we can merge this but should still keep #72 open.

Ah good point. Yes, it only skips the incubator feed if it is the one that fails.