patchman users:
  cli:
    users:
      - root
    require_rpc: direct
  schema:
    custom_integration:
      type: boolean
      default: false
    integration_type:
      type: string
      allowed:
        - file
        - script
      default: null
      nullable: true
    metadata_path:
      type: string
      coerce: path
      default: null
      nullable: true

patchman register:
  help: Register Patchman agent
  cli:
    require_rpc: any
    users:
      - root
  schema:
    regkey:
      envvar: "PATCHMAN_REG_KEY"
      type: string
      required: true
      help: Patchman key
      isascii: true
      positional: true

patchman migrate:
  help: Migrate old Patchman agent
  cli:
    require_rpc: any
    users:
      - root

patchman install:
  help: Install Patchman agent
  cli:
    require_rpc: any
    users:
      - root
  schema:
    ip_address:
      type: string
      help: IP for registration
      default: null
      nullable: true

patchman uninstall:
  help: Uninstall Patchman agent
  cli:
    require_rpc: any
    users:
      - root

patchman status:
  help: Status of Patchman agent
  type: dict
  cli:
    require_rpc: any
    users:
      - root

patchman install realtime:
  help: Install realtime package for Patchman agent
  cli:
    require_rpc: any
    users:
      - root

patchman uninstall realtime:
  help: Uninstall realtime package for Patchman agent
  cli:
    require_rpc: any
    users:
      - root
