Skip to main content

Configuration Parameters

All clients and listeners share a basic set of configuration parameters. These parameters can be extended with listener-specific configuration parameters if necessary.

The basic parameters are:

  • orangebeard.endpoint - You Orangebeard instance url
  • orangebeard.accessToken - Your listener API access token
  • orangebeard.project - The project to report to
  • orangebeard.testset - The testset name to report
  • orangebeard.description - [Optional] The description for the test run
  • orangebeard.attributes - [Optional] Attributes to set to the test run. The special assignee attribute auto-assigns the test run to a user
  • orangebeard.ref.url (.NET/JS/Python) or orangebeard.referenceUrl (Java) - [Optional] A reference link for the test run
  • orangebeard.properties - [Optional] A property file name that can contain all parameters above

Auto-assigning test runs​

Add an assignee attribute to orangebeard.attributes to assign the test run to a specific user as soon as it starts. This is useful when a test set is owned by a person or team member who should be shown on every run, without having to assign each run by hand.

The value of the attribute is the email address or the user id (uid) of the user:

orangebeard.attributes=assignee:jane.doe@example.com;testtype:unit;

The run is assigned when:

  • a user with this email address or uid exists, and
  • that user is a member of the project the test run is reported to.

In that case the assignee attribute is removed from the test run's attributes: it is shown as the assignee of the run instead.

In all other situations the test run is not assigned and the assignee attribute is kept as a regular attribute on the test run, so you can see what was configured:

  • No user can be found for the email address or uid.
  • The user exists, but is not a member of the project.
  • The user lookup is temporarily unavailable. The test run itself always starts normally.
note

The attribute name assignee is not case-sensitive. Assignment only happens when a test run is started (including when an announced run is started); an assignee attribute sent when announcing a test run is not used to assign it.

Configuration​

Parameters can be provided using environment variables, or using a (java) properties file, i.e. orangebeard.properties. When no configuration is explicitly provided by a listener, the client will default to configuration from orangebeard.properties or environment variables.
By default, environment variables take precedence over properties specified in a properties file when both are present: A configuration object is created in the following order:

  1. Read the properties file (if present)
  2. Read environment variables (using . as a separator)
  3. Read environment variable (using _ as a separator; replaces . with _ in property names)

It is allowed to combine environment and properties.

E.g. endpoint, token, project from environment and testset information from a properties file. This allows for flexible configuration in your pipelines.

Configuration example​

The following example configuration shows how a properties file can be combined with setting environment variables to create a dynamic configuration for your project.

Properties file​

orangebeard.endpoint=https://my.orangebeard.app
orangebeard.project=orangebeard
orangebeard.testset=test-results-unittests
orangebeard.attributes=testtype:unit;ci-build;

Environment variables (C#)​

Environment.SetEnvironmentVariable("orangebeard.accessToken", Secrets.getAccessToken());
Environment.SetEnvironmentVariable("orangebeard.fileupload.patterns", @".*\.txt;.*\.bat");
Environment.SetEnvironmentVariable("orangebeard.ref.url", $"https://ci-server/build/{buildNumber}");
note

any combination that leads to at least a configured endpoint, accessToken, project and testset is considered valid.

Ask Orangebeard