repos: don't mirror to an archived GitHub repository

The github.com/golang/gddo repository was archived on GitHub as part
of redirecting godoc.org requests to pkg.go.dev¹, to make it more
visible that it doesn't accept new contributions. Mirroring to an
archived repository on GitHub fails with an error, so don't try to.

¹ https://blog.golang.org/godoc.org-redirect

Change-Id: I648bccf8edc6f034eaa2ea3b2ced6c505473c22c
Reviewed-on: https://go-review.googlesource.com/c/build/+/289699
Trust: Dmitri Shuralyov <dmitshur@golang.org>
Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Alexander Rakoczy <alex@golang.org>
diff --git a/repos/repos.go b/repos/repos.go
index 8c94455..d96a976 100644
--- a/repos/repos.go
+++ b/repos/repos.go
@@ -56,7 +56,7 @@
 func init() {
 	addMirrored("go", coordinatorCanBuild, noDash)
 	addMirrored("dl", importPath("golang.org/dl"), coordinatorCanBuild)
-	addMirrored("gddo", importPath("github.com/golang/gddo"))
+	addMirrored("gddo", importPath("github.com/golang/gddo"), archivedOnGitHub)
 	addMirrored("gofrontend")
 	addMirrored("proposal")
 	addMirrored("sublime-build")
@@ -120,6 +120,12 @@
 
 func coordinatorCanBuild(r *Repo) { r.CoordinatorCanBuild = true }
 
+func archivedOnGitHub(r *Repo) {
+	// When a repository is archived on GitHub, trying to push
+	// to it will fail. So don't mirror.
+	r.MirrorToGitHub = false
+}
+
 func importPath(v string) modifyRepo { return func(r *Repo) { r.ImportPath = v } }
 
 func desc(v string) modifyRepo { return func(r *Repo) { r.WebsiteDesc = v } }