mirror of
https://github.com/GNS3/gns3-server
synced 2024-11-13 20:08:55 +00:00
Merge branch 'asyncio'
This commit is contained in:
commit
29b7f0e164
7
.gitignore
vendored
7
.gitignore
vendored
@ -40,3 +40,10 @@ nosetests.xml
|
||||
|
||||
# Gedit Backup Files
|
||||
*~
|
||||
|
||||
#Documentation build
|
||||
docs/_build
|
||||
|
||||
#VPCS
|
||||
vpcs.hist
|
||||
startup.vpcs
|
||||
|
37
.travis.yml
37
.travis.yml
@ -1,29 +1,32 @@
|
||||
language: python
|
||||
|
||||
env:
|
||||
- TOX_ENV=py33
|
||||
- TOX_ENV=py34
|
||||
python:
|
||||
- "3.3"
|
||||
- "3.4"
|
||||
|
||||
before_install:
|
||||
- sudo add-apt-repository ppa:gns3/ppa -y
|
||||
- sudo apt-get update -q
|
||||
|
||||
- sudo apt-get install dynamips
|
||||
|
||||
install:
|
||||
- pip install tox
|
||||
- sudo apt-get install vpcs dynamips
|
||||
- python setup.py install
|
||||
- pip install -rdev-requirements.txt
|
||||
|
||||
script:
|
||||
- tox -e $TOX_ENV
|
||||
- py.test -v -s tests --cov gns3server --cov-report term-missing
|
||||
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
#branches:
|
||||
# only:
|
||||
# - master
|
||||
|
||||
notifications:
|
||||
email: false
|
||||
irc:
|
||||
channels:
|
||||
- "chat.freenode.net#gns3"
|
||||
on_success: change
|
||||
on_failure: always
|
||||
email:
|
||||
- julien@gns3.net
|
||||
# irc:
|
||||
# channels:
|
||||
# - "chat.freenode.net#gns3"
|
||||
# on_success: change
|
||||
# on_failure: always
|
||||
|
||||
after_success:
|
||||
- coveralls
|
||||
|
95
CHANGELOG
Normal file
95
CHANGELOG
Normal file
@ -0,0 +1,95 @@
|
||||
# Change Log
|
||||
|
||||
## 1.3.0rc1 19/03/2015
|
||||
|
||||
* Save IOS router config when saving the project
|
||||
* Look in legacy IOU images directory
|
||||
* Support IOURC upload
|
||||
* Configuration on UNIX
|
||||
* Support all QEMU status
|
||||
* Bind tunnel UDP to the correct source index
|
||||
|
||||
## 1.3.0beta2 13/03/2015
|
||||
|
||||
* Fixed issue when VBoxManage returns an error.
|
||||
* Server handler to shutdown a local server.
|
||||
* List the iourc file in upload handler.
|
||||
* Fixed hostid error.
|
||||
* Support RAM setting for VirtualBox VMs.
|
||||
* Alternative local server shutdown (intended for Windows).
|
||||
* Request user permission to kill the local server if it cannot be stopped.
|
||||
|
||||
## 1.3.0beta1 11/03/2015
|
||||
|
||||
* Optional IOU license key check.
|
||||
* Relative path support of IOU, IOS and Qemu images.
|
||||
* Do not give attachment warning for generic attachments in VirtualBox.
|
||||
* Support for HDC and HDD disk images in Qemu.
|
||||
* Fixed bug when starting a packet capture in VirtualBox with the project path containing spaces.
|
||||
* Renames server.conf and server.ini to gns3_server.conf and gns3_server.ini respectively.
|
||||
* Use TCP instead of Telnet to communicate with Qemu monitor.
|
||||
* Have the server look in the right place for relative image paths.
|
||||
* Fixed bugs when checking if this is a local project.
|
||||
* Concert old projects on remote servers.
|
||||
* Properly restore configs for Dynamips routers.
|
||||
* Fixed rename bug for linked clones in VirtualBox.
|
||||
* Makes absolute path checks work on Windows.
|
||||
* Upload IOURC file via the web interface
|
||||
* Upload interface allows users to choose an image type.
|
||||
* Fixed Qemu networking.
|
||||
* Fixed suspend and resume for Qemu VMs.
|
||||
* Fixed crash when you start capture on a non running IOU.
|
||||
* Fixed Telnet server initialization issue in VirtualBox.
|
||||
* Disconnect network cable if adapter is not attached in VirtualBox vNIC.
|
||||
|
||||
## 1.3.0alpha1 03/03/2015
|
||||
|
||||
* HTTP Rest API instead of WebSocket
|
||||
* API documentation
|
||||
* Create a dedicated configuration file for the server: server.conf
|
||||
* Temporary projects are real project
|
||||
* Use UUID instead of id
|
||||
|
||||
## 1.2.3 2015/01/17
|
||||
|
||||
* Fixed broken -netdev + legacy virtio in Qemu support.
|
||||
* Ping and traceroute added to the IOU VM.
|
||||
|
||||
## 1.2.2 2015/01/16
|
||||
|
||||
### Small improvements / new features
|
||||
|
||||
* Auxiliary console support for IOS routers.
|
||||
* Suspend / resume support for Qemu.
|
||||
* Dynamically configure network connections of running Qemu VMs (only with recent Qemu versions).
|
||||
* VPCS multi-host support (useful for old .net labs).
|
||||
* Possibility to run VirtualBox as another user (Linux/OSX only).
|
||||
* Support for IOURC file on the server side.
|
||||
* Bumped the maximum network adapters to 32 for Qemu (depending on Qemu version you cannot go above 8 or even 28, Qemu will just not start).
|
||||
* Added snapshot named 'reset' to linked cloned VirtualBox VMs.
|
||||
* More network interface options to the Qemu VM configuration interface as well as descriptions for all NICs.
|
||||
* More checks on minimum RAM for IOS routers and updates default values to match the latest IOS image requirements.
|
||||
* Fixed bug when importing Host node with UDP NIOs.
|
||||
|
||||
## 1.2.1 2014/12/04
|
||||
|
||||
* Early support for IOSv and IOSv-L2 (with Qemu for now, which is slow on Windows/Mac OS X).
|
||||
* Support for CPU throttling and process priority for Qemu.
|
||||
* Fixed C7200 IO cards insert/remove issues and makes C7200-IO-FE the default.
|
||||
* Updated the IOU VM with iouyap version 0.95 (packet capture).
|
||||
|
||||
|
||||
## 1.2 2014/11/20
|
||||
|
||||
* New VirtualBox support
|
||||
* New Telnet server for VirtualBox.
|
||||
* Add detection of qemu and qemu.exe binaries.
|
||||
* New host node (cloud with all available Ethernet & TAP interfaces added).
|
||||
* Option to allow console connections to any local IP address when using the local server.
|
||||
* VirtualBox linked clones support (experimental, still some problems with temporary projects).
|
||||
|
||||
|
||||
## 1.1 2014/10/23
|
||||
|
||||
* Serial console for local VirtualBox.
|
||||
|
18
README.rst
18
README.rst
@ -1,10 +1,16 @@
|
||||
GNS3-server
|
||||
===========
|
||||
|
||||
.. image:: https://travis-ci.org/GNS3/gns3-server.svg?branch=master
|
||||
:target: https://travis-ci.org/GNS3/gns3-server
|
||||
|
||||
.. image:: https://img.shields.io/pypi/v/gns3-server.svg
|
||||
:target: https://pypi.python.org/pypi/gns3-server
|
||||
|
||||
This is the GNS3 server repository.
|
||||
|
||||
The GNS3 server manages emulators such as Dynamips, VirtualBox or Qemu/KVM.
|
||||
Clients like the GNS3 GUI controls the server using a JSON-RPC API over Websockets.
|
||||
Clients like the GNS3 GUI controls the server using a HTTP REST API.
|
||||
|
||||
You will need the GNS3 GUI (gns3-gui repository) to control the server.
|
||||
|
||||
@ -19,18 +25,16 @@ You must be connected to the Internet in order to install the dependencies.
|
||||
Dependencies:
|
||||
|
||||
- Python 3.3 or above
|
||||
- Setuptools
|
||||
- PyZMQ library
|
||||
- Netifaces library
|
||||
- Tornado
|
||||
- Jsonschema
|
||||
- aiohttp
|
||||
- setuptools
|
||||
- netifaces
|
||||
- jsonschema
|
||||
|
||||
The following commands will install some of these dependencies:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
sudo apt-get install python3-setuptools
|
||||
sudo apt-get install python3-zmq
|
||||
sudo apt-get install python3-netifaces
|
||||
|
||||
Finally these commands will install the server as well as the rest of the dependencies:
|
||||
|
@ -1,5 +0,0 @@
|
||||
export OS_USERNAME=username
|
||||
export OS_PASSWORD=""
|
||||
export OS_TENANT_NAME=000000
|
||||
export OS_AUTH_URL=https://identity.api.rackspacecloud.com/v2.0/
|
||||
export OS_REGION_NAME=ord
|
@ -1,243 +0,0 @@
|
||||
""" Create a new GNS3 Server Rackspace image with the provided options. """
|
||||
|
||||
import argparse
|
||||
import getpass
|
||||
import os
|
||||
import sys
|
||||
import uuid
|
||||
from fabric.api import env
|
||||
from fabric.contrib.files import exists
|
||||
from github import Github
|
||||
from novaclient.v1_1 import client
|
||||
from string import Template
|
||||
from time import sleep
|
||||
|
||||
POLL_SEC = 20
|
||||
GNS3_REPO = 'gns3/gns3-server'
|
||||
PLANC_REPO = 'planctechnologies/gns3-server'
|
||||
OS_AUTH_URL = 'https://identity.api.rackspacecloud.com/v2.0/'
|
||||
UBUNTU_BASE_ID = '5cc098a5-7286-4b96-b3a2-49f4c4f82537'
|
||||
|
||||
|
||||
def main():
|
||||
"""
|
||||
Get the user options and perform the image creation.
|
||||
|
||||
Creates a new instance, installs the required software, creates an image
|
||||
from the instance, and then deletes the instance.
|
||||
"""
|
||||
|
||||
github = Github()
|
||||
|
||||
args = get_cli_args()
|
||||
if args.username:
|
||||
username = args.username
|
||||
else:
|
||||
if 'OS_USERNAME' in os.environ:
|
||||
username = os.environ.get('OS_USERNAME')
|
||||
else:
|
||||
username = raw_input('Enter Rackspace username: ')
|
||||
|
||||
if args.password:
|
||||
password = args.password
|
||||
else:
|
||||
if 'OS_PASSWORD' in os.environ:
|
||||
password = os.environ.get('OS_PASSWORD')
|
||||
else:
|
||||
password = getpass.getpass('Enter Rackspace password: ')
|
||||
|
||||
if args.tenant:
|
||||
tenant = args.tenant
|
||||
else:
|
||||
if 'OS_TENANT_NAME' in os.environ:
|
||||
tenant = os.environ.get('OS_TENANT_NAME')
|
||||
else:
|
||||
tenant = raw_input('Enter Rackspace Tenant ID: ')
|
||||
|
||||
if args.region:
|
||||
region = args.region
|
||||
else:
|
||||
if 'OS_REGION_NAME' in os.environ:
|
||||
region = os.environ.get('OS_REGION_NAME')
|
||||
else:
|
||||
region = raw_input('Enter Rackspace Region Name: ')
|
||||
|
||||
if args.source == 'release':
|
||||
# get the list of releases, present them to the user, save the url
|
||||
repo = github.get_repo(GNS3_REPO)
|
||||
keyword = "tag"
|
||||
i = 1
|
||||
branch_opts = {}
|
||||
for tag in repo.get_tags():
|
||||
branch_opts[i] = tag.name
|
||||
i += 1
|
||||
elif args.source == 'dev':
|
||||
# get the list of dev branches, present them to the user, save the url
|
||||
repo = github.get_repo(PLANC_REPO)
|
||||
keyword = "branch"
|
||||
i = 1
|
||||
branch_opts = {}
|
||||
for branch in repo.get_branches():
|
||||
branch_opts[i] = branch.name
|
||||
i += 1
|
||||
|
||||
prompt_text = "Select a %s" % keyword
|
||||
selected_branch = prompt_user_select(branch_opts, prompt_text)
|
||||
|
||||
if args.image_name:
|
||||
image_name = args.image_name
|
||||
else:
|
||||
image_name = "gns3-%s-%s-%s" % (args.source, selected_branch,
|
||||
uuid.uuid4().hex[0:4])
|
||||
|
||||
if args.on_boot:
|
||||
on_boot = True
|
||||
else:
|
||||
on_boot = False
|
||||
|
||||
startup_script = create_script(repo.svn_url, selected_branch, on_boot)
|
||||
server_name = uuid.uuid4().hex
|
||||
instance = create_instance(username, password, tenant, region, server_name,
|
||||
startup_script)
|
||||
passwd = uuid.uuid4().hex
|
||||
instance.change_password(passwd)
|
||||
# wait for the password change to be processed. Continuing while
|
||||
# a password change is processing will cause image creation to fail.
|
||||
sleep(POLL_SEC*6)
|
||||
|
||||
env.host_string = str(instance.accessIPv4)
|
||||
env.user = "root"
|
||||
env.password = passwd
|
||||
|
||||
sys.stdout.write("Installing software...")
|
||||
sys.stdout.flush()
|
||||
|
||||
while True:
|
||||
if exists('/tmp/gns-install-complete'):
|
||||
break
|
||||
|
||||
sleep(POLL_SEC)
|
||||
sys.stdout.write(".")
|
||||
sys.stdout.flush()
|
||||
|
||||
print("Done.")
|
||||
|
||||
image_id = create_image(username, password, tenant, region, instance,
|
||||
image_name)
|
||||
instance.delete()
|
||||
|
||||
|
||||
def prompt_user_select(opts, text="Please select"):
|
||||
""" Ask the user to select an option from the provided list. """
|
||||
|
||||
print("%s" % text)
|
||||
print("=" * len(text))
|
||||
for o in opts:
|
||||
print("(%s)\t%s" % (o, opts[o]))
|
||||
|
||||
while True:
|
||||
selected = raw_input("Select: ")
|
||||
try:
|
||||
return opts[int(selected)]
|
||||
except (KeyError, ValueError):
|
||||
print("Invalid selection. Try again")
|
||||
|
||||
|
||||
def create_instance(username, password, tenant, region, server_name, script,
|
||||
auth_url=OS_AUTH_URL):
|
||||
""" Create a new instance. """
|
||||
|
||||
sys.stdout.write("Creating instance...")
|
||||
sys.stdout.flush()
|
||||
|
||||
nc = client.Client(username, password, tenant, auth_url,
|
||||
region_name=region)
|
||||
server = nc.servers.create(server_name, UBUNTU_BASE_ID, 2,
|
||||
config_drive=True, userdata=script)
|
||||
|
||||
while True:
|
||||
server = nc.servers.get(server.id)
|
||||
if server.status == 'ACTIVE':
|
||||
break
|
||||
|
||||
sleep(POLL_SEC)
|
||||
sys.stdout.write(".")
|
||||
sys.stdout.flush()
|
||||
|
||||
print("Done.")
|
||||
|
||||
return server
|
||||
|
||||
|
||||
def create_script(git_url, git_branch, on_boot):
|
||||
""" Create the start-up script. """
|
||||
|
||||
script_template = Template(open('script_template', 'r').read())
|
||||
|
||||
params = {'git_url': git_url, 'git_branch': git_branch, 'rc_local': ''}
|
||||
|
||||
if on_boot:
|
||||
params['rc_local'] = "echo '/usr/local/bin/gns3-server' >> /etc/rc.local"
|
||||
|
||||
return script_template.substitute(params)
|
||||
|
||||
|
||||
def create_image(username, password, tenant, region, server,
|
||||
image_name, auth_url=OS_AUTH_URL):
|
||||
""" Create a Rackspace image based on the server instance. """
|
||||
|
||||
nc = client.Client(username, password, tenant, auth_url,
|
||||
region_name=region)
|
||||
|
||||
sys.stdout.write("Creating image %s..." % image_name)
|
||||
sys.stdout.flush()
|
||||
|
||||
image_id = server.create_image(image_name)
|
||||
|
||||
while True:
|
||||
server = nc.servers.get(server.id)
|
||||
if getattr(server, 'OS-EXT-STS:task_state') is None:
|
||||
break
|
||||
|
||||
sleep(POLL_SEC)
|
||||
sys.stdout.write(".")
|
||||
sys.stdout.flush()
|
||||
|
||||
print("Done.")
|
||||
|
||||
return image_id
|
||||
|
||||
|
||||
def get_cli_args():
|
||||
""" Parse the CLI input. """
|
||||
|
||||
parser = argparse.ArgumentParser(
|
||||
description='Create a new GNS3 image',
|
||||
formatter_class=argparse.ArgumentDefaultsHelpFormatter)
|
||||
|
||||
parser.add_argument(
|
||||
'--rackspace_username', dest='username', action='store')
|
||||
parser.add_argument(
|
||||
'--rackspace_password', dest='password', action='store')
|
||||
parser.add_argument(
|
||||
'--rackspace_tenant', dest='tenant', action='store')
|
||||
parser.add_argument(
|
||||
'--rackspace_region', dest='region', action='store')
|
||||
parser.add_argument(
|
||||
'--source', dest='source', action='store', choices=['release', 'dev'],
|
||||
default='release', help='specify the gns3-server source location')
|
||||
parser.add_argument(
|
||||
'--branch', dest='branch', action='store',
|
||||
help='specify the branch/tag')
|
||||
parser.add_argument(
|
||||
'--start-on-boot', dest='on_boot', action='store_true',
|
||||
default=False, help='start the GNS3-server when the image boots')
|
||||
parser.add_argument(
|
||||
'--image-name', dest='image_name', action='store',
|
||||
help='the name of the image to be created')
|
||||
|
||||
return parser.parse_args()
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
@ -1,3 +0,0 @@
|
||||
fabric
|
||||
pygithub
|
||||
python-novaclient
|
@ -1,10 +0,0 @@
|
||||
create_image.py:
|
||||
|
||||
- uses fabric, which doesn't support Python 3
|
||||
|
||||
- prompts for Rackspace credentials if environment variables not set
|
||||
- see .novarc for example env variables
|
||||
- note that the novaclient library uses the Rackspace password and -not-
|
||||
the API key
|
||||
|
||||
- use '--help' for help with arguments
|
@ -1,19 +0,0 @@
|
||||
#!/bin/bash
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
apt-get -y update
|
||||
apt-get -o Dpkg::Options::="--force-confnew" --force-yes -fuy dist-upgrade
|
||||
apt-get -y install git
|
||||
apt-get -y install python3-setuptools
|
||||
apt-get -y install python3-netifaces
|
||||
apt-get -y install python3-pip
|
||||
|
||||
mkdir -p /opt/gns3
|
||||
pushd /opt/gns3
|
||||
git clone --branch ${git_branch} ${git_url}
|
||||
cd gns3-server
|
||||
pip3 install -r dev-requirements.txt
|
||||
python3 ./setup.py install
|
||||
|
||||
${rc_local}
|
||||
|
||||
touch /tmp/gns-install-complete
|
@ -1,4 +1,9 @@
|
||||
-rrequirements.txt
|
||||
|
||||
pytest
|
||||
ws4py
|
||||
sphinx==1.2.3
|
||||
pytest==2.6.4
|
||||
pep8==1.5.7
|
||||
pytest-timeout
|
||||
pytest-capturelog
|
||||
pytest-cov
|
||||
python-coveralls
|
||||
|
177
docs/Makefile
Normal file
177
docs/Makefile
Normal file
@ -0,0 +1,177 @@
|
||||
# Makefile for Sphinx documentation
|
||||
#
|
||||
|
||||
# You can set these variables from the command line.
|
||||
SPHINXOPTS =
|
||||
SPHINXBUILD = sphinx-build
|
||||
PAPER =
|
||||
BUILDDIR = _build
|
||||
|
||||
# User-friendly check for sphinx-build
|
||||
ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1)
|
||||
$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/)
|
||||
endif
|
||||
|
||||
# Internal variables.
|
||||
PAPEROPT_a4 = -D latex_paper_size=a4
|
||||
PAPEROPT_letter = -D latex_paper_size=letter
|
||||
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
|
||||
# the i18n builder cannot share the environment and doctrees with the others
|
||||
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
|
||||
|
||||
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
|
||||
|
||||
help:
|
||||
@echo "Please use \`make <target>' where <target> is one of"
|
||||
@echo " html to make standalone HTML files"
|
||||
@echo " dirhtml to make HTML files named index.html in directories"
|
||||
@echo " singlehtml to make a single large HTML file"
|
||||
@echo " pickle to make pickle files"
|
||||
@echo " json to make JSON files"
|
||||
@echo " htmlhelp to make HTML files and a HTML help project"
|
||||
@echo " qthelp to make HTML files and a qthelp project"
|
||||
@echo " devhelp to make HTML files and a Devhelp project"
|
||||
@echo " epub to make an epub"
|
||||
@echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
|
||||
@echo " latexpdf to make LaTeX files and run them through pdflatex"
|
||||
@echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
|
||||
@echo " text to make text files"
|
||||
@echo " man to make manual pages"
|
||||
@echo " texinfo to make Texinfo files"
|
||||
@echo " info to make Texinfo files and run them through makeinfo"
|
||||
@echo " gettext to make PO message catalogs"
|
||||
@echo " changes to make an overview of all changed/added/deprecated items"
|
||||
@echo " xml to make Docutils-native XML files"
|
||||
@echo " pseudoxml to make pseudoxml-XML files for display purposes"
|
||||
@echo " linkcheck to check all external links for integrity"
|
||||
@echo " doctest to run all doctests embedded in the documentation (if enabled)"
|
||||
|
||||
clean:
|
||||
rm -rf $(BUILDDIR)/*
|
||||
|
||||
html:
|
||||
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
|
||||
@echo
|
||||
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
|
||||
|
||||
dirhtml:
|
||||
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
|
||||
@echo
|
||||
@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
|
||||
|
||||
singlehtml:
|
||||
$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
|
||||
@echo
|
||||
@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
|
||||
|
||||
pickle:
|
||||
$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
|
||||
@echo
|
||||
@echo "Build finished; now you can process the pickle files."
|
||||
|
||||
json:
|
||||
$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
|
||||
@echo
|
||||
@echo "Build finished; now you can process the JSON files."
|
||||
|
||||
htmlhelp:
|
||||
$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
|
||||
@echo
|
||||
@echo "Build finished; now you can run HTML Help Workshop with the" \
|
||||
".hhp project file in $(BUILDDIR)/htmlhelp."
|
||||
|
||||
qthelp:
|
||||
$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
|
||||
@echo
|
||||
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
|
||||
".qhcp project file in $(BUILDDIR)/qthelp, like this:"
|
||||
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/GNS3.qhcp"
|
||||
@echo "To view the help file:"
|
||||
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/GNS3.qhc"
|
||||
|
||||
devhelp:
|
||||
$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
|
||||
@echo
|
||||
@echo "Build finished."
|
||||
@echo "To view the help file:"
|
||||
@echo "# mkdir -p $$HOME/.local/share/devhelp/GNS3"
|
||||
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/GNS3"
|
||||
@echo "# devhelp"
|
||||
|
||||
epub:
|
||||
$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
|
||||
@echo
|
||||
@echo "Build finished. The epub file is in $(BUILDDIR)/epub."
|
||||
|
||||
latex:
|
||||
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
|
||||
@echo
|
||||
@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
|
||||
@echo "Run \`make' in that directory to run these through (pdf)latex" \
|
||||
"(use \`make latexpdf' here to do that automatically)."
|
||||
|
||||
latexpdf:
|
||||
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
|
||||
@echo "Running LaTeX files through pdflatex..."
|
||||
$(MAKE) -C $(BUILDDIR)/latex all-pdf
|
||||
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
|
||||
|
||||
latexpdfja:
|
||||
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
|
||||
@echo "Running LaTeX files through platex and dvipdfmx..."
|
||||
$(MAKE) -C $(BUILDDIR)/latex all-pdf-ja
|
||||
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
|
||||
|
||||
text:
|
||||
$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
|
||||
@echo
|
||||
@echo "Build finished. The text files are in $(BUILDDIR)/text."
|
||||
|
||||
man:
|
||||
$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
|
||||
@echo
|
||||
@echo "Build finished. The manual pages are in $(BUILDDIR)/man."
|
||||
|
||||
texinfo:
|
||||
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
|
||||
@echo
|
||||
@echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
|
||||
@echo "Run \`make' in that directory to run these through makeinfo" \
|
||||
"(use \`make info' here to do that automatically)."
|
||||
|
||||
info:
|
||||
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
|
||||
@echo "Running Texinfo files through makeinfo..."
|
||||
make -C $(BUILDDIR)/texinfo info
|
||||
@echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
|
||||
|
||||
gettext:
|
||||
$(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
|
||||
@echo
|
||||
@echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
|
||||
|
||||
changes:
|
||||
$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
|
||||
@echo
|
||||
@echo "The overview file is in $(BUILDDIR)/changes."
|
||||
|
||||
linkcheck:
|
||||
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
|
||||
@echo
|
||||
@echo "Link check complete; look for any errors in the above output " \
|
||||
"or in $(BUILDDIR)/linkcheck/output.txt."
|
||||
|
||||
doctest:
|
||||
$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
|
||||
@echo "Testing of doctests in the sources finished, look at the " \
|
||||
"results in $(BUILDDIR)/doctest/output.txt."
|
||||
|
||||
xml:
|
||||
$(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
|
||||
@echo
|
||||
@echo "Build finished. The XML files are in $(BUILDDIR)/xml."
|
||||
|
||||
pseudoxml:
|
||||
$(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
|
||||
@echo
|
||||
@echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
|
13
docs/api/examples/delete_projectsprojectid.txt
Normal file
13
docs/api/examples/delete_projectsprojectid.txt
Normal file
@ -0,0 +1,13 @@
|
||||
curl -i -X DELETE 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80'
|
||||
|
||||
DELETE /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80 HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}
|
||||
|
13
docs/api/examples/delete_projectsprojectidiouvmsvmid.txt
Normal file
13
docs/api/examples/delete_projectsprojectidiouvmsvmid.txt
Normal file
@ -0,0 +1,13 @@
|
||||
curl -i -X DELETE 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/ac98c05c-dbf1-4157-8f4c-6a0319a0bcdc'
|
||||
|
||||
DELETE /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/ac98c05c-dbf1-4157-8f4c-6a0319a0bcdc HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}
|
||||
|
@ -0,0 +1,13 @@
|
||||
curl -i -X DELETE 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/acf7667f-91d4-4be5-9eec-f453783bb983/adapters/1/ports/0/nio'
|
||||
|
||||
DELETE /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/acf7667f-91d4-4be5-9eec-f453783bb983/adapters/1/ports/0/nio HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
|
||||
|
13
docs/api/examples/delete_projectsprojectidqemuvmsvmid.txt
Normal file
13
docs/api/examples/delete_projectsprojectidqemuvmsvmid.txt
Normal file
@ -0,0 +1,13 @@
|
||||
curl -i -X DELETE 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/da298f63-4d5b-44a7-8672-ec6642009725'
|
||||
|
||||
DELETE /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/da298f63-4d5b-44a7-8672-ec6642009725 HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}
|
||||
|
@ -0,0 +1,13 @@
|
||||
curl -i -X DELETE 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/75fa07c2-fb3d-4a19-815d-2dee5aa5325c/adapters/1/ports/0/nio'
|
||||
|
||||
DELETE /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/75fa07c2-fb3d-4a19-815d-2dee5aa5325c/adapters/1/ports/0/nio HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
|
||||
|
@ -0,0 +1,13 @@
|
||||
curl -i -X DELETE 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/c99f4293-b8b1-40a6-8535-014c4afc2fe7/adapters/0/ports/0/nio'
|
||||
|
||||
DELETE /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/c99f4293-b8b1-40a6-8535-014c4afc2fe7/adapters/0/ports/0/nio HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
|
||||
|
13
docs/api/examples/delete_projectsprojectidvpcsvmsvmid.txt
Normal file
13
docs/api/examples/delete_projectsprojectidvpcsvmsvmid.txt
Normal file
@ -0,0 +1,13 @@
|
||||
curl -i -X DELETE 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/879f1789-bde0-4e64-ac68-f61a9b114347'
|
||||
|
||||
DELETE /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/879f1789-bde0-4e64-ac68-f61a9b114347 HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}
|
||||
|
@ -0,0 +1,13 @@
|
||||
curl -i -X DELETE 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/5238c683-bb17-49f2-8796-a60668fc5955/adapters/0/ports/0/nio'
|
||||
|
||||
DELETE /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/5238c683-bb17-49f2-8796-a60668fc5955/adapters/0/ports/0/nio HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
|
||||
|
52
docs/api/examples/get_interfaces.txt
Normal file
52
docs/api/examples/get_interfaces.txt
Normal file
@ -0,0 +1,52 @@
|
||||
curl -i -X GET 'http://localhost:8000/interfaces'
|
||||
|
||||
GET /interfaces HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 200
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 520
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/interfaces
|
||||
|
||||
[
|
||||
{
|
||||
"id": "lo0",
|
||||
"name": "lo0"
|
||||
},
|
||||
{
|
||||
"id": "gif0",
|
||||
"name": "gif0"
|
||||
},
|
||||
{
|
||||
"id": "stf0",
|
||||
"name": "stf0"
|
||||
},
|
||||
{
|
||||
"id": "en0",
|
||||
"name": "en0"
|
||||
},
|
||||
{
|
||||
"id": "en1",
|
||||
"name": "en1"
|
||||
},
|
||||
{
|
||||
"id": "fw0",
|
||||
"name": "fw0"
|
||||
},
|
||||
{
|
||||
"id": "en2",
|
||||
"name": "en2"
|
||||
},
|
||||
{
|
||||
"id": "p2p0",
|
||||
"name": "p2p0"
|
||||
},
|
||||
{
|
||||
"id": "bridge0",
|
||||
"name": "bridge0"
|
||||
}
|
||||
]
|
20
docs/api/examples/get_projectsprojectid.txt
Normal file
20
docs/api/examples/get_projectsprojectid.txt
Normal file
@ -0,0 +1,20 @@
|
||||
curl -i -X GET 'http://localhost:8000/projects/00010203-0405-0607-0809-0a0b0c0d0e02'
|
||||
|
||||
GET /projects/00010203-0405-0607-0809-0a0b0c0d0e02 HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 200
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 277
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}
|
||||
|
||||
{
|
||||
"location": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpju7ztx9a",
|
||||
"path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpju7ztx9a/00010203-0405-0607-0809-0a0b0c0d0e02",
|
||||
"project_id": "00010203-0405-0607-0809-0a0b0c0d0e02",
|
||||
"temporary": false
|
||||
}
|
27
docs/api/examples/get_projectsprojectidiouvmsvmid.txt
Normal file
27
docs/api/examples/get_projectsprojectidiouvmsvmid.txt
Normal file
@ -0,0 +1,27 @@
|
||||
curl -i -X GET 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/c5c0075d-0b10-4401-8bed-d9897814237c'
|
||||
|
||||
GET /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/c5c0075d-0b10-4401-8bed-d9897814237c HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 200
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 409
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}
|
||||
|
||||
{
|
||||
"console": 2000,
|
||||
"ethernet_adapters": 2,
|
||||
"initial_config": null,
|
||||
"l1_keepalives": false,
|
||||
"name": "PC TEST 1",
|
||||
"nvram": 128,
|
||||
"path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-3783/test_iou_get0/iou.bin",
|
||||
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
|
||||
"ram": 256,
|
||||
"serial_adapters": 2,
|
||||
"vm_id": "c5c0075d-0b10-4401-8bed-d9897814237c"
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
curl -i -X GET 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/f7220f9c-3334-43e3-9ef4-37f09ba6fcab/initial_config'
|
||||
|
||||
GET /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/f7220f9c-3334-43e3-9ef4-37f09ba6fcab/initial_config HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 200
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 25
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/initial_config
|
||||
|
||||
{
|
||||
"content": "TEST"
|
||||
}
|
34
docs/api/examples/get_projectsprojectidqemuvmsvmid.txt
Normal file
34
docs/api/examples/get_projectsprojectidqemuvmsvmid.txt
Normal file
@ -0,0 +1,34 @@
|
||||
curl -i -X GET 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/4532d770-23a0-4858-bbab-d8a8b3a17deb'
|
||||
|
||||
GET /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/4532d770-23a0-4858-bbab-d8a8b3a17deb HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 200
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 566
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}
|
||||
|
||||
{
|
||||
"adapter_type": "e1000",
|
||||
"adapters": 1,
|
||||
"console": 2000,
|
||||
"cpu_throttling": 0,
|
||||
"hda_disk_image": "",
|
||||
"hdb_disk_image": "",
|
||||
"initrd": "",
|
||||
"kernel_command_line": "",
|
||||
"kernel_image": "",
|
||||
"legacy_networking": false,
|
||||
"monitor": 2001,
|
||||
"name": "PC TEST 1",
|
||||
"options": "",
|
||||
"process_priority": "low",
|
||||
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
|
||||
"qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmph25p8xei/qemu_x42",
|
||||
"ram": 256,
|
||||
"vm_id": "4532d770-23a0-4858-bbab-d8a8b3a17deb"
|
||||
}
|
26
docs/api/examples/get_projectsprojectidvirtualboxvmsvmid.txt
Normal file
26
docs/api/examples/get_projectsprojectidvirtualboxvmsvmid.txt
Normal file
@ -0,0 +1,26 @@
|
||||
curl -i -X GET 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/f526503a-8d24-4513-a5e3-1ebf4159aa70'
|
||||
|
||||
GET /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/f526503a-8d24-4513-a5e3-1ebf4159aa70 HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 200
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 347
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}
|
||||
|
||||
{
|
||||
"adapter_type": "Intel PRO/1000 MT Desktop (82540EM)",
|
||||
"adapters": 0,
|
||||
"console": 2001,
|
||||
"enable_remote_console": false,
|
||||
"headless": false,
|
||||
"name": "VMTEST",
|
||||
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
|
||||
"use_any_adapter": false,
|
||||
"vm_id": "f526503a-8d24-4513-a5e3-1ebf4159aa70",
|
||||
"vmname": "VMTEST"
|
||||
}
|
22
docs/api/examples/get_projectsprojectidvpcsvmsvmid.txt
Normal file
22
docs/api/examples/get_projectsprojectidvpcsvmsvmid.txt
Normal file
@ -0,0 +1,22 @@
|
||||
curl -i -X GET 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/6f3c227f-86f5-4f54-bc4b-74597744b904'
|
||||
|
||||
GET /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/6f3c227f-86f5-4f54-bc4b-74597744b904 HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 200
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 220
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}
|
||||
|
||||
{
|
||||
"console": 2009,
|
||||
"name": "PC TEST 1",
|
||||
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
|
||||
"startup_script": null,
|
||||
"startup_script_path": null,
|
||||
"vm_id": "6f3c227f-86f5-4f54-bc4b-74597744b904"
|
||||
}
|
24
docs/api/examples/get_qemubinaries.txt
Normal file
24
docs/api/examples/get_qemubinaries.txt
Normal file
@ -0,0 +1,24 @@
|
||||
curl -i -X GET 'http://localhost:8000/qemu/binaries'
|
||||
|
||||
GET /qemu/binaries HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 200
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 134
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/qemu/binaries
|
||||
|
||||
[
|
||||
{
|
||||
"path": "/tmp/1",
|
||||
"version": "2.2.0"
|
||||
},
|
||||
{
|
||||
"path": "/tmp/2",
|
||||
"version": "2.1.0"
|
||||
}
|
||||
]
|
17
docs/api/examples/get_version.txt
Normal file
17
docs/api/examples/get_version.txt
Normal file
@ -0,0 +1,17 @@
|
||||
curl -i -X GET 'http://localhost:8000/version'
|
||||
|
||||
GET /version HTTP/1.1
|
||||
|
||||
|
||||
|
||||
HTTP/1.1 200
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 29
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/version
|
||||
|
||||
{
|
||||
"version": "1.3.dev1"
|
||||
}
|
17
docs/api/examples/post_portsudp.txt
Normal file
17
docs/api/examples/post_portsudp.txt
Normal file
@ -0,0 +1,17 @@
|
||||
curl -i -X POST 'http://localhost:8000/ports/udp' -d '{}'
|
||||
|
||||
POST /ports/udp HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 201
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 25
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/ports/udp
|
||||
|
||||
{
|
||||
"udp_port": 10000
|
||||
}
|
20
docs/api/examples/post_projects.txt
Normal file
20
docs/api/examples/post_projects.txt
Normal file
@ -0,0 +1,20 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects' -d '{}'
|
||||
|
||||
POST /projects HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 201
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 277
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects
|
||||
|
||||
{
|
||||
"location": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmp4s49s4hy",
|
||||
"path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmp4s49s4hy/119348c0-fa80-4386-bf1e-b00755c9c6b4",
|
||||
"project_id": "119348c0-fa80-4386-bf1e-b00755c9c6b4",
|
||||
"temporary": false
|
||||
}
|
13
docs/api/examples/post_projectsprojectidclose.txt
Normal file
13
docs/api/examples/post_projectsprojectidclose.txt
Normal file
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/close' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/close HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/close
|
||||
|
13
docs/api/examples/post_projectsprojectidcommit.txt
Normal file
13
docs/api/examples/post_projectsprojectidcommit.txt
Normal file
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/commit' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/commit HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/commit
|
||||
|
36
docs/api/examples/post_projectsprojectidiouvms.txt
Normal file
36
docs/api/examples/post_projectsprojectidiouvms.txt
Normal file
@ -0,0 +1,36 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms' -d '{"ethernet_adapters": 0, "initial_config_content": "hostname test", "l1_keepalives": true, "name": "PC TEST 1", "nvram": 512, "path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-3783/test_iou_create_with_params0/iou.bin", "ram": 1024, "serial_adapters": 4}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms HTTP/1.1
|
||||
{
|
||||
"ethernet_adapters": 0,
|
||||
"initial_config_content": "hostname test",
|
||||
"l1_keepalives": true,
|
||||
"name": "PC TEST 1",
|
||||
"nvram": 512,
|
||||
"path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-3783/test_iou_create_with_params0/iou.bin",
|
||||
"ram": 1024,
|
||||
"serial_adapters": 4
|
||||
}
|
||||
|
||||
|
||||
HTTP/1.1 201
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 440
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/iou/vms
|
||||
|
||||
{
|
||||
"console": 2000,
|
||||
"ethernet_adapters": 0,
|
||||
"initial_config": "initial-config.cfg",
|
||||
"l1_keepalives": true,
|
||||
"name": "PC TEST 1",
|
||||
"nvram": 512,
|
||||
"path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-3783/test_iou_create_with_params0/iou.bin",
|
||||
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
|
||||
"ram": 1024,
|
||||
"serial_adapters": 4,
|
||||
"vm_id": "3c02aa01-46d2-4a62-97d6-dc5829afdf39"
|
||||
}
|
@ -0,0 +1,21 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/7f758868-46e1-4ef5-accc-f8e939a12471/adapters/1/ports/0/nio' -d '{"ethernet_device": "eth0", "type": "nio_generic_ethernet"}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/7f758868-46e1-4ef5-accc-f8e939a12471/adapters/1/ports/0/nio HTTP/1.1
|
||||
{
|
||||
"ethernet_device": "eth0",
|
||||
"type": "nio_generic_ethernet"
|
||||
}
|
||||
|
||||
|
||||
HTTP/1.1 201
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 69
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
|
||||
|
||||
{
|
||||
"ethernet_device": "eth0",
|
||||
"type": "nio_generic_ethernet"
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/c40daea2-2b38-4d14-a872-13c5f991cbc3/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/c40daea2-2b38-4d14-a872-13c5f991cbc3/adapters/0/ports/0/start_capture HTTP/1.1
|
||||
{
|
||||
"capture_file_name": "test.pcap",
|
||||
"data_link_type": "DLT_EN10MB"
|
||||
}
|
||||
|
||||
|
||||
HTTP/1.1 200
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 158
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture
|
||||
|
||||
{
|
||||
"pcap_file_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpn_q77wz2/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap"
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/550b8f35-e258-4354-a74c-cd35a48c08ed/adapters/0/ports/0/stop_capture' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/550b8f35-e258-4354-a74c-cd35a48c08ed/adapters/0/ports/0/stop_capture HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture
|
||||
|
13
docs/api/examples/post_projectsprojectidiouvmsvmidreload.txt
Normal file
13
docs/api/examples/post_projectsprojectidiouvmsvmidreload.txt
Normal file
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/d1b38099-46a3-4405-a354-85faeb76bd0e/reload' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/d1b38099-46a3-4405-a354-85faeb76bd0e/reload HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/reload
|
||||
|
13
docs/api/examples/post_projectsprojectidiouvmsvmidstart.txt
Normal file
13
docs/api/examples/post_projectsprojectidiouvmsvmidstart.txt
Normal file
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/fc1ea907-eb0b-4857-9ad2-759f780afdb4/start' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/fc1ea907-eb0b-4857-9ad2-759f780afdb4/start HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/start
|
||||
|
13
docs/api/examples/post_projectsprojectidiouvmsvmidstop.txt
Normal file
13
docs/api/examples/post_projectsprojectidiouvmsvmidstop.txt
Normal file
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/0228866f-a286-44e2-9688-a8cab4e75cc3/stop' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/0228866f-a286-44e2-9688-a8cab4e75cc3/stop HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/stop
|
||||
|
39
docs/api/examples/post_projectsprojectidqemuvms.txt
Normal file
39
docs/api/examples/post_projectsprojectidqemuvms.txt
Normal file
@ -0,0 +1,39 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms' -d '{"hda_disk_image": "hda", "name": "PC TEST 1", "qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmph25p8xei/qemu_x42", "ram": 1024}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms HTTP/1.1
|
||||
{
|
||||
"hda_disk_image": "hda",
|
||||
"name": "PC TEST 1",
|
||||
"qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmph25p8xei/qemu_x42",
|
||||
"ram": 1024
|
||||
}
|
||||
|
||||
|
||||
HTTP/1.1 201
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 570
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/qemu/vms
|
||||
|
||||
{
|
||||
"adapter_type": "e1000",
|
||||
"adapters": 1,
|
||||
"console": 2000,
|
||||
"cpu_throttling": 0,
|
||||
"hda_disk_image": "hda",
|
||||
"hdb_disk_image": "",
|
||||
"initrd": "",
|
||||
"kernel_command_line": "",
|
||||
"kernel_image": "",
|
||||
"legacy_networking": false,
|
||||
"monitor": 2001,
|
||||
"name": "PC TEST 1",
|
||||
"options": "",
|
||||
"process_priority": "low",
|
||||
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
|
||||
"qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmph25p8xei/qemu_x42",
|
||||
"ram": 1024,
|
||||
"vm_id": "4e47d2c8-d591-4508-9c3e-00e366f7c22d"
|
||||
}
|
@ -0,0 +1,21 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/e4ac8960-f709-4e28-bc6c-3b2593b622e9/adapters/1/ports/0/nio' -d '{"ethernet_device": "eth0", "type": "nio_generic_ethernet"}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/e4ac8960-f709-4e28-bc6c-3b2593b622e9/adapters/1/ports/0/nio HTTP/1.1
|
||||
{
|
||||
"ethernet_device": "eth0",
|
||||
"type": "nio_generic_ethernet"
|
||||
}
|
||||
|
||||
|
||||
HTTP/1.1 201
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 69
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
|
||||
|
||||
{
|
||||
"ethernet_device": "eth0",
|
||||
"type": "nio_generic_ethernet"
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/2a143130-2445-4a4b-9ba2-f49071eed5f4/reload' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/2a143130-2445-4a4b-9ba2-f49071eed5f4/reload HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}/reload
|
||||
|
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/9272bffc-7a73-449a-aa71-96c48b1e5a3d/resume' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/9272bffc-7a73-449a-aa71-96c48b1e5a3d/resume HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}/resume
|
||||
|
13
docs/api/examples/post_projectsprojectidqemuvmsvmidstart.txt
Normal file
13
docs/api/examples/post_projectsprojectidqemuvmsvmidstart.txt
Normal file
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/e4f04682-d749-49c8-be3e-8c4752483cc1/start' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/e4f04682-d749-49c8-be3e-8c4752483cc1/start HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}/start
|
||||
|
13
docs/api/examples/post_projectsprojectidqemuvmsvmidstop.txt
Normal file
13
docs/api/examples/post_projectsprojectidqemuvmsvmidstop.txt
Normal file
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/1cb28121-2b13-4c53-a0fc-ab8c6d028d0f/stop' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/1cb28121-2b13-4c53-a0fc-ab8c6d028d0f/stop HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}/stop
|
||||
|
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/777077ba-025a-49dc-9773-cedc425bdb6d/suspend' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/777077ba-025a-49dc-9773-cedc425bdb6d/suspend HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}/suspend
|
||||
|
30
docs/api/examples/post_projectsprojectidvirtualboxvms.txt
Normal file
30
docs/api/examples/post_projectsprojectidvirtualboxvms.txt
Normal file
@ -0,0 +1,30 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms' -d '{"linked_clone": false, "name": "VM1", "vmname": "VM1"}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms HTTP/1.1
|
||||
{
|
||||
"linked_clone": false,
|
||||
"name": "VM1",
|
||||
"vmname": "VM1"
|
||||
}
|
||||
|
||||
|
||||
HTTP/1.1 201
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 341
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms
|
||||
|
||||
{
|
||||
"adapter_type": "Intel PRO/1000 MT Desktop (82540EM)",
|
||||
"adapters": 0,
|
||||
"console": 2000,
|
||||
"enable_remote_console": false,
|
||||
"headless": false,
|
||||
"name": "VM1",
|
||||
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
|
||||
"use_any_adapter": false,
|
||||
"vm_id": "1404a6c5-c0f5-4bc6-bb94-477d7e631781",
|
||||
"vmname": "VM1"
|
||||
}
|
@ -0,0 +1,25 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/bd0d175c-2055-4315-86d1-07494696d42e/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/bd0d175c-2055-4315-86d1-07494696d42e/adapters/0/ports/0/nio HTTP/1.1
|
||||
{
|
||||
"lport": 4242,
|
||||
"rhost": "127.0.0.1",
|
||||
"rport": 4343,
|
||||
"type": "nio_udp"
|
||||
}
|
||||
|
||||
|
||||
HTTP/1.1 201
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 89
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
|
||||
|
||||
{
|
||||
"lport": 4242,
|
||||
"rhost": "127.0.0.1",
|
||||
"rport": 4343,
|
||||
"type": "nio_udp"
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/4c9fdef4-8990-44a1-8a98-1b7c510821ee/reload' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/4c9fdef4-8990-44a1-8a98-1b7c510821ee/reload HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}/reload
|
||||
|
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/f6487814-a3a9-4e82-867c-83662c7bed48/resume' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/f6487814-a3a9-4e82-867c-83662c7bed48/resume HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}/resume
|
||||
|
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/bedd61d4-b264-47d9-b290-920d5ba70f6d/start' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/bedd61d4-b264-47d9-b290-920d5ba70f6d/start HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}/start
|
||||
|
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/a1960146-9be9-4f54-b594-67a6ab40f436/stop' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/a1960146-9be9-4f54-b594-67a6ab40f436/stop HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}/stop
|
||||
|
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/4d16597f-fa75-430a-9b94-faf7f93bb0a3/suspend' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/4d16597f-fa75-430a-9b94-faf7f93bb0a3/suspend HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}/suspend
|
||||
|
24
docs/api/examples/post_projectsprojectidvpcsvms.txt
Normal file
24
docs/api/examples/post_projectsprojectidvpcsvms.txt
Normal file
@ -0,0 +1,24 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms' -d '{"name": "PC TEST 1"}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms HTTP/1.1
|
||||
{
|
||||
"name": "PC TEST 1"
|
||||
}
|
||||
|
||||
|
||||
HTTP/1.1 201
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 220
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/vpcs/vms
|
||||
|
||||
{
|
||||
"console": 2009,
|
||||
"name": "PC TEST 1",
|
||||
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
|
||||
"startup_script": null,
|
||||
"startup_script_path": null,
|
||||
"vm_id": "b0d1df2e-ebd1-4783-bb62-871e24f01543"
|
||||
}
|
@ -0,0 +1,25 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/385d80e1-193c-4b38-bf55-5185ffd6b473/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/385d80e1-193c-4b38-bf55-5185ffd6b473/adapters/0/ports/0/nio HTTP/1.1
|
||||
{
|
||||
"lport": 4242,
|
||||
"rhost": "127.0.0.1",
|
||||
"rport": 4343,
|
||||
"type": "nio_udp"
|
||||
}
|
||||
|
||||
|
||||
HTTP/1.1 201
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 89
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
|
||||
|
||||
{
|
||||
"lport": 4242,
|
||||
"rhost": "127.0.0.1",
|
||||
"rport": 4343,
|
||||
"type": "nio_udp"
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/b12c5612-147d-4229-86ca-103174ba8fd1/reload' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/b12c5612-147d-4229-86ca-103174ba8fd1/reload HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}/reload
|
||||
|
13
docs/api/examples/post_projectsprojectidvpcsvmsvmidstart.txt
Normal file
13
docs/api/examples/post_projectsprojectidvpcsvmsvmidstart.txt
Normal file
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/01037fd2-9533-42db-bd19-df5b21e47fcf/start' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/01037fd2-9533-42db-bd19-df5b21e47fcf/start HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}/start
|
||||
|
13
docs/api/examples/post_projectsprojectidvpcsvmsvmidstop.txt
Normal file
13
docs/api/examples/post_projectsprojectidvpcsvmsvmidstop.txt
Normal file
@ -0,0 +1,13 @@
|
||||
curl -i -X POST 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/20eefc85-f1b6-4e36-9601-cd0dc91faaa0/stop' -d '{}'
|
||||
|
||||
POST /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/20eefc85-f1b6-4e36-9601-cd0dc91faaa0/stop HTTP/1.1
|
||||
{}
|
||||
|
||||
|
||||
HTTP/1.1 204
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 0
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}/stop
|
||||
|
19
docs/api/examples/post_version.txt
Normal file
19
docs/api/examples/post_version.txt
Normal file
@ -0,0 +1,19 @@
|
||||
curl -i -X POST 'http://localhost:8000/version' -d '{"version": "1.3.dev1"}'
|
||||
|
||||
POST /version HTTP/1.1
|
||||
{
|
||||
"version": "1.3.dev1"
|
||||
}
|
||||
|
||||
|
||||
HTTP/1.1 200
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 29
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/version
|
||||
|
||||
{
|
||||
"version": "1.3.dev1"
|
||||
}
|
20
docs/api/examples/put_projectsprojectid.txt
Normal file
20
docs/api/examples/put_projectsprojectid.txt
Normal file
@ -0,0 +1,20 @@
|
||||
curl -i -X PUT 'http://localhost:8000/projects/ef58b29e-59df-42c0-9492-5a766a13cb62' -d '{"path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-3783/test_update_path_project_non_l0"}'
|
||||
|
||||
PUT /projects/ef58b29e-59df-42c0-9492-5a766a13cb62 HTTP/1.1
|
||||
{
|
||||
"path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-3783/test_update_path_project_non_l0"
|
||||
}
|
||||
|
||||
|
||||
HTTP/1.1 403
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 100
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}
|
||||
|
||||
{
|
||||
"message": "You are not allowed to modify the project directory location",
|
||||
"status": 403
|
||||
}
|
36
docs/api/examples/put_projectsprojectidiouvmsvmid.txt
Normal file
36
docs/api/examples/put_projectsprojectidiouvmsvmid.txt
Normal file
@ -0,0 +1,36 @@
|
||||
curl -i -X PUT 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/324dab07-d86c-4a3b-8390-7a8e9a506006' -d '{"console": 2001, "ethernet_adapters": 4, "initial_config_content": "hostname test", "l1_keepalives": true, "name": "test", "nvram": 2048, "ram": 512, "serial_adapters": 0}'
|
||||
|
||||
PUT /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/324dab07-d86c-4a3b-8390-7a8e9a506006 HTTP/1.1
|
||||
{
|
||||
"console": 2001,
|
||||
"ethernet_adapters": 4,
|
||||
"initial_config_content": "hostname test",
|
||||
"l1_keepalives": true,
|
||||
"name": "test",
|
||||
"nvram": 2048,
|
||||
"ram": 512,
|
||||
"serial_adapters": 0
|
||||
}
|
||||
|
||||
|
||||
HTTP/1.1 200
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 423
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}
|
||||
|
||||
{
|
||||
"console": 2001,
|
||||
"ethernet_adapters": 4,
|
||||
"initial_config": "initial-config.cfg",
|
||||
"l1_keepalives": true,
|
||||
"name": "test",
|
||||
"nvram": 2048,
|
||||
"path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-3783/test_iou_update0/iou.bin",
|
||||
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
|
||||
"ram": 512,
|
||||
"serial_adapters": 0,
|
||||
"vm_id": "324dab07-d86c-4a3b-8390-7a8e9a506006"
|
||||
}
|
39
docs/api/examples/put_projectsprojectidqemuvmsvmid.txt
Normal file
39
docs/api/examples/put_projectsprojectidqemuvmsvmid.txt
Normal file
@ -0,0 +1,39 @@
|
||||
curl -i -X PUT 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/a68a00de-a264-4cc0-821c-301af5059ea4' -d '{"console": 2002, "hdb_disk_image": "hdb", "name": "test", "ram": 1024}'
|
||||
|
||||
PUT /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/a68a00de-a264-4cc0-821c-301af5059ea4 HTTP/1.1
|
||||
{
|
||||
"console": 2002,
|
||||
"hdb_disk_image": "hdb",
|
||||
"name": "test",
|
||||
"ram": 1024
|
||||
}
|
||||
|
||||
|
||||
HTTP/1.1 200
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 565
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}
|
||||
|
||||
{
|
||||
"adapter_type": "e1000",
|
||||
"adapters": 1,
|
||||
"console": 2002,
|
||||
"cpu_throttling": 0,
|
||||
"hda_disk_image": "",
|
||||
"hdb_disk_image": "hdb",
|
||||
"initrd": "",
|
||||
"kernel_command_line": "",
|
||||
"kernel_image": "",
|
||||
"legacy_networking": false,
|
||||
"monitor": 2001,
|
||||
"name": "test",
|
||||
"options": "",
|
||||
"process_priority": "low",
|
||||
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
|
||||
"qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmph25p8xei/qemu_x42",
|
||||
"ram": 1024,
|
||||
"vm_id": "a68a00de-a264-4cc0-821c-301af5059ea4"
|
||||
}
|
29
docs/api/examples/put_projectsprojectidvirtualboxvmsvmid.txt
Normal file
29
docs/api/examples/put_projectsprojectidvirtualboxvmsvmid.txt
Normal file
@ -0,0 +1,29 @@
|
||||
curl -i -X PUT 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/4a6375b9-14b8-406c-ae8e-df6d242088f9' -d '{"console": 2010, "name": "test"}'
|
||||
|
||||
PUT /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/4a6375b9-14b8-406c-ae8e-df6d242088f9 HTTP/1.1
|
||||
{
|
||||
"console": 2010,
|
||||
"name": "test"
|
||||
}
|
||||
|
||||
|
||||
HTTP/1.1 200
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 345
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}
|
||||
|
||||
{
|
||||
"adapter_type": "Intel PRO/1000 MT Desktop (82540EM)",
|
||||
"adapters": 0,
|
||||
"console": 2010,
|
||||
"enable_remote_console": false,
|
||||
"headless": false,
|
||||
"name": "test",
|
||||
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
|
||||
"use_any_adapter": false,
|
||||
"vm_id": "4a6375b9-14b8-406c-ae8e-df6d242088f9",
|
||||
"vmname": "VMTEST"
|
||||
}
|
26
docs/api/examples/put_projectsprojectidvpcsvmsvmid.txt
Normal file
26
docs/api/examples/put_projectsprojectidvpcsvmsvmid.txt
Normal file
@ -0,0 +1,26 @@
|
||||
curl -i -X PUT 'http://localhost:8000/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/39951883-cbfb-4aff-9cbc-06895749e571' -d '{"console": 2011, "name": "test", "startup_script": "ip 192.168.1.1"}'
|
||||
|
||||
PUT /projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/39951883-cbfb-4aff-9cbc-06895749e571 HTTP/1.1
|
||||
{
|
||||
"console": 2011,
|
||||
"name": "test",
|
||||
"startup_script": "ip 192.168.1.1"
|
||||
}
|
||||
|
||||
|
||||
HTTP/1.1 200
|
||||
CONNECTION: keep-alive
|
||||
CONTENT-LENGTH: 236
|
||||
CONTENT-TYPE: application/json
|
||||
DATE: Thu, 08 Jan 2015 16:09:15 GMT
|
||||
SERVER: Python/3.4 GNS3/1.3.dev1
|
||||
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}
|
||||
|
||||
{
|
||||
"console": 2011,
|
||||
"name": "test",
|
||||
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
|
||||
"startup_script": "ip 192.168.1.1",
|
||||
"startup_script_path": "startup.vpc",
|
||||
"vm_id": "39951883-cbfb-4aff-9cbc-06895749e571"
|
||||
}
|
8
docs/api/v1/dynamips_device.rst
Normal file
8
docs/api/v1/dynamips_device.rst
Normal file
@ -0,0 +1,8 @@
|
||||
Dynamips device
|
||||
---------------------
|
||||
|
||||
.. toctree::
|
||||
:glob:
|
||||
:maxdepth: 2
|
||||
|
||||
dynamips_device/*
|
@ -0,0 +1,43 @@
|
||||
/v1/projects/{project_id}/dynamips/devices
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/dynamips/devices
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Create a new Dynamips device instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **201**: Instance created
|
||||
- **409**: Conflict
|
||||
|
||||
Input
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>device_id</td> <td> </td> <td>string</td> <td>Dynamips device instance identifier</td> </tr>
|
||||
<tr><td>device_type</td> <td>✔</td> <td>string</td> <td>Dynamips device type</td> </tr>
|
||||
<tr><td>name</td> <td>✔</td> <td>string</td> <td>Dynamips device name</td> </tr>
|
||||
</table>
|
||||
|
||||
Output
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>device_id</td> <td>✔</td> <td>string</td> <td>Dynamips router instance UUID</td> </tr>
|
||||
<tr><td>mappings</td> <td> </td> <td>object</td> <td></td> </tr>
|
||||
<tr><td>name</td> <td>✔</td> <td>string</td> <td>Dynamips device instance name</td> </tr>
|
||||
<tr><td>ports</td> <td> </td> <td>array</td> <td></td> </tr>
|
||||
<tr><td>project_id</td> <td>✔</td> <td>string</td> <td>Project UUID</td> </tr>
|
||||
</table>
|
||||
|
@ -0,0 +1,106 @@
|
||||
/v1/projects/{project_id}/dynamips/devices/{device_id}
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
GET /v1/projects/**{project_id}**/dynamips/devices/**{device_id}**
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Get a Dynamips device instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **device_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **200**: Success
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
|
||||
Output
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>device_id</td> <td>✔</td> <td>string</td> <td>Dynamips router instance UUID</td> </tr>
|
||||
<tr><td>mappings</td> <td> </td> <td>object</td> <td></td> </tr>
|
||||
<tr><td>name</td> <td>✔</td> <td>string</td> <td>Dynamips device instance name</td> </tr>
|
||||
<tr><td>ports</td> <td> </td> <td>array</td> <td></td> </tr>
|
||||
<tr><td>project_id</td> <td>✔</td> <td>string</td> <td>Project UUID</td> </tr>
|
||||
</table>
|
||||
|
||||
|
||||
PUT /v1/projects/**{project_id}**/dynamips/devices/**{device_id}**
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Update a Dynamips device instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **device_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **200**: Instance updated
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **409**: Conflict
|
||||
|
||||
Input
|
||||
*******
|
||||
Types
|
||||
+++++++++
|
||||
EthernetSwitchPort
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
Ethernet switch port
|
||||
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>port</td> <td>✔</td> <td>integer</td> <td>Port number</td> </tr>
|
||||
<tr><td>type</td> <td>✔</td> <td>enum</td> <td>Possible values: access, dot1q, qinq</td> </tr>
|
||||
<tr><td>vlan</td> <td>✔</td> <td>integer</td> <td>VLAN number</td> </tr>
|
||||
</table>
|
||||
|
||||
Body
|
||||
+++++++++
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>name</td> <td> </td> <td>string</td> <td>Dynamips device instance name</td> </tr>
|
||||
<tr><td>ports</td> <td> </td> <td>array</td> <td></td> </tr>
|
||||
</table>
|
||||
|
||||
Output
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>device_id</td> <td>✔</td> <td>string</td> <td>Dynamips router instance UUID</td> </tr>
|
||||
<tr><td>mappings</td> <td> </td> <td>object</td> <td></td> </tr>
|
||||
<tr><td>name</td> <td>✔</td> <td>string</td> <td>Dynamips device instance name</td> </tr>
|
||||
<tr><td>ports</td> <td> </td> <td>array</td> <td></td> </tr>
|
||||
<tr><td>project_id</td> <td>✔</td> <td>string</td> <td>Project UUID</td> </tr>
|
||||
</table>
|
||||
|
||||
|
||||
DELETE /v1/projects/**{project_id}**/dynamips/devices/**{device_id}**
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Delete a Dynamips device instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **device_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **204**: Instance deleted
|
||||
|
@ -0,0 +1,140 @@
|
||||
/v1/projects/{project_id}/dynamips/devices/{device_id}/ports/{port_number:\d+}/nio
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/dynamips/devices/**{device_id}**/ports/**{port_number:\d+}**/nio
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Add a NIO to a Dynamips device instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **device_id**: UUID for the instance
|
||||
- **port_number**: Port on the device
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **201**: NIO created
|
||||
- **404**: Instance doesn't exist
|
||||
|
||||
Input
|
||||
*******
|
||||
Types
|
||||
+++++++++
|
||||
Ethernet
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
Generic Ethernet Network Input/Output
|
||||
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>ethernet_device</td> <td>✔</td> <td>string</td> <td>Ethernet device name e.g. eth0</td> </tr>
|
||||
<tr><td>type</td> <td>✔</td> <td>enum</td> <td>Possible values: nio_generic_ethernet</td> </tr>
|
||||
</table>
|
||||
|
||||
LinuxEthernet
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
Linux Ethernet Network Input/Output
|
||||
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>ethernet_device</td> <td>✔</td> <td>string</td> <td>Ethernet device name e.g. eth0</td> </tr>
|
||||
<tr><td>type</td> <td>✔</td> <td>enum</td> <td>Possible values: nio_linux_ethernet</td> </tr>
|
||||
</table>
|
||||
|
||||
NULL
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
NULL Network Input/Output
|
||||
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>type</td> <td>✔</td> <td>enum</td> <td>Possible values: nio_null</td> </tr>
|
||||
</table>
|
||||
|
||||
TAP
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
TAP Network Input/Output
|
||||
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>tap_device</td> <td>✔</td> <td>string</td> <td>TAP device name e.g. tap0</td> </tr>
|
||||
<tr><td>type</td> <td>✔</td> <td>enum</td> <td>Possible values: nio_tap</td> </tr>
|
||||
</table>
|
||||
|
||||
UDP
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
UDP Network Input/Output
|
||||
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>lport</td> <td>✔</td> <td>integer</td> <td>Local port</td> </tr>
|
||||
<tr><td>rhost</td> <td>✔</td> <td>string</td> <td>Remote host</td> </tr>
|
||||
<tr><td>rport</td> <td>✔</td> <td>integer</td> <td>Remote port</td> </tr>
|
||||
<tr><td>type</td> <td>✔</td> <td>enum</td> <td>Possible values: nio_udp</td> </tr>
|
||||
</table>
|
||||
|
||||
UNIX
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
UNIX Network Input/Output
|
||||
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>local_file</td> <td>✔</td> <td>string</td> <td>path to the UNIX socket file (local)</td> </tr>
|
||||
<tr><td>remote_file</td> <td>✔</td> <td>string</td> <td>path to the UNIX socket file (remote)</td> </tr>
|
||||
<tr><td>type</td> <td>✔</td> <td>enum</td> <td>Possible values: nio_unix</td> </tr>
|
||||
</table>
|
||||
|
||||
VDE
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
VDE Network Input/Output
|
||||
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>control_file</td> <td>✔</td> <td>string</td> <td>path to the VDE control file</td> </tr>
|
||||
<tr><td>local_file</td> <td>✔</td> <td>string</td> <td>path to the VDE control file</td> </tr>
|
||||
<tr><td>type</td> <td>✔</td> <td>enum</td> <td>Possible values: nio_vde</td> </tr>
|
||||
</table>
|
||||
|
||||
Body
|
||||
+++++++++
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>mappings</td> <td> </td> <td>object</td> <td></td> </tr>
|
||||
<tr><td>nio</td> <td>✔</td> <td>UDP, Ethernet, LinuxEthernet, TAP, UNIX, VDE, NULL</td> <td></td> </tr>
|
||||
<tr><td>port_settings</td> <td> </td> <td>object</td> <td>Ethernet switch</td> </tr>
|
||||
</table>
|
||||
|
||||
|
||||
DELETE /v1/projects/**{project_id}**/dynamips/devices/**{device_id}**/ports/**{port_number:\d+}**/nio
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Remove a NIO from a Dynamips device instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **device_id**: UUID for the instance
|
||||
- **port_number**: Port on the device
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **204**: NIO deleted
|
||||
|
@ -0,0 +1,31 @@
|
||||
/v1/projects/{project_id}/dynamips/devices/{device_id}/ports/{port_number:\d+}/start_capture
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/dynamips/devices/**{device_id}**/ports/**{port_number:\d+}**/start_capture
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Start a packet capture on a Dynamips device instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **device_id**: UUID for the instance
|
||||
- **port_number**: Port on the device
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **200**: Capture started
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
|
||||
Input
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>capture_file_name</td> <td>✔</td> <td>string</td> <td>Capture file name</td> </tr>
|
||||
<tr><td>data_link_type</td> <td>✔</td> <td>string</td> <td>PCAP data link type</td> </tr>
|
||||
</table>
|
||||
|
@ -0,0 +1,21 @@
|
||||
/v1/projects/{project_id}/dynamips/devices/{device_id}/ports/{port_number:\d+}/stop_capture
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/dynamips/devices/**{device_id}**/ports/**{port_number:\d+}**/stop_capture
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Stop a packet capture on a Dynamips device instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **device_id**: UUID for the instance
|
||||
- **port_number**: Port on the device
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **204**: Capture stopped
|
||||
|
8
docs/api/v1/dynamips_vm.rst
Normal file
8
docs/api/v1/dynamips_vm.rst
Normal file
@ -0,0 +1,8 @@
|
||||
Dynamips vm
|
||||
---------------------
|
||||
|
||||
.. toctree::
|
||||
:glob:
|
||||
:maxdepth: 2
|
||||
|
||||
dynamips_vm/*
|
120
docs/api/v1/dynamips_vm/projectsprojectiddynamipsvms.rst
Normal file
120
docs/api/v1/dynamips_vm/projectsprojectiddynamipsvms.rst
Normal file
@ -0,0 +1,120 @@
|
||||
/v1/projects/{project_id}/dynamips/vms
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/dynamips/vms
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Create a new Dynamips VM instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **201**: Instance created
|
||||
- **409**: Conflict
|
||||
|
||||
Input
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>aux</td> <td> </td> <td>integer</td> <td>auxiliary console TCP port</td> </tr>
|
||||
<tr><td>chassis</td> <td> </td> <td>string</td> <td>router chassis model</td> </tr>
|
||||
<tr><td>clock_divisor</td> <td> </td> <td>integer</td> <td>clock divisor</td> </tr>
|
||||
<tr><td>confreg</td> <td> </td> <td>string</td> <td>configuration register</td> </tr>
|
||||
<tr><td>console</td> <td> </td> <td>integer</td> <td>console TCP port</td> </tr>
|
||||
<tr><td>disk0</td> <td> </td> <td>integer</td> <td>disk0 size in MB</td> </tr>
|
||||
<tr><td>disk1</td> <td> </td> <td>integer</td> <td>disk1 size in MB</td> </tr>
|
||||
<tr><td>dynamips_id</td> <td> </td> <td>integer</td> <td>ID to use with Dynamips</td> </tr>
|
||||
<tr><td>exec_area</td> <td> </td> <td>integer</td> <td>exec area value</td> </tr>
|
||||
<tr><td>idlemax</td> <td> </td> <td>integer</td> <td>idlemax value</td> </tr>
|
||||
<tr><td>idlepc</td> <td> </td> <td>string</td> <td>Idle-PC value</td> </tr>
|
||||
<tr><td>idlesleep</td> <td> </td> <td>integer</td> <td>idlesleep value</td> </tr>
|
||||
<tr><td>image</td> <td>✔</td> <td>string</td> <td>path to the IOS image</td> </tr>
|
||||
<tr><td>iomem</td> <td> </td> <td>integer</td> <td>I/O memory percentage</td> </tr>
|
||||
<tr><td>mac_addr</td> <td> </td> <td>string</td> <td>base MAC address</td> </tr>
|
||||
<tr><td>midplane</td> <td> </td> <td>enum</td> <td>Possible values: std, vxr</td> </tr>
|
||||
<tr><td>mmap</td> <td> </td> <td>boolean</td> <td>MMAP feature</td> </tr>
|
||||
<tr><td>name</td> <td>✔</td> <td>string</td> <td>Dynamips VM instance name</td> </tr>
|
||||
<tr><td>npe</td> <td> </td> <td>enum</td> <td>Possible values: npe-100, npe-150, npe-175, npe-200, npe-225, npe-300, npe-400, npe-g2</td> </tr>
|
||||
<tr><td>nvram</td> <td> </td> <td>integer</td> <td>amount of NVRAM in KB</td> </tr>
|
||||
<tr><td>platform</td> <td>✔</td> <td>string</td> <td>platform</td> </tr>
|
||||
<tr><td>power_supplies</td> <td> </td> <td>array</td> <td>Power supplies status</td> </tr>
|
||||
<tr><td>private_config</td> <td> </td> <td>string</td> <td>path to the IOS private configuration file</td> </tr>
|
||||
<tr><td>private_config_base64</td> <td> </td> <td>string</td> <td>private configuration base64 encoded</td> </tr>
|
||||
<tr><td>private_config_content</td> <td> </td> <td>string</td> <td>Content of IOS private configuration file</td> </tr>
|
||||
<tr><td>ram</td> <td>✔</td> <td>integer</td> <td>amount of RAM in MB</td> </tr>
|
||||
<tr><td>sensors</td> <td> </td> <td>array</td> <td>Temperature sensors</td> </tr>
|
||||
<tr><td>slot0</td> <td> </td> <td></td> <td>Network module slot 0</td> </tr>
|
||||
<tr><td>slot1</td> <td> </td> <td></td> <td>Network module slot 1</td> </tr>
|
||||
<tr><td>slot2</td> <td> </td> <td></td> <td>Network module slot 2</td> </tr>
|
||||
<tr><td>slot3</td> <td> </td> <td></td> <td>Network module slot 3</td> </tr>
|
||||
<tr><td>slot4</td> <td> </td> <td></td> <td>Network module slot 4</td> </tr>
|
||||
<tr><td>slot5</td> <td> </td> <td></td> <td>Network module slot 5</td> </tr>
|
||||
<tr><td>slot6</td> <td> </td> <td></td> <td>Network module slot 6</td> </tr>
|
||||
<tr><td>sparsemem</td> <td> </td> <td>boolean</td> <td>sparse memory feature</td> </tr>
|
||||
<tr><td>startup_config</td> <td> </td> <td>string</td> <td>path to the IOS startup configuration file</td> </tr>
|
||||
<tr><td>startup_config_base64</td> <td> </td> <td>string</td> <td>startup configuration base64 encoded</td> </tr>
|
||||
<tr><td>startup_config_content</td> <td> </td> <td>string</td> <td>Content of IOS startup configuration file</td> </tr>
|
||||
<tr><td>system_id</td> <td> </td> <td>string</td> <td>system ID</td> </tr>
|
||||
<tr><td>vm_id</td> <td> </td> <td></td> <td>Dynamips VM instance identifier</td> </tr>
|
||||
<tr><td>wic0</td> <td> </td> <td></td> <td>Network module WIC slot 0</td> </tr>
|
||||
<tr><td>wic1</td> <td> </td> <td></td> <td>Network module WIC slot 0</td> </tr>
|
||||
<tr><td>wic2</td> <td> </td> <td></td> <td>Network module WIC slot 0</td> </tr>
|
||||
</table>
|
||||
|
||||
Output
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>aux</td> <td> </td> <td>integer</td> <td>auxiliary console TCP port</td> </tr>
|
||||
<tr><td>chassis</td> <td> </td> <td>string</td> <td>router chassis model</td> </tr>
|
||||
<tr><td>clock_divisor</td> <td> </td> <td>integer</td> <td>clock divisor</td> </tr>
|
||||
<tr><td>confreg</td> <td> </td> <td>string</td> <td>configuration register</td> </tr>
|
||||
<tr><td>console</td> <td> </td> <td>integer</td> <td>console TCP port</td> </tr>
|
||||
<tr><td>disk0</td> <td> </td> <td>integer</td> <td>disk0 size in MB</td> </tr>
|
||||
<tr><td>disk1</td> <td> </td> <td>integer</td> <td>disk1 size in MB</td> </tr>
|
||||
<tr><td>dynamips_id</td> <td>✔</td> <td>integer</td> <td>ID to use with Dynamips</td> </tr>
|
||||
<tr><td>exec_area</td> <td> </td> <td>integer</td> <td>exec area value</td> </tr>
|
||||
<tr><td>idlemax</td> <td> </td> <td>integer</td> <td>idlemax value</td> </tr>
|
||||
<tr><td>idlepc</td> <td> </td> <td>string</td> <td>Idle-PC value</td> </tr>
|
||||
<tr><td>idlesleep</td> <td> </td> <td>integer</td> <td>idlesleep value</td> </tr>
|
||||
<tr><td>image</td> <td> </td> <td>string</td> <td>path to the IOS image</td> </tr>
|
||||
<tr><td>iomem</td> <td> </td> <td>integer</td> <td>I/O memory percentage</td> </tr>
|
||||
<tr><td>mac_addr</td> <td> </td> <td>string</td> <td>base MAC address</td> </tr>
|
||||
<tr><td>midplane</td> <td> </td> <td>enum</td> <td>Possible values: std, vxr</td> </tr>
|
||||
<tr><td>mmap</td> <td> </td> <td>boolean</td> <td>MMAP feature</td> </tr>
|
||||
<tr><td>name</td> <td>✔</td> <td>string</td> <td>Dynamips VM instance name</td> </tr>
|
||||
<tr><td>npe</td> <td> </td> <td>enum</td> <td>Possible values: npe-100, npe-150, npe-175, npe-200, npe-225, npe-300, npe-400, npe-g2</td> </tr>
|
||||
<tr><td>nvram</td> <td> </td> <td>integer</td> <td>amount of NVRAM in KB</td> </tr>
|
||||
<tr><td>platform</td> <td> </td> <td>string</td> <td>platform</td> </tr>
|
||||
<tr><td>power_supplies</td> <td> </td> <td>array</td> <td>Power supplies status</td> </tr>
|
||||
<tr><td>private_config</td> <td> </td> <td>string</td> <td>path to the IOS private configuration file</td> </tr>
|
||||
<tr><td>private_config_base64</td> <td> </td> <td>string</td> <td>private configuration base64 encoded</td> </tr>
|
||||
<tr><td>project_id</td> <td>✔</td> <td>string</td> <td>Project UUID</td> </tr>
|
||||
<tr><td>ram</td> <td> </td> <td>integer</td> <td>amount of RAM in MB</td> </tr>
|
||||
<tr><td>sensors</td> <td> </td> <td>array</td> <td>Temperature sensors</td> </tr>
|
||||
<tr><td>slot0</td> <td> </td> <td></td> <td>Network module slot 0</td> </tr>
|
||||
<tr><td>slot1</td> <td> </td> <td></td> <td>Network module slot 1</td> </tr>
|
||||
<tr><td>slot2</td> <td> </td> <td></td> <td>Network module slot 2</td> </tr>
|
||||
<tr><td>slot3</td> <td> </td> <td></td> <td>Network module slot 3</td> </tr>
|
||||
<tr><td>slot4</td> <td> </td> <td></td> <td>Network module slot 4</td> </tr>
|
||||
<tr><td>slot5</td> <td> </td> <td></td> <td>Network module slot 5</td> </tr>
|
||||
<tr><td>slot6</td> <td> </td> <td></td> <td>Network module slot 6</td> </tr>
|
||||
<tr><td>sparsemem</td> <td> </td> <td>boolean</td> <td>sparse memory feature</td> </tr>
|
||||
<tr><td>startup_config</td> <td> </td> <td>string</td> <td>path to the IOS startup configuration file</td> </tr>
|
||||
<tr><td>startup_config_base64</td> <td> </td> <td>string</td> <td>startup configuration base64 encoded</td> </tr>
|
||||
<tr><td>system_id</td> <td> </td> <td>string</td> <td>system ID</td> </tr>
|
||||
<tr><td>vm_id</td> <td>✔</td> <td>string</td> <td>Dynamips router instance UUID</td> </tr>
|
||||
<tr><td>wic0</td> <td> </td> <td></td> <td>Network module WIC slot 0</td> </tr>
|
||||
<tr><td>wic1</td> <td> </td> <td></td> <td>Network module WIC slot 0</td> </tr>
|
||||
<tr><td>wic2</td> <td> </td> <td></td> <td>Network module WIC slot 0</td> </tr>
|
||||
</table>
|
||||
|
202
docs/api/v1/dynamips_vm/projectsprojectiddynamipsvmsvmid.rst
Normal file
202
docs/api/v1/dynamips_vm/projectsprojectiddynamipsvmsvmid.rst
Normal file
@ -0,0 +1,202 @@
|
||||
/v1/projects/{project_id}/dynamips/vms/{vm_id}
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
GET /v1/projects/**{project_id}**/dynamips/vms/**{vm_id}**
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Get a Dynamips VM instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **200**: Success
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
|
||||
Output
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>aux</td> <td> </td> <td>integer</td> <td>auxiliary console TCP port</td> </tr>
|
||||
<tr><td>chassis</td> <td> </td> <td>string</td> <td>router chassis model</td> </tr>
|
||||
<tr><td>clock_divisor</td> <td> </td> <td>integer</td> <td>clock divisor</td> </tr>
|
||||
<tr><td>confreg</td> <td> </td> <td>string</td> <td>configuration register</td> </tr>
|
||||
<tr><td>console</td> <td> </td> <td>integer</td> <td>console TCP port</td> </tr>
|
||||
<tr><td>disk0</td> <td> </td> <td>integer</td> <td>disk0 size in MB</td> </tr>
|
||||
<tr><td>disk1</td> <td> </td> <td>integer</td> <td>disk1 size in MB</td> </tr>
|
||||
<tr><td>dynamips_id</td> <td>✔</td> <td>integer</td> <td>ID to use with Dynamips</td> </tr>
|
||||
<tr><td>exec_area</td> <td> </td> <td>integer</td> <td>exec area value</td> </tr>
|
||||
<tr><td>idlemax</td> <td> </td> <td>integer</td> <td>idlemax value</td> </tr>
|
||||
<tr><td>idlepc</td> <td> </td> <td>string</td> <td>Idle-PC value</td> </tr>
|
||||
<tr><td>idlesleep</td> <td> </td> <td>integer</td> <td>idlesleep value</td> </tr>
|
||||
<tr><td>image</td> <td> </td> <td>string</td> <td>path to the IOS image</td> </tr>
|
||||
<tr><td>iomem</td> <td> </td> <td>integer</td> <td>I/O memory percentage</td> </tr>
|
||||
<tr><td>mac_addr</td> <td> </td> <td>string</td> <td>base MAC address</td> </tr>
|
||||
<tr><td>midplane</td> <td> </td> <td>enum</td> <td>Possible values: std, vxr</td> </tr>
|
||||
<tr><td>mmap</td> <td> </td> <td>boolean</td> <td>MMAP feature</td> </tr>
|
||||
<tr><td>name</td> <td>✔</td> <td>string</td> <td>Dynamips VM instance name</td> </tr>
|
||||
<tr><td>npe</td> <td> </td> <td>enum</td> <td>Possible values: npe-100, npe-150, npe-175, npe-200, npe-225, npe-300, npe-400, npe-g2</td> </tr>
|
||||
<tr><td>nvram</td> <td> </td> <td>integer</td> <td>amount of NVRAM in KB</td> </tr>
|
||||
<tr><td>platform</td> <td> </td> <td>string</td> <td>platform</td> </tr>
|
||||
<tr><td>power_supplies</td> <td> </td> <td>array</td> <td>Power supplies status</td> </tr>
|
||||
<tr><td>private_config</td> <td> </td> <td>string</td> <td>path to the IOS private configuration file</td> </tr>
|
||||
<tr><td>private_config_base64</td> <td> </td> <td>string</td> <td>private configuration base64 encoded</td> </tr>
|
||||
<tr><td>project_id</td> <td>✔</td> <td>string</td> <td>Project UUID</td> </tr>
|
||||
<tr><td>ram</td> <td> </td> <td>integer</td> <td>amount of RAM in MB</td> </tr>
|
||||
<tr><td>sensors</td> <td> </td> <td>array</td> <td>Temperature sensors</td> </tr>
|
||||
<tr><td>slot0</td> <td> </td> <td></td> <td>Network module slot 0</td> </tr>
|
||||
<tr><td>slot1</td> <td> </td> <td></td> <td>Network module slot 1</td> </tr>
|
||||
<tr><td>slot2</td> <td> </td> <td></td> <td>Network module slot 2</td> </tr>
|
||||
<tr><td>slot3</td> <td> </td> <td></td> <td>Network module slot 3</td> </tr>
|
||||
<tr><td>slot4</td> <td> </td> <td></td> <td>Network module slot 4</td> </tr>
|
||||
<tr><td>slot5</td> <td> </td> <td></td> <td>Network module slot 5</td> </tr>
|
||||
<tr><td>slot6</td> <td> </td> <td></td> <td>Network module slot 6</td> </tr>
|
||||
<tr><td>sparsemem</td> <td> </td> <td>boolean</td> <td>sparse memory feature</td> </tr>
|
||||
<tr><td>startup_config</td> <td> </td> <td>string</td> <td>path to the IOS startup configuration file</td> </tr>
|
||||
<tr><td>startup_config_base64</td> <td> </td> <td>string</td> <td>startup configuration base64 encoded</td> </tr>
|
||||
<tr><td>system_id</td> <td> </td> <td>string</td> <td>system ID</td> </tr>
|
||||
<tr><td>vm_id</td> <td>✔</td> <td>string</td> <td>Dynamips router instance UUID</td> </tr>
|
||||
<tr><td>wic0</td> <td> </td> <td></td> <td>Network module WIC slot 0</td> </tr>
|
||||
<tr><td>wic1</td> <td> </td> <td></td> <td>Network module WIC slot 0</td> </tr>
|
||||
<tr><td>wic2</td> <td> </td> <td></td> <td>Network module WIC slot 0</td> </tr>
|
||||
</table>
|
||||
|
||||
|
||||
PUT /v1/projects/**{project_id}**/dynamips/vms/**{vm_id}**
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Update a Dynamips VM instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **200**: Instance updated
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **409**: Conflict
|
||||
|
||||
Input
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>aux</td> <td> </td> <td>integer</td> <td>auxiliary console TCP port</td> </tr>
|
||||
<tr><td>chassis</td> <td> </td> <td>string</td> <td>router chassis model</td> </tr>
|
||||
<tr><td>clock_divisor</td> <td> </td> <td>integer</td> <td>clock divisor</td> </tr>
|
||||
<tr><td>confreg</td> <td> </td> <td>string</td> <td>configuration register</td> </tr>
|
||||
<tr><td>console</td> <td> </td> <td>integer</td> <td>console TCP port</td> </tr>
|
||||
<tr><td>disk0</td> <td> </td> <td>integer</td> <td>disk0 size in MB</td> </tr>
|
||||
<tr><td>disk1</td> <td> </td> <td>integer</td> <td>disk1 size in MB</td> </tr>
|
||||
<tr><td>exec_area</td> <td> </td> <td>integer</td> <td>exec area value</td> </tr>
|
||||
<tr><td>idlemax</td> <td> </td> <td>integer</td> <td>idlemax value</td> </tr>
|
||||
<tr><td>idlepc</td> <td> </td> <td>string</td> <td>Idle-PC value</td> </tr>
|
||||
<tr><td>idlesleep</td> <td> </td> <td>integer</td> <td>idlesleep value</td> </tr>
|
||||
<tr><td>image</td> <td> </td> <td>string</td> <td>path to the IOS image</td> </tr>
|
||||
<tr><td>iomem</td> <td> </td> <td>integer</td> <td>I/O memory percentage</td> </tr>
|
||||
<tr><td>mac_addr</td> <td> </td> <td>string</td> <td>base MAC address</td> </tr>
|
||||
<tr><td>midplane</td> <td> </td> <td>enum</td> <td>Possible values: std, vxr</td> </tr>
|
||||
<tr><td>mmap</td> <td> </td> <td>boolean</td> <td>MMAP feature</td> </tr>
|
||||
<tr><td>name</td> <td> </td> <td>string</td> <td>Dynamips VM instance name</td> </tr>
|
||||
<tr><td>npe</td> <td> </td> <td>enum</td> <td>Possible values: npe-100, npe-150, npe-175, npe-200, npe-225, npe-300, npe-400, npe-g2</td> </tr>
|
||||
<tr><td>nvram</td> <td> </td> <td>integer</td> <td>amount of NVRAM in KB</td> </tr>
|
||||
<tr><td>platform</td> <td> </td> <td>string</td> <td>platform</td> </tr>
|
||||
<tr><td>power_supplies</td> <td> </td> <td>array</td> <td>Power supplies status</td> </tr>
|
||||
<tr><td>private_config</td> <td> </td> <td>string</td> <td>path to the IOS private configuration file</td> </tr>
|
||||
<tr><td>private_config_base64</td> <td> </td> <td>string</td> <td>private configuration base64 encoded</td> </tr>
|
||||
<tr><td>private_config_content</td> <td> </td> <td>string</td> <td>Content of IOS private configuration file</td> </tr>
|
||||
<tr><td>ram</td> <td> </td> <td>integer</td> <td>amount of RAM in MB</td> </tr>
|
||||
<tr><td>sensors</td> <td> </td> <td>array</td> <td>Temperature sensors</td> </tr>
|
||||
<tr><td>slot0</td> <td> </td> <td></td> <td>Network module slot 0</td> </tr>
|
||||
<tr><td>slot1</td> <td> </td> <td></td> <td>Network module slot 1</td> </tr>
|
||||
<tr><td>slot2</td> <td> </td> <td></td> <td>Network module slot 2</td> </tr>
|
||||
<tr><td>slot3</td> <td> </td> <td></td> <td>Network module slot 3</td> </tr>
|
||||
<tr><td>slot4</td> <td> </td> <td></td> <td>Network module slot 4</td> </tr>
|
||||
<tr><td>slot5</td> <td> </td> <td></td> <td>Network module slot 5</td> </tr>
|
||||
<tr><td>slot6</td> <td> </td> <td></td> <td>Network module slot 6</td> </tr>
|
||||
<tr><td>sparsemem</td> <td> </td> <td>boolean</td> <td>sparse memory feature</td> </tr>
|
||||
<tr><td>startup_config</td> <td> </td> <td>string</td> <td>path to the IOS startup configuration file</td> </tr>
|
||||
<tr><td>startup_config_base64</td> <td> </td> <td>string</td> <td>startup configuration base64 encoded</td> </tr>
|
||||
<tr><td>startup_config_content</td> <td> </td> <td>string</td> <td>Content of IOS startup configuration file</td> </tr>
|
||||
<tr><td>system_id</td> <td> </td> <td>string</td> <td>system ID</td> </tr>
|
||||
<tr><td>wic0</td> <td> </td> <td></td> <td>Network module WIC slot 0</td> </tr>
|
||||
<tr><td>wic1</td> <td> </td> <td></td> <td>Network module WIC slot 0</td> </tr>
|
||||
<tr><td>wic2</td> <td> </td> <td></td> <td>Network module WIC slot 0</td> </tr>
|
||||
</table>
|
||||
|
||||
Output
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>aux</td> <td> </td> <td>integer</td> <td>auxiliary console TCP port</td> </tr>
|
||||
<tr><td>chassis</td> <td> </td> <td>string</td> <td>router chassis model</td> </tr>
|
||||
<tr><td>clock_divisor</td> <td> </td> <td>integer</td> <td>clock divisor</td> </tr>
|
||||
<tr><td>confreg</td> <td> </td> <td>string</td> <td>configuration register</td> </tr>
|
||||
<tr><td>console</td> <td> </td> <td>integer</td> <td>console TCP port</td> </tr>
|
||||
<tr><td>disk0</td> <td> </td> <td>integer</td> <td>disk0 size in MB</td> </tr>
|
||||
<tr><td>disk1</td> <td> </td> <td>integer</td> <td>disk1 size in MB</td> </tr>
|
||||
<tr><td>dynamips_id</td> <td>✔</td> <td>integer</td> <td>ID to use with Dynamips</td> </tr>
|
||||
<tr><td>exec_area</td> <td> </td> <td>integer</td> <td>exec area value</td> </tr>
|
||||
<tr><td>idlemax</td> <td> </td> <td>integer</td> <td>idlemax value</td> </tr>
|
||||
<tr><td>idlepc</td> <td> </td> <td>string</td> <td>Idle-PC value</td> </tr>
|
||||
<tr><td>idlesleep</td> <td> </td> <td>integer</td> <td>idlesleep value</td> </tr>
|
||||
<tr><td>image</td> <td> </td> <td>string</td> <td>path to the IOS image</td> </tr>
|
||||
<tr><td>iomem</td> <td> </td> <td>integer</td> <td>I/O memory percentage</td> </tr>
|
||||
<tr><td>mac_addr</td> <td> </td> <td>string</td> <td>base MAC address</td> </tr>
|
||||
<tr><td>midplane</td> <td> </td> <td>enum</td> <td>Possible values: std, vxr</td> </tr>
|
||||
<tr><td>mmap</td> <td> </td> <td>boolean</td> <td>MMAP feature</td> </tr>
|
||||
<tr><td>name</td> <td>✔</td> <td>string</td> <td>Dynamips VM instance name</td> </tr>
|
||||
<tr><td>npe</td> <td> </td> <td>enum</td> <td>Possible values: npe-100, npe-150, npe-175, npe-200, npe-225, npe-300, npe-400, npe-g2</td> </tr>
|
||||
<tr><td>nvram</td> <td> </td> <td>integer</td> <td>amount of NVRAM in KB</td> </tr>
|
||||
<tr><td>platform</td> <td> </td> <td>string</td> <td>platform</td> </tr>
|
||||
<tr><td>power_supplies</td> <td> </td> <td>array</td> <td>Power supplies status</td> </tr>
|
||||
<tr><td>private_config</td> <td> </td> <td>string</td> <td>path to the IOS private configuration file</td> </tr>
|
||||
<tr><td>private_config_base64</td> <td> </td> <td>string</td> <td>private configuration base64 encoded</td> </tr>
|
||||
<tr><td>project_id</td> <td>✔</td> <td>string</td> <td>Project UUID</td> </tr>
|
||||
<tr><td>ram</td> <td> </td> <td>integer</td> <td>amount of RAM in MB</td> </tr>
|
||||
<tr><td>sensors</td> <td> </td> <td>array</td> <td>Temperature sensors</td> </tr>
|
||||
<tr><td>slot0</td> <td> </td> <td></td> <td>Network module slot 0</td> </tr>
|
||||
<tr><td>slot1</td> <td> </td> <td></td> <td>Network module slot 1</td> </tr>
|
||||
<tr><td>slot2</td> <td> </td> <td></td> <td>Network module slot 2</td> </tr>
|
||||
<tr><td>slot3</td> <td> </td> <td></td> <td>Network module slot 3</td> </tr>
|
||||
<tr><td>slot4</td> <td> </td> <td></td> <td>Network module slot 4</td> </tr>
|
||||
<tr><td>slot5</td> <td> </td> <td></td> <td>Network module slot 5</td> </tr>
|
||||
<tr><td>slot6</td> <td> </td> <td></td> <td>Network module slot 6</td> </tr>
|
||||
<tr><td>sparsemem</td> <td> </td> <td>boolean</td> <td>sparse memory feature</td> </tr>
|
||||
<tr><td>startup_config</td> <td> </td> <td>string</td> <td>path to the IOS startup configuration file</td> </tr>
|
||||
<tr><td>startup_config_base64</td> <td> </td> <td>string</td> <td>startup configuration base64 encoded</td> </tr>
|
||||
<tr><td>system_id</td> <td> </td> <td>string</td> <td>system ID</td> </tr>
|
||||
<tr><td>vm_id</td> <td>✔</td> <td>string</td> <td>Dynamips router instance UUID</td> </tr>
|
||||
<tr><td>wic0</td> <td> </td> <td></td> <td>Network module WIC slot 0</td> </tr>
|
||||
<tr><td>wic1</td> <td> </td> <td></td> <td>Network module WIC slot 0</td> </tr>
|
||||
<tr><td>wic2</td> <td> </td> <td></td> <td>Network module WIC slot 0</td> </tr>
|
||||
</table>
|
||||
|
||||
|
||||
DELETE /v1/projects/**{project_id}**/dynamips/vms/**{vm_id}**
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Delete a Dynamips VM instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **204**: Instance deleted
|
||||
|
@ -0,0 +1,40 @@
|
||||
/v1/projects/{project_id}/dynamips/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/dynamips/vms/**{vm_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/nio
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Add a NIO to a Dynamips VM instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
- **adapter_number**: Adapter where the nio should be added
|
||||
- **port_number**: Port on the adapter
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **201**: NIO created
|
||||
- **404**: Instance doesn't exist
|
||||
|
||||
|
||||
DELETE /v1/projects/**{project_id}**/dynamips/vms/**{vm_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/nio
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Remove a NIO from a Dynamips VM instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
- **adapter_number**: Adapter from where the nio should be removed
|
||||
- **port_number**: Port on the adapter
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **204**: NIO deleted
|
||||
|
@ -0,0 +1,32 @@
|
||||
/v1/projects/{project_id}/dynamips/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/dynamips/vms/**{vm_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/start_capture
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Start a packet capture on a Dynamips VM instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
- **adapter_number**: Adapter to start a packet capture
|
||||
- **port_number**: Port on the adapter
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **200**: Capture started
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
|
||||
Input
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>capture_file_name</td> <td>✔</td> <td>string</td> <td>Capture file name</td> </tr>
|
||||
<tr><td>data_link_type</td> <td>✔</td> <td>string</td> <td>PCAP data link type</td> </tr>
|
||||
</table>
|
||||
|
@ -0,0 +1,22 @@
|
||||
/v1/projects/{project_id}/dynamips/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/dynamips/vms/**{vm_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/stop_capture
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Stop a packet capture on a Dynamips VM instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
- **adapter_number**: Adapter to stop a packet capture
|
||||
- **port_number**: Port on the adapter (always 0)
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **204**: Capture stopped
|
||||
|
@ -0,0 +1,15 @@
|
||||
/v1/projects/{project_id}/dynamips/vms/{vm_id}/auto_idlepc
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
GET /v1/projects/**{project_id}**/dynamips/vms/**{vm_id}**/auto_idlepc
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Retrieve the idlepc proposals
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **200**: Best Idle-pc value found
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
|
@ -0,0 +1,25 @@
|
||||
/v1/projects/{project_id}/dynamips/vms/{vm_id}/configs
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
GET /v1/projects/**{project_id}**/dynamips/vms/**{vm_id}**/configs
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Retrieve the startup and private configs content
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **200**: Configs retrieved
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
|
||||
Output
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>private_config_content</td> <td>✔</td> <td>['string', 'null']</td> <td>Content of the private configuration file</td> </tr>
|
||||
<tr><td>startup_config_content</td> <td>✔</td> <td>['string', 'null']</td> <td>Content of the startup configuration file</td> </tr>
|
||||
</table>
|
||||
|
@ -0,0 +1,15 @@
|
||||
/v1/projects/{project_id}/dynamips/vms/{vm_id}/idlepc_proposals
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
GET /v1/projects/**{project_id}**/dynamips/vms/**{vm_id}**/idlepc_proposals
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Retrieve the idlepc proposals
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **200**: Idle-PCs retrieved
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
|
@ -0,0 +1,20 @@
|
||||
/v1/projects/{project_id}/dynamips/vms/{vm_id}/reload
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/dynamips/vms/**{vm_id}**/reload
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Reload a Dynamips VM instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **204**: Instance reloaded
|
||||
|
@ -0,0 +1,20 @@
|
||||
/v1/projects/{project_id}/dynamips/vms/{vm_id}/resume
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/dynamips/vms/**{vm_id}**/resume
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Resume a suspended Dynamips VM instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **204**: Instance resumed
|
||||
|
@ -0,0 +1,20 @@
|
||||
/v1/projects/{project_id}/dynamips/vms/{vm_id}/start
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/dynamips/vms/**{vm_id}**/start
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Start a Dynamips VM instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **204**: Instance started
|
||||
|
@ -0,0 +1,20 @@
|
||||
/v1/projects/{project_id}/dynamips/vms/{vm_id}/stop
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/dynamips/vms/**{vm_id}**/stop
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Stop a Dynamips VM instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **204**: Instance stopped
|
||||
|
@ -0,0 +1,20 @@
|
||||
/v1/projects/{project_id}/dynamips/vms/{vm_id}/suspend
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/dynamips/vms/**{vm_id}**/suspend
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Suspend a Dynamips VM instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **204**: Instance suspended
|
||||
|
8
docs/api/v1/network.rst
Normal file
8
docs/api/v1/network.rst
Normal file
@ -0,0 +1,8 @@
|
||||
Network
|
||||
---------------------
|
||||
|
||||
.. toctree::
|
||||
:glob:
|
||||
:maxdepth: 2
|
||||
|
||||
network/*
|
19
docs/api/v1/network/interfaces.rst
Normal file
19
docs/api/v1/network/interfaces.rst
Normal file
@ -0,0 +1,19 @@
|
||||
/v1/interfaces
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
GET /v1/interfaces
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
List all the network interfaces available on the server
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **200**: OK
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/get_interfaces.txt
|
||||
|
19
docs/api/v1/network/portsudp.rst
Normal file
19
docs/api/v1/network/portsudp.rst
Normal file
@ -0,0 +1,19 @@
|
||||
/v1/ports/udp
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/ports/udp
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Allocate an UDP port on the server
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **201**: UDP port allocated
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/post_portsudp.txt
|
||||
|
8
docs/api/v1/project.rst
Normal file
8
docs/api/v1/project.rst
Normal file
@ -0,0 +1,8 @@
|
||||
Project
|
||||
---------------------
|
||||
|
||||
.. toctree::
|
||||
:glob:
|
||||
:maxdepth: 2
|
||||
|
||||
project/*
|
43
docs/api/v1/project/projects.rst
Normal file
43
docs/api/v1/project/projects.rst
Normal file
@ -0,0 +1,43 @@
|
||||
/v1/projects
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Create a new project on the server
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **201**: Project created
|
||||
- **409**: Project already created
|
||||
|
||||
Input
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>path</td> <td> </td> <td>['string', 'null']</td> <td>Project directory</td> </tr>
|
||||
<tr><td>project_id</td> <td> </td> <td>['string', 'null']</td> <td>Project UUID</td> </tr>
|
||||
<tr><td>temporary</td> <td> </td> <td>boolean</td> <td>If project is a temporary project</td> </tr>
|
||||
</table>
|
||||
|
||||
Output
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>location</td> <td>✔</td> <td>string</td> <td>Base directory where the project should be created on remote server</td> </tr>
|
||||
<tr><td>path</td> <td> </td> <td>string</td> <td>Directory of the project on the server</td> </tr>
|
||||
<tr><td>project_id</td> <td>✔</td> <td>string</td> <td>Project UUID</td> </tr>
|
||||
<tr><td>temporary</td> <td>✔</td> <td>boolean</td> <td>If project is a temporary project</td> </tr>
|
||||
</table>
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/post_projects.txt
|
||||
|
99
docs/api/v1/project/projectsprojectid.rst
Normal file
99
docs/api/v1/project/projectsprojectid.rst
Normal file
@ -0,0 +1,99 @@
|
||||
/v1/projects/{project_id}
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
GET /v1/projects/**{project_id}**
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Get project information
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: The UUID of the project
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **200**: Success
|
||||
- **404**: The project doesn't exist
|
||||
|
||||
Output
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>location</td> <td>✔</td> <td>string</td> <td>Base directory where the project should be created on remote server</td> </tr>
|
||||
<tr><td>path</td> <td> </td> <td>string</td> <td>Directory of the project on the server</td> </tr>
|
||||
<tr><td>project_id</td> <td>✔</td> <td>string</td> <td>Project UUID</td> </tr>
|
||||
<tr><td>temporary</td> <td>✔</td> <td>boolean</td> <td>If project is a temporary project</td> </tr>
|
||||
</table>
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/get_projectsprojectid.txt
|
||||
|
||||
|
||||
PUT /v1/projects/**{project_id}**
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Update a project
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: The UUID of the project
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **200**: The project has been updated
|
||||
- **403**: You are not allowed to modify this property
|
||||
- **404**: The project doesn't exist
|
||||
|
||||
Input
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>path</td> <td> </td> <td>['string', 'null']</td> <td>Path of the project on the server (work only with --local)</td> </tr>
|
||||
<tr><td>temporary</td> <td> </td> <td>boolean</td> <td>If project is a temporary project</td> </tr>
|
||||
</table>
|
||||
|
||||
Output
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>location</td> <td>✔</td> <td>string</td> <td>Base directory where the project should be created on remote server</td> </tr>
|
||||
<tr><td>path</td> <td> </td> <td>string</td> <td>Directory of the project on the server</td> </tr>
|
||||
<tr><td>project_id</td> <td>✔</td> <td>string</td> <td>Project UUID</td> </tr>
|
||||
<tr><td>temporary</td> <td>✔</td> <td>boolean</td> <td>If project is a temporary project</td> </tr>
|
||||
</table>
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/put_projectsprojectid.txt
|
||||
|
||||
|
||||
DELETE /v1/projects/**{project_id}**
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Delete a project from disk
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: The UUID of the project
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **404**: The project doesn't exist
|
||||
- **204**: Changes have been written on disk
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/delete_projectsprojectid.txt
|
||||
|
24
docs/api/v1/project/projectsprojectidclose.rst
Normal file
24
docs/api/v1/project/projectsprojectidclose.rst
Normal file
@ -0,0 +1,24 @@
|
||||
/v1/projects/{project_id}/close
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/close
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Close a project
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: The UUID of the project
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **404**: The project doesn't exist
|
||||
- **204**: The project has been closed
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/post_projectsprojectidclose.txt
|
||||
|
24
docs/api/v1/project/projectsprojectidcommit.rst
Normal file
24
docs/api/v1/project/projectsprojectidcommit.rst
Normal file
@ -0,0 +1,24 @@
|
||||
/v1/projects/{project_id}/commit
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/commit
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Write changes on disk
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: The UUID of the project
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **404**: The project doesn't exist
|
||||
- **204**: Changes have been written on disk
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/post_projectsprojectidcommit.txt
|
||||
|
8
docs/api/v1/qemu.rst
Normal file
8
docs/api/v1/qemu.rst
Normal file
@ -0,0 +1,8 @@
|
||||
Qemu
|
||||
---------------------
|
||||
|
||||
.. toctree::
|
||||
:glob:
|
||||
:maxdepth: 2
|
||||
|
||||
qemu/*
|
76
docs/api/v1/qemu/projectsprojectidqemuvms.rst
Normal file
76
docs/api/v1/qemu/projectsprojectidqemuvms.rst
Normal file
@ -0,0 +1,76 @@
|
||||
/v1/projects/{project_id}/qemu/vms
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/qemu/vms
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Create a new Qemu.instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **201**: Instance created
|
||||
- **409**: Conflict
|
||||
|
||||
Input
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>adapter_type</td> <td> </td> <td>['string', 'null']</td> <td>QEMU adapter type</td> </tr>
|
||||
<tr><td>adapters</td> <td> </td> <td>['integer', 'null']</td> <td>number of adapters</td> </tr>
|
||||
<tr><td>console</td> <td> </td> <td>['integer', 'null']</td> <td>console TCP port</td> </tr>
|
||||
<tr><td>cpu_throttling</td> <td> </td> <td>['integer', 'null']</td> <td>Percentage of CPU allowed for QEMU</td> </tr>
|
||||
<tr><td>hda_disk_image</td> <td> </td> <td>['string', 'null']</td> <td>QEMU hda disk image path</td> </tr>
|
||||
<tr><td>hdb_disk_image</td> <td> </td> <td>['string', 'null']</td> <td>QEMU hdb disk image path</td> </tr>
|
||||
<tr><td>initrd</td> <td> </td> <td>['string', 'null']</td> <td>QEMU initrd path</td> </tr>
|
||||
<tr><td>kernel_command_line</td> <td> </td> <td>['string', 'null']</td> <td>QEMU kernel command line</td> </tr>
|
||||
<tr><td>kernel_image</td> <td> </td> <td>['string', 'null']</td> <td>QEMU kernel image path</td> </tr>
|
||||
<tr><td>legacy_networking</td> <td> </td> <td>['boolean', 'null']</td> <td>Use QEMU legagy networking commands (-net syntax)</td> </tr>
|
||||
<tr><td>monitor</td> <td> </td> <td>['integer', 'null']</td> <td>monitor TCP port</td> </tr>
|
||||
<tr><td>name</td> <td>✔</td> <td>string</td> <td>QEMU VM instance name</td> </tr>
|
||||
<tr><td>options</td> <td> </td> <td>['string', 'null']</td> <td>Additional QEMU options</td> </tr>
|
||||
<tr><td>process_priority</td> <td> </td> <td>enum</td> <td>Possible values: realtime, very high, high, normal, low, very low, null</td> </tr>
|
||||
<tr><td>qemu_path</td> <td>✔</td> <td>string</td> <td>Path to QEMU</td> </tr>
|
||||
<tr><td>ram</td> <td> </td> <td>['integer', 'null']</td> <td>amount of RAM in MB</td> </tr>
|
||||
<tr><td>vm_id</td> <td> </td> <td>['string', 'null']</td> <td>QEMU VM UUID</td> </tr>
|
||||
</table>
|
||||
|
||||
Output
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>adapter_type</td> <td>✔</td> <td>string</td> <td>QEMU adapter type</td> </tr>
|
||||
<tr><td>adapters</td> <td>✔</td> <td>integer</td> <td>number of adapters</td> </tr>
|
||||
<tr><td>console</td> <td>✔</td> <td>integer</td> <td>console TCP port</td> </tr>
|
||||
<tr><td>cpu_throttling</td> <td>✔</td> <td>integer</td> <td>Percentage of CPU allowed for QEMU</td> </tr>
|
||||
<tr><td>hda_disk_image</td> <td>✔</td> <td>string</td> <td>QEMU hda disk image path</td> </tr>
|
||||
<tr><td>hdb_disk_image</td> <td>✔</td> <td>string</td> <td>QEMU hdb disk image path</td> </tr>
|
||||
<tr><td>initrd</td> <td>✔</td> <td>string</td> <td>QEMU initrd path</td> </tr>
|
||||
<tr><td>kernel_command_line</td> <td>✔</td> <td>string</td> <td>QEMU kernel command line</td> </tr>
|
||||
<tr><td>kernel_image</td> <td>✔</td> <td>string</td> <td>QEMU kernel image path</td> </tr>
|
||||
<tr><td>legacy_networking</td> <td>✔</td> <td>boolean</td> <td>Use QEMU legagy networking commands (-net syntax)</td> </tr>
|
||||
<tr><td>monitor</td> <td>✔</td> <td>integer</td> <td>monitor TCP port</td> </tr>
|
||||
<tr><td>name</td> <td>✔</td> <td>string</td> <td>QEMU VM instance name</td> </tr>
|
||||
<tr><td>options</td> <td>✔</td> <td>string</td> <td>Additional QEMU options</td> </tr>
|
||||
<tr><td>process_priority</td> <td>✔</td> <td>enum</td> <td>Possible values: realtime, very high, high, normal, low, very low</td> </tr>
|
||||
<tr><td>project_id</td> <td>✔</td> <td>string</td> <td>Project uuid</td> </tr>
|
||||
<tr><td>qemu_path</td> <td>✔</td> <td>string</td> <td>path to QEMU</td> </tr>
|
||||
<tr><td>ram</td> <td>✔</td> <td>integer</td> <td>amount of RAM in MB</td> </tr>
|
||||
<tr><td>vm_id</td> <td>✔</td> <td>string</td> <td>QEMU VM uuid</td> </tr>
|
||||
</table>
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/post_projectsprojectidqemuvms.txt
|
||||
|
147
docs/api/v1/qemu/projectsprojectidqemuvmsvmid.rst
Normal file
147
docs/api/v1/qemu/projectsprojectidqemuvmsvmid.rst
Normal file
@ -0,0 +1,147 @@
|
||||
/v1/projects/{project_id}/qemu/vms/{vm_id}
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
GET /v1/projects/**{project_id}**/qemu/vms/**{vm_id}**
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Get a Qemu.instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **200**: Success
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
|
||||
Output
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>adapter_type</td> <td>✔</td> <td>string</td> <td>QEMU adapter type</td> </tr>
|
||||
<tr><td>adapters</td> <td>✔</td> <td>integer</td> <td>number of adapters</td> </tr>
|
||||
<tr><td>console</td> <td>✔</td> <td>integer</td> <td>console TCP port</td> </tr>
|
||||
<tr><td>cpu_throttling</td> <td>✔</td> <td>integer</td> <td>Percentage of CPU allowed for QEMU</td> </tr>
|
||||
<tr><td>hda_disk_image</td> <td>✔</td> <td>string</td> <td>QEMU hda disk image path</td> </tr>
|
||||
<tr><td>hdb_disk_image</td> <td>✔</td> <td>string</td> <td>QEMU hdb disk image path</td> </tr>
|
||||
<tr><td>initrd</td> <td>✔</td> <td>string</td> <td>QEMU initrd path</td> </tr>
|
||||
<tr><td>kernel_command_line</td> <td>✔</td> <td>string</td> <td>QEMU kernel command line</td> </tr>
|
||||
<tr><td>kernel_image</td> <td>✔</td> <td>string</td> <td>QEMU kernel image path</td> </tr>
|
||||
<tr><td>legacy_networking</td> <td>✔</td> <td>boolean</td> <td>Use QEMU legagy networking commands (-net syntax)</td> </tr>
|
||||
<tr><td>monitor</td> <td>✔</td> <td>integer</td> <td>monitor TCP port</td> </tr>
|
||||
<tr><td>name</td> <td>✔</td> <td>string</td> <td>QEMU VM instance name</td> </tr>
|
||||
<tr><td>options</td> <td>✔</td> <td>string</td> <td>Additional QEMU options</td> </tr>
|
||||
<tr><td>process_priority</td> <td>✔</td> <td>enum</td> <td>Possible values: realtime, very high, high, normal, low, very low</td> </tr>
|
||||
<tr><td>project_id</td> <td>✔</td> <td>string</td> <td>Project uuid</td> </tr>
|
||||
<tr><td>qemu_path</td> <td>✔</td> <td>string</td> <td>path to QEMU</td> </tr>
|
||||
<tr><td>ram</td> <td>✔</td> <td>integer</td> <td>amount of RAM in MB</td> </tr>
|
||||
<tr><td>vm_id</td> <td>✔</td> <td>string</td> <td>QEMU VM uuid</td> </tr>
|
||||
</table>
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/get_projectsprojectidqemuvmsvmid.txt
|
||||
|
||||
|
||||
PUT /v1/projects/**{project_id}**/qemu/vms/**{vm_id}**
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Update a Qemu.instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **200**: Instance updated
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **409**: Conflict
|
||||
|
||||
Input
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>adapter_type</td> <td> </td> <td>['string', 'null']</td> <td>QEMU adapter type</td> </tr>
|
||||
<tr><td>adapters</td> <td> </td> <td>['integer', 'null']</td> <td>number of adapters</td> </tr>
|
||||
<tr><td>console</td> <td> </td> <td>['integer', 'null']</td> <td>console TCP port</td> </tr>
|
||||
<tr><td>cpu_throttling</td> <td> </td> <td>['integer', 'null']</td> <td>Percentage of CPU allowed for QEMU</td> </tr>
|
||||
<tr><td>hda_disk_image</td> <td> </td> <td>['string', 'null']</td> <td>QEMU hda disk image path</td> </tr>
|
||||
<tr><td>hdb_disk_image</td> <td> </td> <td>['string', 'null']</td> <td>QEMU hdb disk image path</td> </tr>
|
||||
<tr><td>initrd</td> <td> </td> <td>['string', 'null']</td> <td>QEMU initrd path</td> </tr>
|
||||
<tr><td>kernel_command_line</td> <td> </td> <td>['string', 'null']</td> <td>QEMU kernel command line</td> </tr>
|
||||
<tr><td>kernel_image</td> <td> </td> <td>['string', 'null']</td> <td>QEMU kernel image path</td> </tr>
|
||||
<tr><td>legacy_networking</td> <td> </td> <td>['boolean', 'null']</td> <td>Use QEMU legagy networking commands (-net syntax)</td> </tr>
|
||||
<tr><td>monitor</td> <td> </td> <td>['integer', 'null']</td> <td>monitor TCP port</td> </tr>
|
||||
<tr><td>name</td> <td> </td> <td>['string', 'null']</td> <td>QEMU VM instance name</td> </tr>
|
||||
<tr><td>options</td> <td> </td> <td>['string', 'null']</td> <td>Additional QEMU options</td> </tr>
|
||||
<tr><td>process_priority</td> <td> </td> <td>enum</td> <td>Possible values: realtime, very high, high, normal, low, very low, null</td> </tr>
|
||||
<tr><td>qemu_path</td> <td> </td> <td>['string', 'null']</td> <td>Path to QEMU</td> </tr>
|
||||
<tr><td>ram</td> <td> </td> <td>['integer', 'null']</td> <td>amount of RAM in MB</td> </tr>
|
||||
</table>
|
||||
|
||||
Output
|
||||
*******
|
||||
.. raw:: html
|
||||
|
||||
<table>
|
||||
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
|
||||
<tr><td>adapter_type</td> <td>✔</td> <td>string</td> <td>QEMU adapter type</td> </tr>
|
||||
<tr><td>adapters</td> <td>✔</td> <td>integer</td> <td>number of adapters</td> </tr>
|
||||
<tr><td>console</td> <td>✔</td> <td>integer</td> <td>console TCP port</td> </tr>
|
||||
<tr><td>cpu_throttling</td> <td>✔</td> <td>integer</td> <td>Percentage of CPU allowed for QEMU</td> </tr>
|
||||
<tr><td>hda_disk_image</td> <td>✔</td> <td>string</td> <td>QEMU hda disk image path</td> </tr>
|
||||
<tr><td>hdb_disk_image</td> <td>✔</td> <td>string</td> <td>QEMU hdb disk image path</td> </tr>
|
||||
<tr><td>initrd</td> <td>✔</td> <td>string</td> <td>QEMU initrd path</td> </tr>
|
||||
<tr><td>kernel_command_line</td> <td>✔</td> <td>string</td> <td>QEMU kernel command line</td> </tr>
|
||||
<tr><td>kernel_image</td> <td>✔</td> <td>string</td> <td>QEMU kernel image path</td> </tr>
|
||||
<tr><td>legacy_networking</td> <td>✔</td> <td>boolean</td> <td>Use QEMU legagy networking commands (-net syntax)</td> </tr>
|
||||
<tr><td>monitor</td> <td>✔</td> <td>integer</td> <td>monitor TCP port</td> </tr>
|
||||
<tr><td>name</td> <td>✔</td> <td>string</td> <td>QEMU VM instance name</td> </tr>
|
||||
<tr><td>options</td> <td>✔</td> <td>string</td> <td>Additional QEMU options</td> </tr>
|
||||
<tr><td>process_priority</td> <td>✔</td> <td>enum</td> <td>Possible values: realtime, very high, high, normal, low, very low</td> </tr>
|
||||
<tr><td>project_id</td> <td>✔</td> <td>string</td> <td>Project uuid</td> </tr>
|
||||
<tr><td>qemu_path</td> <td>✔</td> <td>string</td> <td>path to QEMU</td> </tr>
|
||||
<tr><td>ram</td> <td>✔</td> <td>integer</td> <td>amount of RAM in MB</td> </tr>
|
||||
<tr><td>vm_id</td> <td>✔</td> <td>string</td> <td>QEMU VM uuid</td> </tr>
|
||||
</table>
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/put_projectsprojectidqemuvmsvmid.txt
|
||||
|
||||
|
||||
DELETE /v1/projects/**{project_id}**/qemu/vms/**{vm_id}**
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Delete a Qemu.instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **204**: Instance deleted
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/delete_projectsprojectidqemuvmsvmid.txt
|
||||
|
@ -0,0 +1,52 @@
|
||||
/v1/projects/{project_id}/qemu/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/qemu/vms/**{vm_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/nio
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Add a NIO to a Qemu.instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
- **adapter_number**: Network adapter where the nio is located
|
||||
- **port_number**: Port where the nio should be added
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **201**: NIO created
|
||||
- **404**: Instance doesn't exist
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/post_projectsprojectidqemuvmsvmidadaptersadapternumberdportsportnumberdnio.txt
|
||||
|
||||
|
||||
DELETE /v1/projects/**{project_id}**/qemu/vms/**{vm_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/nio
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Remove a NIO from a Qemu.instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
- **adapter_number**: Network adapter where the nio is located
|
||||
- **port_number**: Port from where the nio should be removed
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **204**: NIO deleted
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/delete_projectsprojectidqemuvmsvmidadaptersadapternumberdportsportnumberdnio.txt
|
||||
|
26
docs/api/v1/qemu/projectsprojectidqemuvmsvmidreload.rst
Normal file
26
docs/api/v1/qemu/projectsprojectidqemuvmsvmidreload.rst
Normal file
@ -0,0 +1,26 @@
|
||||
/v1/projects/{project_id}/qemu/vms/{vm_id}/reload
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/qemu/vms/**{vm_id}**/reload
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Reload a Qemu.instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **204**: Instance reloaded
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/post_projectsprojectidqemuvmsvmidreload.txt
|
||||
|
26
docs/api/v1/qemu/projectsprojectidqemuvmsvmidresume.rst
Normal file
26
docs/api/v1/qemu/projectsprojectidqemuvmsvmidresume.rst
Normal file
@ -0,0 +1,26 @@
|
||||
/v1/projects/{project_id}/qemu/vms/{vm_id}/resume
|
||||
----------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
.. contents::
|
||||
|
||||
POST /v1/projects/**{project_id}**/qemu/vms/**{vm_id}**/resume
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Resume a Qemu.instance
|
||||
|
||||
Parameters
|
||||
**********
|
||||
- **project_id**: UUID for the project
|
||||
- **vm_id**: UUID for the instance
|
||||
|
||||
Response status codes
|
||||
**********************
|
||||
- **400**: Invalid request
|
||||
- **404**: Instance doesn't exist
|
||||
- **204**: Instance resumed
|
||||
|
||||
Sample session
|
||||
***************
|
||||
|
||||
|
||||
.. literalinclude:: ../../examples/post_projectsprojectidqemuvmsvmidresume.txt
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user