18F / ghad

GitHub administration command line tool
Other
21 stars 9 forks source link

repos are getting archived that shouldn't be #29

Open afeld opened 4 years ago

afeld commented 4 years ago

…for some definition of "shouldn't." The script seems to be working as expected, but we have gotten feedback that some repositories that haven't been updated recently still shouldn't be archived. Common examples are example codebases for cloud.gov or login.gov.

Options that come to mind:

Let's do a bit of user research to figure out what the best option would be.

its-a-lisa-at-work commented 4 years ago

@afeld can we make this a little more broad around Repo Archiving? There have been a few folks asking recently asking if certain repos can be un-archived, and I'm not sure if there are questions I should be asking before doing that as an admin, or I should just blindly oblige with their request.

its-a-lisa-at-work commented 4 years ago

@afeld do you plan on answering https://github.com/18F/handbook/pull/1837/files#r379527111 with this update or earlier?

My 2 cents: I would say the caveat is that if you're going to unarchive a repository; you are now responsible for updating the dependencies.

afeld commented 4 years ago

do you plan on answering https://github.com/18F/handbook/pull/1837/files#r379527111 with this update

No, this issue is purely around the automated archiving that ghad's doing.

if you're going to unarchive a repository; you are now responsible for updating the dependencies

I'd say that's true for any non-archived repository (like, not just upon unarchiving), yeah. Should we add to the Handbook page?

adborden commented 4 years ago

Data.gov is also running into this, we have a lot of infrequently touched repos, but it's important that these repos stay un-archived so that we continue to get security alerts for dependencies.

Putting on my :thought_balloon: :tophat: I think https://github.com/18F/ghad/issues/27 is onto something that the owner needs to be notified. BUT, it's not about notifying that an archive happened, it's about notifying the owner that an action needs to be taken and :crossed_fingers: letting a human act before it's archived.

I would write this as:

In order to keep my GSA repositories up to date as per the 90-day GH repo bitrot policy, GH repo owners need to be notified that a repo is stale before the automated archive action takes place.

And what I would love to see (in BDD-style acceptance criteria format):

In other words, I would LOVE if ghad notified me by GH issue (because for active repos, any GH issues should be monitored) that an action needs to be taken. In an ideal world, we'd only have to close the issue as the action, but if we had to make a git commit --allow-empty to reset the timer, that would work too.

So the simplest implementation could be at the T-30 days mark, open an issue on the repo explaining that a commit (or whatever counts as activity) needs to happen or the repo will be archived in 30 days.

afeld commented 3 years ago

Have not been hearing a lot of complaints about this recently, so closing.

bengerman13 commented 3 years ago

cloud.gov frequently runs into this, and we'd prefer to not have this auto-archive happen. For a few reasons, we have many repos that are infrequently updated, but are regularly used. Archiving these has several downsides for us:

This repo references the 18F Open Source Policy as rationale for why it does what it does, be the Open Source Policy says repos should be archived when they're no longer useful, not when they go a certain length of time without being updated

afeld commented 3 years ago

Does the new "Archive repositories…unless they have the MAINTAINED topic" feature solve that problem?

bengerman13 commented 3 years ago

Technically, yes. But we manage over 200 repositories, and don't see any value from the auto-archive function, so putting the burden on us seems backwards to me

adborden commented 3 years ago

FYI Additional conversation in #infrastructure.

Personally, I think the MAINTAINED topic solution isn't ideal but better than the current state. I feel like part of the value of ghad should be providing a notification to teams... "hey, are you still paying attention to dependabot alerts, issues, and new PRs in this repo?". The MAINTAINED topic allows stale repos to exist indefinitely.

I think to @bengerman13 's point, the notification workflow doesn't quite help... unless the timeout was configurable, more like a year. There's still value in getting notified about really stale repositories, no?

bengerman13 commented 3 years ago

There's probably some value in getting notified that a repository looks stale, but:

bengerman13 commented 3 years ago

I'd like to keep this conversation going because this causes us work on a frequent (one or more times per week) basis, and means it's less likely that we'll get security notifications for code currently running on production systems. I'd really like a solution that does not put the burden on cloud.gov, because this functionality was added to our github organization without consultation or even notification. Creating work for our understaffed team to clean it up now seems unreasonable.