pact-1.7.1
Pact standalone executables
This package contains the Ruby implementations of the Pact Mock Service, Pact Provider Verifier and Pact Broker Client, packaged with Travelling Ruby so that they can be run from the command line without a Ruby installation.
Package contents
This version (1.7.1) of the Pact standalone executables package contains:
- pact gem 1.16.0
- pact-mock_service gem 2.2.0
- pact-support gem 1.2.0
- pact-provider-verifier gem 1.5.0
- pact_broker-client gem 1.6.0
Usage
pact-mock-service
Commands:
pact-mock-service control # Run a Pact mock service control s...
pact-mock-service control-restart # Start a Pact mock service control...
pact-mock-service control-start # Start a Pact mock service control...
pact-mock-service control-stop # Stop a Pact mock service control ...
pact-mock-service help [COMMAND] # Describe available commands or on...
pact-mock-service restart # Start or restart a mock service. ...
pact-mock-service service # Start a mock service. If the cons...
pact-mock-service start # Start a mock service. If the cons...
pact-mock-service stop -p, --port=PORT # Stop a Pact mock service
pact-mock-service version # Show the pact-mock-service gem ve...
Usage:
pact-mock-service service
Options:
-p, [--port=PORT] # Port on which to run the service
-h, [--host=HOST] # Host on which to bind the service
# Default: localhost
-l, [--log=LOG] # File to which to log output
[--ssl], [--no-ssl] # Use a self-signed SSL cert to run the service over HTTPS
[--sslcert=SSLCERT] # Specify the path to the SSL cert to use when running the service over HTTPS
[--sslkey=SSLKEY] # Specify the path to the SSL key to use when running the service over HTTPS
-o, [--cors=CORS] # Support browser security in tests by responding to OPTIONS requests and adding CORS headers to mocked responses
-d, [--pact-dir=PACT_DIR] # Directory to which the pacts will be written
-u, [--unique-pact-file-names], [--no-unique-pact-file-names] # Set to true when running multiple mock service instances in parallel for the same consumer/provider pair
-i, [--pact-specification-version=PACT_SPECIFICATION_VERSION] # The pact specification version to use when writing the pact
# Default: 1
[--consumer=CONSUMER] # Consumer name
[--provider=PROVIDER] # Provider name
Start a mock service. If the consumer, provider and pact-dir options are provided, the pact will be written automatically on shutdown.
pact-provider-verifier
Usage:
pact-provider-verifier PACT_URL ... -h, --provider-base-url=PROVIDER_BASE_URL
Options:
-h, --provider-base-url=PROVIDER_BASE_URL # Provider host URL
-c, [--provider-states-setup-url=PROVIDER_STATES_SETUP_URL] # Base URL to setup the provider states at
-a, [--provider-app-version=PROVIDER_APP_VERSION] # Provider application version, required when publishing verification results
-r, [--publish-verification-results=PUBLISH_VERIFICATION_RESULTS] # Publish verification results to the broker
-n, [--broker-username=BROKER_USERNAME] # Pact Broker basic auth username
-p, [--broker-password=BROKER_PASSWORD] # Pact Broker basic auth password
[--custom-provider-header=CUSTOM_PROVIDER_HEADER] # Header to add to provider state set up and pact requests. eg 'Authorization: Basic cGFjdDpwYWN0'
-s, [--provider-states-url=PROVIDER_STATES_URL] # DEPRECATED
-v, [--verbose=VERBOSE] # Verbose output
-u, [--pact-urls=PACT_URLS] # DEPRECATED. Please provide as space separated arguments.
Verify pact(s) against a provider. Supports local and networked (http-based) files.
pact-publish
Usage:
pact-publish PACT_DIRS_OR_FILES ... -a, --consumer-app-version=CONSUMER_APP_VERSION -b, --broker-base-url=BROKER_BASE_URL
Options:
-a, --consumer-app-version=CONSUMER_APP_VERSION # The consumer application version
-b, --broker-base-url=BROKER_BASE_URL # The base URL of the Pact Broker
-n, [--broker-username=BROKER_USERNAME] # Pact Broker basic auth username
-p, [--broker-password=BROKER_PASSWORD] # Pact Broker basic auth password
-t, [--tag=TAG] # Tag name for consumer version. Can be specified multiple times.
-v, [--verbose=VERBOSE] # Verbose output
Publish pacts to a Pact Broker.
Installation
OSX
curl -LO https://github.com/pact-foundation/pact-ruby-standalone/releases/download/v1.7.1/pact-1.7.1-osx.tar.gz
tar xzf pact-1.7.1-osx.tar.gz
cd pact/bin
./pact-mock-service --help start
./pact-provider-verifier --help verify
Linux 64 bit
curl -LO https://github.com/pact-foundation/pact-ruby-standalone/releases/download/v1.7.1/pact-1.7.1-linux-x86_64.tar.gz
tar xzf pact-1.7.1-linux-x86_64.tar.gz
cd pact/bin
./pact-mock-service --help start
./pact-provider-verifier --help verify
Linux 32 bit
curl -LO https://github.com/pact-foundation/pact-ruby-standalone/releases/download/v1.7.1/pact-1.7.1-linux-x86.tar.gz
tar xzf pact-1.7.1-linux-x86.tar.gz
cd pact/bin
./pact-mock-service --help start
./pact-provider-verifier --help verify
Windows
Download package, unzip, then run:
$ cd pact
$ .\bin\pact-mock-service.bat --help start
$ .\bin\pact-provider-verifier.bat --help verify