Skip to content
Snippets Groups Projects

MercurialRepositoryService.Push

Merged Georges Racinet requested to merge topic/default/hg-push into branch/default

Closes #87 (closed)

This is now rather complete, including SSH options, only_gitlab_branches_matching (used in restriction to protected branches), option to limit to public changesets.

Edited by Georges Racinet

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Georges Racinet added 2 commits

    added 2 commits

    • e301a96dbe4f - MercurialRepository.Push: protocol, stubs and boilerplate
    • 223982d7d978 - MercurialRepositoryService.Push: main implementation

    Compare with previous version

  • added 1 commit

    • 6f582a330434 - MercurialRepositoryService.Push: forbid file URLs outside of same storage

    Compare with previous version

  • Georges Racinet added 3 commits

    added 3 commits

    Compare with previous version

  • Georges Racinet added 3 commits

    added 3 commits

    Compare with previous version

  • Georges Racinet marked the checklist item should be at least partially folded as completed

    marked the checklist item should be at least partially folded as completed

  • Georges Racinet marked the checklist item still needs to permit only relative paths from storage root with file:// as completed

    marked the checklist item still needs to permit only relative paths from storage root with file:// as completed

  • Added support for SSH push (needed a base CI image upgrade, including sshd)

  • Georges Racinet resolved all threads

    resolved all threads

  • Georges Racinet added 3 commits

    added 3 commits

    • 704dfdae674e - MercurialRepository.Push: a context manager for remote peer
    • 4fcd287fa89a - MercurialRepository.Push: SSH implementation
    • 017c980d11e7 - MercurialRepository: new MercurialPeer message

    Compare with previous version

  • added 1 commit

    • 7ef83ccdfdf4 - Heptapod CI: create sshd privilege separation directory

    Compare with previous version

  • added 1 commit

    • 5db7944c0f5e - Heptapod CI: fixed hg executable path for rolling Mercurial jobs

    Compare with previous version

  • added 1 commit

    • 528df3b3f4e9 - Heptapod CI: fixed hg executable path for rolling Mercurial jobs

    Compare with previous version

  • Georges Racinet added 18 commits

    added 18 commits

    • 528df3b3...019dc802 - 5 commits from branch branch/default
    • 76540ee5af48 - MercurialRepository.Push: protocol, stubs and boilerplate
    • 73c82a987752 - MercurialRepositoryService.Push: main implementation
    • 3ed6503a4378 - MercurialRepositoryService.Push: forbid file URLs outside of same storage
    • e22e10502c73 - SSH test helpers
    • 6aa265614795 - MercurialRepository.Push: adding SSH to protocol
    • a71a59c343be - MercurialRepository.Push: a context manager for remote peer
    • aaf4cc633fbc - MercurialRepository.Push: SSH implementation
    • 2ffdd3d9d654 - MercurialRepository: new MercurialPeer message
    • 3a24c6f7af8f - Heptapod CI: create sshd privilege separation directory
    • 5cbbda709cf1 - Heptapod CI: fixed hg executable path for rolling Mercurial jobs
    • be9bd112e8fb - MercurialRepository.Push: prevent auto-publication and GitLab sync
    • 49a5ea429966 - Bumping minor version for change of HGitaly protocol
    • 22845fbfd5e9 - Ruby: generated hgitaly 0.19.0dev0 Gem

    Compare with previous version

  • Georges Racinet added 2 commits

    added 2 commits

    • 1a2b49e15309 - branch: implement pattern matching with * wildcards
    • 708e3d056b32 - MercurialRepository.Push: restricting branches by pattern matching

    Compare with previous version

  • This does much more than we thought at the beginning, and there's been several changes of protocol.

    I will reorganise the topic once more.

  • Georges Racinet added 8 commits

    added 8 commits

    • b0382656d164 - MercurialRepository.Push: protocol, stubs and boilerplate
    • 487a99c23eed - branch: implement pattern matching with * wildcards
    • f5a7ccd0c202 - SSH test helpers
    • 7cd5ca902682 - MercurialRepositoryService.Push: main implementation
    • 84896886ba1e - Heptapod CI: create sshd privilege separation directory
    • 2c0f301d2178 - Heptapod CI: fixed hg executable path for rolling Mercurial jobs
    • 188816f2866d - MercurialRepository.Push: SSH implementation
    • cf9dbc6d614e - MercurialRepository.Push: prevent auto-publication and GitLab sync

    Compare with previous version

  • Georges Racinet marked this merge request as ready

    marked this merge request as ready

  • @raphael.gomes this is not ready for – I hope – final review.

    It can still be improved, but I expect it to be much more readable with the topic reorg of the latest push.

    All tests are expected to pass with the 100% coverage for each changeset. That's why the service implementation and the hg_remote_peer context manager are included in a single changeset.

    Once published, we will be ready for release as HGitaly 0.19.0, with immediate and very simple usage in the Rails app.

    @khanchi97 for your awareness, this also provides all the needed components for a future MercurialRepository.Pull implementation (not a priority at this point).

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Please register or sign in to reply
    Loading