A Ruby parser for Open API Spec 3.0+ definitions.
Install the gem:
$ gem install oas_parser
Or add it to your Gemfile:
gem'oas_parser'Here is a basic example of how you can traverse through an Open API Spec 3 Definition:
require'oas_parser'definition=OasParser::Definition.resolve('petstore.yml')# => #<OasParser::Definition># Get a specific pathpath=definition.path_by_path('/pets')# => #<OasParser::Path># Get all paths.definition.paths# => [#<OasParser::Path>, ...]# Get a specific endpoint by methodendpoint=path.endpoint_by_method('get')# => #<OasParser::Endpoint># Get all endpointspath.endpoints# => [#<OasParser::Endpoint>, ...]# Get endpoint descriptionendpoint.description# => "Returns all pets from the system that the user has access to"Checkout the tests and lib directory for more classes and methods.
Run tests:
$ rspec
Clone the repo and navigate to its directory:
$ cd oas-parser
Bump the latest version in oas_parser/lib/oas_parser/version.rb:
//old
module OasParser
VERSION = '1.0.0'.freeze
end
//new
module OasParser
VERSION = '1.1.0'.freeze
end
Build the gem:
$ gem build oas_parser.gemspec
This will create a oas_parser-1.1.0.gem file.
Push the gem to rubygems.org:
$ gem push oas_parser-1.1.0.gem
Verify the change was made by checking for the new version on rubygems.org
Contributions are welcome, please follow GitHub Flow