type: object
properties:
  script:
    type: string
    description: script to execute by rport client(s) in base64 format.
  cwd:
    type: string
    description: current working directory where the script will be executed
  is_sudo:
    type: boolean
    description: execute the command as a sudo user
  client_ids:
    type: array
    description: >-
      list of client IDs where to run the script. At least one of client_ids, 
      group_ids or tags must be specified.
    items:
      type: string
  group_ids:
    type: array
    description: >-
      list of client group IDs. A script will be executed on all
      clients that belong to given group(s)
    items:
      type: string
  tags:
    $ref: ./Tags.yaml            
  interpreter:
    type: string
    description: >-
      command interpreter to use to execute the script. If not set 'cmd' is used
      by default on Windows, and '/bin/sh' on Unix. 
       For tacoscript interpreter you should install tacoscript binary from here: https://github.com/cloudradar-monitoring/tacoscript#installation. 
       It should also be available in the system path.
       Additionally, you can use interpreter aliases or full absolute paths to an interpreter of your choice (see https://oss.rport.io/docs/no14-scripts.html#scripts-execution for details).
    enum:
      - cmd
      - powershell
      - tacoscript
  timeout_sec:
    type: integer
    description: >-
      timeout in seconds to observe the script execution on each client
      separately. If not set a default timeout (60 seconds) is used
  execute_concurrently:
    type: boolean
    description: >-
      applicable only when multiple clients are specified. If true - execute the
      script concurrently on clients. If false - sequentially in order that is
      in 'client_ids'. By default is false
  abort_on_error:
    type: boolean
    description: >-
      applicable only when multiple clients are specified. Applicable only if
      'execute_concurrently' is false. If true - abort the entire cycle if the
      execution fails on some client. By default is true
description: >-
  Request that contains a remote script to execute by rport client(s) and other
  related properties
