Resolve "Pull repository mirroring: Support for SSH keys"
What does this MR do?
Introduces SSH public-key authentication to pull mirroring.
- Configuration backend (username/password auth)
- Configuration backend (public-key auth)
- Configuration frontend (wireframe)
- Configuration frontend (complete) !2550 (closed)
- SSH known_hosts file generator (backend)
- SSH host key fingerprint verification (backend)
- SSH host key fingerprint verification (frontend) !2550 (closed)
gitlab-shell.fetch_remoteupdated to support pubkey auth
- gitlab-shell#95 (closed)
- Comprehensive test coverage. Pull mirroring seems to be mostly untested at the moment
- Backports to CE gitlab-ce!13275 (merged)
Are there points in the code the reviewer needs to double check?
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?
- Changelog entry added, if necessary
- Documentation created/updated
- API support added
- Added for this feature/bug
- All builds are passing
- Conform by the merge request performance guides
- Conform by the style guides
Branch has no merge conflicts with
master(if it does - rebase it please)
- Squashed related commits together