@nielsen-oss/pact-manifest-cli
v1.2.0
Published
Node.js CLI tool to manage a pact manifest
Downloads
6
Readme
pact-manifest-cli
A Node.js CLI tool to generate a pact manifest file for existing pact contracts, and publish them to a broker based on a tag.
Installation
yarn add pact-manifest-cli
Usage
Generate a pact manifest
$ cd backend-api/
$ pact-manifest-cli generate --pact-files-path "test/pacts/*.json" --manifest-file /tmp/pact-manifest.json
Command line options for generate
option:
Option | Description | Example value
------------ | ------------- | -------------
--base-path [base-path]
| A directory's base path for the pact files location. Defaults to current working dir. | ~/backend-api
--pact-files-path <pact-files-path>
| A directory relative to --base-path option, to find pact files|
test/pacts/*.json
--manifest-file | The filename (or full path) to save the pact manifest file |
/tmp/pact-manifest.json
--pact-default-tag [pact-default-tag]| The tag to assign by default to pact files when submitting them to broker. Defaults to "develop". |
dev`
Publish a pact manifest to a broker
$ cd backend-api/
$ pact-manifest-cli publish --manifest-file /tmp/pact-manifest.json --broker-base-url https://mycompany.pact.dius.com.au --broker-username user1 --broker-password password1 --consumer-app-version 1.0.0
Command line options for publish
option:
Option | Description | Example value
------------ | ------------- | -------------
--manifest-file <manifest-file>
| The manifest file to process | /tmp/pact-manifest.json
--broker-base-url [broker-base-url]
| The base URL of the Pact Broker [url]. Defaults to "https://localhost". |
--broker-username [broker-username]
| Pact Broker basic auth username [username] | `--broker-password [broker-password]` | Pact Broker basic auth password [password] |
--consumer-app-version <consumer-app-version>
| The consumer application version | 1.0.1
--pact-tag [pact-tag]
| The tag of the pact files to publish. If omitted all the files will be published.|
develop`
Tests
Project tests:
yarn run test
Project linting:
yarn run lint
Coverage
yarn run test:coverage
Contributing
Commit Guidelines
The project uses the commitizen tool for standardizing changelog style commit messages so you should follow it as so:
git add . # add files to staging
yarn run commit # use the wizard for the commit message