ansible.builtin.script (v2.5.15) — module

Runs a local script on a remote node after transferring it

| "added in version" 0.9 of ansible.builtin"

Authors: Ansible Core Team, Michael DeHaan

stableinterface | supported by core

Install Ansible via pip

Install with pip install ansible==2.5.15

Description

The C(script) module takes the script name followed by a list of space-delimited arguments.

The local script at path will be transferred to the remote node and then executed.

The given script will be processed through the shell environment on the remote node.

This module does not require python on the remote system, much like the M(raw) module.

This module is also supported for Windows targets.

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Example from Ansible Playbooks
- script: /some/local/script.sh --some-arguments 1234
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Run a script that creates a file, but only if the file is not yet created
- script: /some/local/create_file.sh --some-arguments 1234
  args:
    creates: /the/created/file.txt
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Run a script that removes a file, but only if the file is not yet removed
- script: /some/local/remove_file.sh --some-arguments 1234
  args:
    removes: /the/removed/file.txt

Inputs

    
chdir:
    default: null
    description:
    - cd into this directory on the remote node before running the script
    required: false
    version_added: '2.4'
    version_added_collection: ansible.builtin

creates:
    default: null
    description:
    - a filename, when it already exists, this step will B(not) be run.
    required: false
    version_added: '1.5'
    version_added_collection: ansible.builtin

decrypt:
    default: true
    description:
    - This option controls the autodecryption of source files using vault.
    type: bool
    version_added: '2.4'
    version_added_collection: ansible.builtin

removes:
    default: null
    description:
    - a filename, when it does not exist, this step will B(not) be run.
    required: false
    version_added: '1.5'
    version_added_collection: ansible.builtin

free_form:
    aliases: []
    default: null
    description:
    - Path to the local script file followed by optional arguments. There is no parameter
      actually named 'free form'; see the examples!
    required: true