Skip to main content

Convert WADL to Swagger

Project description

***********************
wadl2swagger |PyPI|
***********************

wadl2swagger is a command line tool for converting WADL_ description of an API into Swagger_. It's intended to work with generic WADL documents as much as possible, but some of the conversion is mapped to conventions used in OpenStack WADL rather concepts defined in the WADL standard itself.

============
Installation
============

wadl2swagger can be installed (and updated) from PyPI using `pip`_:

.. code-block:: bash

$ pip install --upgrade wadl2swagger


Conversely, it can be uninstalled using `pip`_ as well.

.. code-block:: bash

$ pip uninstall wadl2swagger


=====
Usage
=====

wadl2swagger provides two utilities. The ``wadlcrawler`` utility can be used to fetch WADL files off a website. For example:

.. code-block:: bash

$ wadlcrawler http://api.rackspace.com/wadls/
INFO:root:Downloading http://api.rackspace.com/wadls/ to wadls/OS-KSADM-admin.wadl
INFO:root:Downloading http://api.rackspace.com/wadls/ to wadls/RAX-AUTH.wadl
INFO:root:Downloading http://api.rackspace.com/wadls/ to wadls/RAX-KSKEY-admin.wadl
INFO:root:Downloading http://api.rackspace.com/wadls/ to wadls/autoscale.wadl
INFO:root:Downloading http://api.rackspace.com/wadls/ to wadls/cbd-devguide.wadl
INFO:root:Downloading http://api.rackspace.com/wadls/ to wadls/cloud_monitoring.wadl
INFO:root:Downloading http://api.rackspace.com/wadls/ to wadls/cq-devguide.wadl
...

Now that you have a set of WADL files, you can use wadl2swagger to convert them:

.. code-block:: bash

$ wadl2swagger --autofix wadls/*.wadl --swagger-dir swagger/
Saving swagger to swagger/OS-KSADM-admin.yaml
Saving swagger to swagger/RAX-AUTH.yaml
Saving swagger to swagger/RAX-KSKEY-admin.yaml
Saving swagger to swagger/autoscale.yaml
Saving swagger to swagger/cbd-devguide.yaml
Saving swagger to swagger/cq-devguide.yaml
...

===
Options
===

See ``wadlcrawler -h`` and ``wadl2swagger -h`` for a full list of options. Some important options are below.

``--autofix``
----------------

Tells wadl2swagger to detect and attempt to fix common problems, like inferring a default value for a required Swagger concept that is optional and not specified in one of the WADLs. If you don't use this option than wadl2swagger may fail until you clean up your WADL files.

``--wadl-dir WADL_DIR``
----------------

The directory to save WADL files to when downloading via wadlcrawler.

``--swagger-dir SWAGGER_DIR``
----------------

The directory to save Swagger files to when converting via wadl2swagger.

============
Contributing
============

See `CONTRIBUTING.rst`_.

=======
License
=======

wadl2swagger is licensed under the `Apache License`_.


.. |PyPI| image:: http://img.shields.io/pypi/v/wadl2swagger.svg?style=flat
:alt: PyPI Version
:target: https://pypi.python.org/pypi/wadl2swagger/

.. _pip: http://www.pip-installer.org/en/latest/index.html
.. _WADL: http://www.w3.org/Submission/wadl/
.. _Swagger: http://swagger.io
.. _CONTRIBUTING.rst: https://github.com/rackerlabs/wadl2swagger/blob/master/CONTRIBUTING.rst
.. _Apache License: https://github.com/rackerlabs/wadl2swagger/blob/master/LICENSE

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wadl2swagger-0.0.5.tar.gz (8.0 kB view hashes)

Uploaded Source

Built Distributions

wadl2swagger-0.0.5.macosx-10.9-intel.tar.gz (15.1 kB view hashes)

Uploaded Source

wadl2swagger-0.0.5-py2.py3-none-any.whl (10.2 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page