Input data examples

Input data in YAML format

# IP of devices to discover (could be a range or single one)
devices-ips:
    -   range: 192.168.10.3-45
        domain: Some Domain
    -   range: 192.168.8.1-9.10
        domain: Some other Domain
    -   192.168.42.235

# IP and credentials for the CloudShell API
cloudshell:
    ip: 192.168.85.9
    user: admin
    password: admin

# Possible SNMP community strings
community-strings:
    -   public
    -   public2

# Additional settings per Vendor (Possible CLI credentials (user/password), resource folder)
vendor-settings:
    default:
        cli-credentials:
            -   user: root
                password: Password1
                enable password: Password2we
            -   user: root1
                password: Password2
        folder-path: autodiscovery
    Cisco:
        cli-credentials:
            -   user: cisco
                password: Password1
            -   user: cisco2
                password: Password2
        folder-path: cisco
    Juniper:
        cli-credentials:
            -   user: juniper
                password: Password1
            -   user: juniper2
                password: Password2
                enable_password: Password2

Input data in JSON format

{
    "cloudshell": {
        "ip": "192.168.85.9", 
        "password": "admin", 
        "user": "admin"
    }, 
    "community-strings": [
        "public", 
        "public2"
    ], 
    "devices-ips": [
        {
            "domain": "Some Domain", 
            "range": "192.168.10.3-45"
        }, 
        {
            "domain": "Some other Domain", 
            "range": "192.168.8.1-9.10"
        }, 
        "192.168.42.235"
    ], 
    "vendor-settings": {
        "Cisco": {
            "cli-credentials": [
                {
                    "password": "Password1", 
                    "user": "cisco"
                }, 
                {
                    "password": "Password2", 
                    "user": "cisco2"
                }
            ], 
            "folder-path": "cisco"
        }, 
        "Juniper": {
            "cli-credentials": [
                {
                    "password": "Password1", 
                    "user": "juniper"
                }, 
                {
                    "enable_password": "Password2", 
                    "password": "Password2", 
                    "user": "juniper2"
                }
            ]
        }, 
        "default": {
            "cli-credentials": [
                {
                    "enable password": "Password2we", 
                    "password": "Password1", 
                    "user": "root"
                }, 
                {
                    "password": "Password2", 
                    "user": "root1"
                }
            ], 
            "folder-path": "autodiscovery"
        }
    }
}

An additional vendors configuration in JSON format

[
   {
      "name": "Cisco",
      "aliases": [
         "[Cc]iscoSystems"
      ],
      "type": "networking",
      "default_os": "IOS",
      "default_prompt": ">\\s*$",
      "enable_prompt": "(?:(?!\\)).)#\\s*$",
      "operation_systems": [
         {
            "name": "IOS",
            "aliases": [
               "CAT[ -]?OS",
               "IOS[ -]?X?[E]?"
            ],
            "default_model": "switch",
            "models_map": [
               {
                  "model": "switch",
                  "aliases": [
                     "[Cc]atalyst",
                     "C2950"
                  ]
               },
               {
                  "model": "router",
                  "aliases": [
                     "IOS[ -]?X?[E]?"
                  ]
               }
            ],
            "families": {
               "switch": {
                  "first_gen": {
                     "family_name": "Switch",
                     "model_name": "Cisco IOS Switch",
                     "driver_name": "Generic Cisco IOS Driver Version3"
                  },
                  "second_gen": {
                     "family_name": "CS_Switch",
                     "model_name": "Cisco IOS Switch 2G",
                     "driver_name": "Cisco IOS Switch 2G"
                  }
               },
               "router": {
                  "first_gen": {
                     "family_name": "Router",
                     "model_name": "Cisco IOS Router",
                     "driver_name": "Generic Cisco IOS Driver Version3"
                  },
                  "second_gen": {
                     "family_name": "CS_Router",
                     "model_name": "Cisco IOS Router 2G",
                     "driver_name": "Cisco IOS Router 2G"
                  }
               }
            }
         }
      ]
   }
]