Sha256: 862f390fd1d1f3cce0b3958424823e32382d8ea9cc8a3413ea7d08007a88369a

Contents?: true

Size: 1.81 KB

Versions: 2

Compression:

Stored size: 1.81 KB

Contents

# metadata-json-lint

The metadata-json-lint tool validates and lints `metadata.json` files in Puppet modules against style guidelines from the [Puppet Forge module metadata](https://docs.puppet.com/puppet/latest/modules_publishing.html#write-a-metadatajson-file) recommendations.

## Compatibility

metadata-json-lint is compatible with Ruby versions 2.0.0, 2.1.9, and 2.3.1.

## Installation

Install the `metadata-json-lint` gem:

```shell
gem install metadata-json-lint
```

## Usage

### Testing with metadata-json-lint

On the command line, run `metadata-json-lint` with the path of your `metadata.json` file:

```shell
metadata-json-lint /path/to/metadata.json
```

### Testing with metadata-json-lint as a Rake task

If you are already using `puppet_spec_helper`, the 'validate' task already includes `metadata-json-lint`.

You can also integrate `metadata-json-lint` checks into your tests using the Rake task. Add `require 'metadata-json-lint/rake_task'` to your `Rakefile`, and then run:

```ruby
rake metadata_lint
```

To set options for the Rake task, include them when you define the task:

```ruby
require 'metadata-json-lint'
task :metadata_lint do
  MetadataJsonLint.parse('metadata.json') do |options|
      options.strict_license = false
  end
end
```

Alternatively, set the option after requiring the Rake task:

```ruby
require 'metadata-json-lint/rake_task'
MetadataJsonLint.options.strict_license = false
```

### Options

* `--[no-]strict-dependencies`: Whether to fail if module version dependencies are open-ended. Defaults to `false`.
* `--[no-]strict-license`: Whether to fail on strict license check. Defaults to `true`.
* `--[no-]fail-on-warnings`: Whether to fail on warnings. Defaults to `true`.

## Contributors

A big thank you to the [contributors](https://github.com/voxpupuli/metadata-json-lint/graphs/contributors).

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
metadata-json-lint-1.2.2 README.md
metadata-json-lint-1.2.1 README.md