Get Zulip notifications when you hg push
!
First, create the stream you'd like to use for Mercurial notifications,
and subscribe all interested parties to this stream. We recommend the
name commits
.
Next, on your {{ settings_html|safe }}, create a Mercurial bot.
Then:
Download and install our Python bindings on the server where the master Mercurial repository lives.
Edit the hg/.hgrc
configuration file for this master
Mercurial repository and add the following sections, using the
credentials for your Mercurial bot and setting the appropriate path to
the integration hook if it installs in a different location on this
system:
[hooks] changegroup = python:/usr/local/share/zulip/integrations/hg/zulip-changegroup.py:hook [zulip] email = "hg-bot@example.com" api_key = "0123456789abcdefg" stream = "commits" {% if api_site_required %}site = {{ external_api_uri_subdomain }}{% endif %}
That's all it takes for the basic setup! On the next
hg push
, you'll get a Zulip update for the changeset.
The Mercurial integration also supports:
If you've set up your repository to be
browsable via the web,
add a web_url
configuration option to
the zulip
section of your master .hg/hgrc
to get
changelog and revision links in your Zulip notifications:
[zulip] email = "hg-bot@example.com" api_key = "0123456789abcdefg" stream = "commits" web_url = "http://hg.example.com:8000/" {% if api_site_required %}site = {{ external_api_uri_subdomain }}{% endif %}
By default, this integration will send Zulip notifications for
changegroup events for all branches. If you'd prefer to only receive Zulip
notifications for specified branches, add a branches
configuration option to the zulip
section of your
master .hg/hgrc
, containing a comma-separated list of the
branches that should produce notifications:
[zulip] email = "hg-bot@example.com" api_key = "0123456789abcdefg" stream = "commits" branches = "prod,master"
You can also exclude branches that you don't want to cause
notifications. To do so, add an ignore_branches
configuration
option to the zulip
section of your
master .hg/hgrc
, containing a comma-separated list of the
branches that should be ignored:
[zulip] email = "hg-bot@example.com" api_key = "0123456789abcdefg" stream = "commits" ignore_branches = "noisy,even-more-noisy"
Congratulations! You're done!
When team members push new
changesets with hg push
, you'll get a Zulip notification that
looks like this: