Skip to main content

Resolve and bundle openapi v3 specs.

Project description

OpenAPI Resolver

CircleCI

This module recursively parses openapi specs resolving references.

Test

Tests run locally via

    tox

Or via circleci-local

    circleci build 

Usage

The module has an embedded script that can be run via

    $ python -m openapi_resolver --help

    usage: __main__.py [-h] src_file [dst_file]

    Recursively resolves and bundles OpenAPI v3 files.

    positional arguments:
      src_file    An OpenAPI v3 yaml file.
      dst_file    Destination file, default is stdout.

    optional arguments:
      -h, --help  show this help message and exit

To create an openapi bundle from a spec file just run

    $ python -m openapi_resolver sample.yaml

You can use this module to normalize two specs before diffing, eg:

    $ python -m openapi_resolver one.yaml normal-one.yaml
    $ python -m openapi_resolver two.yaml normal-two.yaml
    $ diff normal-one.yaml normal-two.yaml

Use with docker

Build the image with:

$ docker build --tag openapi-resolver . 

then run docker mapping the openapi.yaml directory to the /code volume.

docker run -it --rm -v $(dirname path-to-openapi.yaml):/code \
    openapi-resolver /code/openapi.yaml /code/bundle.yaml

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

openapi_resolver-0.0.7rc1.tar.gz (6.5 kB view details)

Uploaded Source

File details

Details for the file openapi_resolver-0.0.7rc1.tar.gz.

File metadata

  • Download URL: openapi_resolver-0.0.7rc1.tar.gz
  • Upload date:
  • Size: 6.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.29.0 CPython/3.6.8

File hashes

Hashes for openapi_resolver-0.0.7rc1.tar.gz
Algorithm Hash digest
SHA256 c24b2dd3d2be42f8d55aa0ebab1d7bebf5d41000b76320479ad922197de1c9c0
MD5 6196025c2a3fe7d42375eeaa1bb46828
BLAKE2b-256 7e3b464599751c06ebb1d0e63431d12ca45f2c1b58599476b778dfc1c3c25ec2

See more details on using hashes here.

Supported by

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