community.general.chroot connection – Interact with local chroot

Note

This connection plugin is part of the community.general collection (version 9.1.0).

It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install community.general.

To use it in a playbook, specify: community.general.chroot.

Synopsis

  • Run commands or put/fetch files to an existing chroot on the Ansible controller.

Parameters

Parameter

Comments

chroot_exe

string

User specified chroot binary

Default: "chroot"

Configuration:

  • INI entry:

    [chroot_connection]
    exe = chroot
    
  • Environment variable: ANSIBLE_CHROOT_EXE

  • Variable: ansible_chroot_exe

disable_root_check

boolean

added in community.general 7.3.0

Do not check that the user is not root.

Choices:

  • false ← (default)

  • true

Configuration:

executable

string

User specified executable shell

Default: "/bin/sh"

Configuration:

  • INI entry:

    [defaults]
    executable = /bin/sh
    
  • Environment variable: ANSIBLE_EXECUTABLE

  • Variable: ansible_executable

remote_addr

string

The path of the chroot you want to access.

Default: "inventory_hostname"

Configuration:

  • Variable: inventory_hostname

  • Variable: ansible_host

Examples

# Plugin requires root privileges for chroot, -E preserves your env (and location of ~/.ansible):
# sudo -E ansible-playbook ...
#
# Static inventory file
# [chroots]
# /path/to/debootstrap
# /path/to/feboostrap
# /path/to/lxc-image
# /path/to/chroot

# playbook
---
- hosts: chroots
  connection: community.general.chroot
  tasks:
    - debug:
        msg: "This is coming from chroot environment"

Authors

  • Maykel Moya

Hint

Configuration entries for each entry type have a low to high priority order. For example, a variable that is lower in the list will override a variable that is higher up.