Skip to content

WIP: Support SSH public-key authentication for pull mirroring

What does this MR do?

Introduces SSH public-key authentication to pull mirroring.

Tasks:

  • Configuration backend (username/password auth)
  • Configuration backend (public-key auth)
  • Configuration frontend (wireframe)
  • Configuration frontend (complete)
  • SSH known_hosts file generator (backend)
  • SSH host key fingerprint verification (backend)
  • SSH host key fingerprint verification (frontend)
  • gitlab-shell.fetch_remote updated to support pubkey auth
  • https://gitlab.com/gitlab-org/gitlab-shell/issues/95
  • Comprehensive test coverage. Pull mirroring seems to be mostly untested at the moment

Are there points in the code the reviewer needs to double check?

The import_url and project_import_data data is shared with CE, so we need to pay attention to backports when refactoring.

Why was this MR needed?

Scheduled feature for %9.5

Screenshots (if relevant)

Does this MR meet the acceptance criteria?

What are the relevant issue numbers?

Closes #98 (closed) https://gitlab.com/gitlab-org/gitlab-ce/issues/21391

Edited by Nick Thomas

Merge request reports