hg – Manages Mercurial (hg) repositories

From Get docs
Ansible/docs/2.7/modules/hg module


hg – Manages Mercurial (hg) repositories

Synopsis

  • Manages Mercurial (hg) repositories. Supports SSH, HTTP/S and local address.

Parameters

Parameter Choices/Defaults Comments

clone

boolean

added in 2.3

  • no
  • yes

If no, do not clone the repository if it does not exist locally.

dest

- / required

Absolute path of where the repository should be cloned to. This parameter is required, unless clone and update are set to no

executable

-

added in 1.4

Path to hg executable to use. If not supplied, the normal mechanism for resolving binary paths will be used.

force

boolean

  • no

  • yes

Discards uncommitted changes. Runs hg update -C. Prior to 1.9, the default was `yes`.

purge

boolean

  • no

  • yes

Deletes untracked files. Runs hg purge.

repo

- / required

The repository address.


aliases: name

revision

-

Equivalent -r option in hg command which could be the changeset, revision number, branch name or even tag.


aliases: version

update

boolean

added in 2.0

  • no
  • yes

If no, do not retrieve new revisions from the origin repository



Notes

Note

  • This module does not support push capability. See https://github.com/ansible/ansible/issues/31156.
  • If the task seems to be hanging, first verify remote host is in known_hosts. SSH will prompt user to authorize the first contact with a remote host. To avoid this prompt, one solution is to add the remote host public key in /etc/ssh/ssh_known_hosts before calling the hg module, with the following command: ssh-keyscan remote_host.com >> /etc/ssh/ssh_known_hosts.
  • As per 01 Dec 2018, Bitbucket has dropped support for TLSv1 and TLSv1.1 connections. As such, if the underlying system still uses a Python version below 2.7.9, you will have issues checking out bitbucket repositories. See https://bitbucket.org/blog/deprecating-tlsv1-tlsv1-1-2018-12-01.


Examples

- name: Ensure the current working copy is inside the stable branch and deletes untracked files if any.
  hg:
    repo: https://bitbucket.org/user/repo1
    dest: /home/user/repo1
    revision: stable
    purge: yes

- name: Get information about the repository whether or not it has already been cloned locally.
  hg:
    repo: git://bitbucket.org/user/repo
    dest: /srv/checkout
    clone: no
    update: no

Status

Authors

  • Yeukhon Wong (@yeukhon)

Hint

If you notice any issues in this documentation you can edit this document to improve it.


© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/hg_module.html