diff --git a/.gitignore b/.gitignore index a2d86f4..4ff186c 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,6 @@ image-api-v2.0.xml *~ .*.swp .bak + +# Testenvironment +.tox diff --git a/README.rst b/README.rst index b539fc4..0bd7103 100644 --- a/README.rst +++ b/README.rst @@ -1,11 +1,80 @@ -This repository contains the RESTful API information for the OpenStack Image Service, also known as Glance. The Glance project provides services for discovering, registering, and retrieving virtual machine images. The Image Service has a RESTful API that allows querying of VM image metadata as well as retrieval of the actual image. +Image Service API ++++++++++++++++++ -VM images made available through Glance can be stored in a variety of locations from simple filesystems to object-storage systems like the OpenStack Swift project. +This repository contains the RESTful API information for the OpenStack +Image Service, also known as Glance. The Glance project provides +services for discovering, registering, and retrieving virtual machine +images. The Image Service has a RESTful API that allows querying of VM +image metadata as well as retrieval of the actual image. + +VM images made available through Glance can be stored in a variety of +locations from simple filesystems to object-storage systems like the +OpenStack Swift project. + +Prerequisites +============= +`Apache Maven `_ must be installed to build the +documentation. + +To install Maven 3 for Ubuntu 12.04 and later,and Debian wheezy and later:: + + apt-get install maven + +On Fedora 15 and later:: + + yum install maven3 + +Building +======== + +The API is in the ``openstack-image-service-api`` directory. + +To build a specific guide, look for a ``pom.xml`` file within a subdirectory, +then run the ``mvn`` command in that directory. For example:: + + cd openstack-image-service-api + mvn clean generate-sources + +The generated PDF documentation file is:: + + openstack-image-service-api/target/docbkx/webhelp/api/openstack-image-service/1.1/os-image-service-devguide-1.1.pdf + +The root of the generated HTML documentation is:: + + openstack-image-service-api//target/docbkx/webhelp/api/openstack-image-service/1.1/content/index.html + + +Testing of changes and building of the manual +============================================= + +Install the python tox package and run ``tox`` from the top-level +directory to use the same tests that are done as part of our Jenkins +gating jobs. + +If you like to run individual tests, run: +* ``tox -e checkniceness`` - to run the niceness tests +* ``tox -e checksyntax`` - to run syntax checks +* ``tox -e checkdeletions`` - to check that no deleted files are referenced +* ``tox -e checkbuild`` - to actually build the manual + +tox will use the `openstack-doc-tools package +`_ for execution of +these tests. openstack-doc-tools has a requirement on maven for the +build check. Contributing ============ -Our community welcomes all people interested in open source cloud computing, and there are no formal membership requirements. The best way to join the community is to talk with others online or at a meetup and offer contributions through the code review process, the OpenStack wiki, or blogs. We welcome all types of contributions, from blueprint designs to documentation to testing to deployment scripts. + +Our community welcomes all people interested in open source cloud +computing, and there are no formal membership requirements. The best +way to join the community is to talk with others online or at a meetup +and offer contributions through the code review process, the OpenStack +wiki, or blogs. We welcome all types of contributions, from blueprint +designs to documentation to testing to deployment scripts. Installing ========== -Refer to http://docs.openstack.org/developer/glance/ to learn more about installing an OpenStack Image Service server that can respond to these API commands. + +Refer to http://docs.openstack.org/developer/glance/ to learn more +about installing an OpenStack Image Service server that can respond to +these API commands. diff --git a/test-requirements.txt b/test-requirements.txt new file mode 100644 index 0000000..5090e85 --- /dev/null +++ b/test-requirements.txt @@ -0,0 +1 @@ +openstack-doc-tools diff --git a/tox.ini b/tox.ini new file mode 100644 index 0000000..7ebe193 --- /dev/null +++ b/tox.ini @@ -0,0 +1,27 @@ +[tox] +minversion = 1.6 +envlist = checkniceness,checksyntax,checkdeletions,checkbuild +skipsdist = True + +[testenv] +setenv = + VIRTUAL_ENV={envdir} + LANG=en_US.UTF-8 + LANGUAGE=en_US:en + LC_ALL=C +deps = -r{toxinidir}/test-requirements.txt + +[testenv:venv] +commands = {posargs} + +[testenv:checkniceness] +commands = openstack-doc-test --api-site --check-niceness {posargs} + +[testenv:checksyntax] +commands = openstack-doc-test --api-site --check-syntax {posargs} + +[testenv:checkdeletions] +commands = openstack-doc-test --api-site --check-deletions {posargs} + +[testenv:checkbuild] +commands = openstack-doc-test --api-site --check-build {posargs}