# Describes the format for available pyscript services

reload:
  name: Reload pyscript
  description: Reloads all available pyscripts and restart triggers
  fields:
    global_ctx:
      name: Global Context
      description: Only reload this specific global context (file or app)
      example: file.example
      required: false
      selector:
        text:

jupyter_kernel_start:
  name: Start Jupyter kernel
  description: Starts a jupyter kernel for interactive use; Called by Jupyter front end and should generally not be used by users
  fields:
    shell_port:
      name: Shell Port Number
      description: Shell port number
      example: 63599
      required: false
      selector:
        number:
          min: 10240
          max: 65535
    iopub_port:
      name: IOPub Port Number
      description: IOPub port number
      example: 63598
      required: false
      selector:
        number:
          min: 10240
          max: 65535
    stdin_port:
      name: Stdin Port Number
      description: Stdin port number
      example: 63597
      required: false
      selector:
        number:
          min: 10240
          max: 65535
    control_port:
      name: Control Port Number
      description: Control port number
      example: 63596
      required: false
      selector:
        number:
          min: 10240
          max: 65535
    hb_port:
      name: Heartbeat Port Number
      description: Heartbeat port number
      example: 63595
      required: false
      selector:
        number:
          min: 10240
          max: 65535
    ip:
      name: IP Address
      description: IP address to connect to Jupyter front end
      example: 127.0.0.1
      default: 127.0.0.1
      required: false
      selector:
        text:
    key:
      name: Security Key
      description: Used for signing
      example: 012345678-9abcdef023456789abcdef
      required: true
      selector:
        text:
    transport:
      name: Transport Type
      description: Transport type
      example: tcp
      default: tcp
      required: false
      selector:
        select:
          options:
            - tcp
            - udp
    signature_scheme:
      name: Signing Algorithm
      description: Signing algorithm
      example: hmac-sha256
      required: false
      default: hmac-sha256
      selector:
        select:
          options:
            - hmac-sha256
    kernel_name:
      name: Name of Kernel
      description: Kernel name
      example: pyscript
      required: true
      default: pyscript
      selector:
        text:
