Repos need to remember where they came from.
Repositories imported from GitLab, Gitea or Forgejo land in the same repositories table as GitHub repos, and the mirror step always attaches the GitHub token no matter what the clone host is. Private repos from other hosts fail, and the GitHub token gets sent to another server. We need a sourceServerId on repositories and the mirror step has to pick clone credentials from that server.
This is what unlocks #221 , and the GitLab, Codeberg and self hosted Forgejo sources asked for in #371 .
**Repos need to remember where they came from.**
Repositories imported from GitLab, Gitea or Forgejo land in the same `repositories` table as GitHub repos, and the mirror step always attaches the GitHub token no matter what the clone host is. Private repos from other hosts fail, and the GitHub token gets sent to another server. We need a `sourceServerId` on repositories and the mirror step has to pick clone credentials from that server.
This is what unlocks #221 , and the GitLab, Codeberg and self hosted Forgejo sources asked for in #371 .
<!-- github-sync-id:5331770092 -->
Shipped in v3.30.0 (#376), one source per user. Repositories record source_provider and source_url, credentials come from that, and both mirror paths refuse a row from a different host. Several sources at once is a separate follow up. Closing, details on #390.
Shipped in v3.30.0 (#376), one source per user. Repositories record source_provider and source_url, credentials come from that, and both mirror paths refuse a row from a different host. Several sources at once is a separate follow up. Closing, details on #390.
<!-- github-comment-id:5522248514 -->
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Repos need to remember where they came from.
Repositories imported from GitLab, Gitea or Forgejo land in the same
repositoriestable as GitHub repos, and the mirror step always attaches the GitHub token no matter what the clone host is. Private repos from other hosts fail, and the GitHub token gets sent to another server. We need asourceServerIdon repositories and the mirror step has to pick clone credentials from that server.This is what unlocks #221 , and the GitLab, Codeberg and self hosted Forgejo sources asked for in #371 .
Shipped in v3.30.0 (#376), one source per user. Repositories record source_provider and source_url, credentials come from that, and both mirror paths refuse a row from a different host. Several sources at once is a separate follow up. Closing, details on #390.