Skip to content

metanorma/metanorma-cli

Metanorma command-line interface (CLI)

Gem Version Build Status Code Climate Pull Requests Commits since latest

Installation

Tip

To use Metanorma, normally you don’t manually install this gem. Depending on your setup, you may find quicker ways to get started: please refer to Getting Started instead.

To install this gem, simply run:

gem install metanorma-cli

This will install the metanorma executable, which you can use with all officially supported Metanorma flavors (such as ISO, CalConnect, IETF, etc).

However, a number of dependencies are not installed with this gem, and have to be installed separately. The process of installing the full suite can be a little more complex.

Generally, we recommend you to follow steps given at Metanorma Installation.

But if you aren’t afraid of tinkering deeply, please see the Developer Installation Notes for advanced details regarding dependencies and Windows installation notes.

External dependencies

The Metanorma toolchain supports certain features when optional dependencies are installed. Please refer to the following table for them.

Dependency Mandatory? Target component / purpose

git

metarnoma-cli (templates), fontist

java

mn2pdf, metanorma-standoc

xml2rfc (python)

metanorma-ietf

inkscape

isodoc, SVG to EMF functionality (for inserting SVGs into Word)

graphviz

lutaml generation of LutaML diagrams

plantuml

metanorma-standoc generation of PlantUML diagrams

Usage

Release

General overview

Once we are ready for release of metanorma-cli, it means:

  1. required all `metanorma-cli’s dependencies are released or ready for upcoming release

  2. last rake workflow for main branch is green (can be started manually)

Simply bump metanorma-cli gem version and push. This will initiate rake workflow that:

  1. run rake tests

  2. run `template`s compilation tests

  3. run `sample`s compilation tests

The test matrix defined as JSON files in samples test matrix and templates test matrix

One all tests is passed, packed-mn 's and docker 's releases will be initiated

Responsibility

Repositories Responsible

metanorma-cli’s dependencies (including transitive) from the GitHub `metanorma organization

@opoudjis

packed-mn, docker, chocolatey, snap, brew and any other unusual CI failures

@CAMOBAP

Credits

This gem is developed, maintained and funded by Ribose Inc.

License

The gem is available under the terms of the MIT License.