bszwarc / converter-js

Convert AsyncAPI documents from older to newer versions.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

AsyncAPI Converter

Convert AsyncAPI documents older to newer versions.

Installation

npm i -g asyncapi-converter

Usage

From CLI

Minimal example:

asyncapi-converter streetlights.yml

# Result:
asyncapi: '2.0.0'
channels:
...

Specify the application id:

asyncapi-converter --id=urn:com.asynapi.streetlights streetlights.yml

# Result:
asyncapi: '2.0.0'
id: 'urn:com.asynapi.streetlights'
...

Save the result in a file:

asyncapi-converter streetlights.yml > streetlights2.yml

As a package

const { convert } = require('asyncapi-converter')

try {
  const asyncapi = fs.readFileSync('streetlights.yml', 'utf-8')
  console.log(convert(asyncapi, '2.0.0', {
      id: 'urn:com.asyncapi.streetlights'
  }))
} catch (e) {
  console.error(e)
}

Known missing features

  • When converting from 1.x to 2.x, Streaming APIs (those using stream instead of topics or events) are converted correctly but information about framing type and delimiter is missing until a protocolInfo for that purpose is created.

About

Convert AsyncAPI documents from older to newer versions.


Languages

Language:JavaScript 100.0%