script - Runs a local script on a remote node after transferring it

Author:Michael DeHaan

Synopsis

The script module takes the script name followed by a list of space-delimited arguments. The local script at path will be transfered 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 raw module.

Options

parameter required default choices comments
creates no
    a filename, when it already exists, this step will not be run. (added in Ansible 1.5)
    free_form yes
      path to the local script file followed by optional arguments.
      removes no
        a filename, when it does not exist, this step will not be run. (added in Ansible 1.5)

        Examples


        # Example from Ansible Playbooks
        - script: /some/local/script.sh --some-arguments 1234
        
        # 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 creates=/the/created/file.txt
        
        # 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 removes=/the/removed/file.txt

        Note

        It is usually preferable to write Ansible modules than pushing scripts. Convert your script to an Ansible module for bonus points!

        Table Of Contents

        Previous topic

        raw - Executes a low-down and dirty SSH command

        Next topic

        shell - Execute commands in nodes.