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 |
|
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
-
|
Path to hg executable to use. If not supplied, the normal mechanism for resolving binary paths will be used.
|
|
force
boolean
|
|
Discards uncommitted changes. Runs
hg update -C . Prior to 1.9, the default was `yes`. |
purge
boolean
|
|
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 |
|
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¶
This module is not guaranteed to have a backwards compatible interface. [preview]
This module is maintained by the Ansible Community. [community]