Allow HTTP Push with Mercurial Server

By  on  

I have always loved git but my present work at Mozilla requires me to use mercurial.  If you weren't already aware, Firefox code is managed through mercurial!  I was recently tasked with standing up a mercurial server within a docker container and ran into an issue:  mercurial rejected pushes to the local docker container via HTTP.  Since HTTPS wasn't configured for the docker container locally, I needed to figure out how to get mercurial to allow HTTP pushes.

To allow HTTP pushes to a mercurial repo, modify the mercurial server's hgweb.conf configuration file to include:

[web]
allow_push = *
push_ssl = false

This configuration will allow you to push to your mercurial repository without SSL.  If you don't run your mercurial server with a specific hgweb.conf now, you can run mercurial server with a special config via:

exec hg serve --web-conf path/to/hgweb.conf

HTTPS is the way to go these days but for local development it shouldn't be a requirement.  I hope this helps someone!

Recent Features

  • By
    Page Visibility API

    One event that's always been lacking within the document is a signal for when the user is looking at a given tab, or another tab. When does the user switch off our site to look at something else? When do they come back?

  • By
    Welcome to My New Office

    My first professional web development was at a small print shop where I sat in a windowless cubical all day. I suffered that boxed in environment for almost five years before I was able to find a remote job where I worked from home. The first...

Incredible Demos

  • By
    CSS Triangles

    I was recently redesigning my website and wanted to create tooltips.  Making that was easy but I also wanted my tooltips to feature the a triangular pointer.  I'm a disaster when it comes to images and the prospect of needing to make an image for...

  • By
    Skype-Style Buttons Using MooTools

    A few weeks back, jQuery expert Janko Jovanovic dropped a sweet tutorial showing you how to create a Skype-like button using jQuery. I was impressed by Janko's article so I decided to port the effect to MooTools. The XHTML This is the exact code provided by...

Discussion

  1. Josh

    This is useful.
    With the impending BitBucket deletion of mercurial repos I’m looking to migrate to a private server on my intranet.
    I’d like to stand up a docker container for this, but struggling to find an official container. What did you use?

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!