All configuration options can be provided via the command line or as environment variables:
Environment Variable
CLI Flag
Automatic
Description
CONFIG
--config
✅
Config file location. Can be used instead of the CLI or environment variables if needed
LOG
--log
✅
Set the log level. Valid values: panic, fatal, error, warn, info, debug, trace
NATS_SERVERS
--nats-servers
✅
A list of NATS servers to connect to
NATS_NAME_PREFIX
--nats-name-prefix
✅
A name label prefix. Sources should append a dot and their hostname .{hostname} to this, then set this is the NATS connection name which will be sent to the server on CONNECT to identify the client
NATS_CA_FILE
--nats-ca-file
✅
Path to the CA file that NATS should use when connecting over TLS
NATS_JWT_FILE
--nats-jwt-file
✅
Path to the file containing the user JWT
NATS_NKEY_FILE
--nats-nkey-file
✅
Path to the file containing the NKey seed
MAX-PARALLEL
--max-parallel
✅
Max number of requests to run in parallel
YOUR_CUSTOM_FLAG
--your-custom-flag
Configuration that you add should be documented here
Development
Running Locally
The source CLI can be interacted with locally by running:
go run main.go --help
Testing
Tests in this package can be run using:
go test ./...
Packaging
Docker images can be created manually using docker build, but GitHub actions also exist that are able to create, tag and push images. Images will be build for the main branch, and also for any commits tagged with a version such as v1.2.0
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.