mirror of
https://github.com/GNS3/gns3-registry.git
synced 2025-01-18 02:40:11 +00:00
Docker container support
This commit is contained in:
parent
d85e8a977a
commit
27841576d6
@ -3,37 +3,16 @@
|
||||
"category": "multilayer_switch",
|
||||
"description": "Open vSwitch is a production quality, multilayer virtual switch licensed under the open source Apache 2.0 license. It is designed to enable massive network automation through programmatic extension, while still supporting standard management interfaces and protocols (e.g. NetFlow, sFlow, IPFIX, RSPAN, CLI, LACP, 802.1ag). In addition, it is designed to support distribution across multiple physical servers similar to VMware's vNetwork distributed vswitch or Cisco's Nexus 1000V.",
|
||||
"vendor_name": "Open vSwitch",
|
||||
"vendor_url": "http://openvswitch.net/",
|
||||
"documentation_url": "http://openvswitch.net/support",
|
||||
"vendor_url": "http://openvswitch.org/",
|
||||
"documentation_url": "http://openvswitch.org/support/",
|
||||
"product_name": "Open vSwitch",
|
||||
"registry_version": 1,
|
||||
"registry_version": 3,
|
||||
"status": "stable",
|
||||
"maintainer": "GNS3 Team",
|
||||
"maintainer_email": "developers@gns3.net",
|
||||
"qemu": {
|
||||
"adapter_type": "e1000",
|
||||
"adapters": 24,
|
||||
"ram": 128,
|
||||
"arch": "x86_64",
|
||||
"console_type": "telnet",
|
||||
"kvm": "allow"
|
||||
},
|
||||
"images": [
|
||||
{
|
||||
"filename": "openvswitch-3.16.6-tinycore64.img",
|
||||
"version": "3.16.6",
|
||||
"md5sum": "88b777ef930c1a3849b6a40c0d3fd102",
|
||||
"filesize": 70254592,
|
||||
"download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/",
|
||||
"direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/openvswitch-3.16.6-tinycore64.img"
|
||||
"usage": "By default all interfaces are connected to the br0",
|
||||
"docker": {
|
||||
"adapters": 16,
|
||||
"image": "gns3/openvswitch"
|
||||
}
|
||||
],
|
||||
"versions": [
|
||||
{
|
||||
"name": "3.16.6",
|
||||
"images": {
|
||||
"hda_disk_image": "openvswitch-3.16.6-tinycore64.img"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
1
check.py
1
check.py
@ -35,6 +35,7 @@ def check_appliance(appliance):
|
||||
appliance_json = json.load(f)
|
||||
jsonschema.validate(appliance_json, schema)
|
||||
|
||||
if 'images' in appliance_json:
|
||||
for image in appliance_json['images']:
|
||||
if image['filename'] in images:
|
||||
print('Duplicate image filename ' + image['filename'])
|
||||
|
@ -58,6 +58,7 @@ for appliance in glob.glob('appliances/*.gns3a'):
|
||||
if isinstance(val, dict):
|
||||
config[key] = OrderedDict(sorted(val.items(), key=lambda t: sort_key_using_schema(schema['properties'][key], t[0])))
|
||||
|
||||
if 'images' in config:
|
||||
images = []
|
||||
for image in config['images']:
|
||||
clean_urls(image)
|
||||
@ -65,6 +66,7 @@ for appliance in glob.glob('appliances/*.gns3a'):
|
||||
images = sorted(images, key=lambda t: t['version'], reverse=True)
|
||||
config['images'] = images
|
||||
|
||||
if 'versions' in config:
|
||||
versions = []
|
||||
for version in config['versions']:
|
||||
version = OrderedDict(sorted(version.items(), key=lambda t: sort_key_using_schema(schema['properties']['versions']['items'], t[0])))
|
||||
|
@ -55,7 +55,7 @@
|
||||
"title": "An optional product url on vendor website"
|
||||
},
|
||||
"registry_version": {
|
||||
"enum": [1, 2],
|
||||
"enum": [1, 2, 3],
|
||||
"title": "Version of the registry compatible with this appliance"
|
||||
},
|
||||
"status": {
|
||||
@ -96,6 +96,34 @@
|
||||
"title": "False if you don't want to use a single image for all nodes"
|
||||
},
|
||||
|
||||
"docker": {
|
||||
"type": "object",
|
||||
"title": "Docker specific options",
|
||||
"properties": {
|
||||
"adapters": {
|
||||
"type": "integer",
|
||||
"title": "Number of ethernet adapters"
|
||||
},
|
||||
"image": {
|
||||
"type": "string",
|
||||
"title": "Docker image in the Docker Hub"
|
||||
},
|
||||
"start_command": {
|
||||
"type": "string",
|
||||
"title": "Command executed when the container start. Empty will use the default"
|
||||
},
|
||||
"environment": {
|
||||
"type": "string",
|
||||
"title": "One KEY=VAR environment by line"
|
||||
}
|
||||
},
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"adapters",
|
||||
"image"
|
||||
]
|
||||
},
|
||||
|
||||
"iou": {
|
||||
"type": "object",
|
||||
"title": "IOU specific options",
|
||||
@ -400,8 +428,6 @@
|
||||
"registry_version",
|
||||
"status",
|
||||
"maintainer",
|
||||
"maintainer_email",
|
||||
"images",
|
||||
"versions"
|
||||
"maintainer_email"
|
||||
]
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user