aggregator3
Aggregator is a Rule interpreter for Azure DevOps triggered by Work Item events.
1M+
tfsaggregator/aggregator3 tfsaggregator/aggregator3:latest tfsaggregator/aggregator3:v1.2.0 tfsaggregator/aggregator3:v1.2.0-linux-x64 tfsaggregator/aggregator3:v1.2.0-win-x64
Pull the latest image from Docker Hub using the version matching the operating system.
docker pull tfsaggregator/aggregator3:latest
Example of running the container on Windows
docker run --rm -it -p 5320:5320 -e Aggregator_VstsToken=******** -e ASPNETCORE_Kestrel__Certificates__Default__Password="********" --mount type=bind,source=c:/src/github.com/tfsaggregator/aggregator-cli/docker/secrets/,target=c:/secrets --mount type=bind,source=c:/src/github.com/tfsaggregator/aggregator-cli/docker/rules/,target=c:/rules tfsaggregator/aggregator3:latest
Example of running the container on Linux
docker run --rm -it -p 5320:5320 -e Aggregator_VstsToken=******** -e ASPNETCORE_Kestrel__Certificates__Default__Password="********" -v /mnt/c/src/github.com/tfsaggregator/aggregator-cli/docker/rules:/rules -v /mnt/c/src/github.com/tfsaggregator/aggregator-cli/docker/secrets:/secrets tfsaggregator/aggregator3:latest
Clearly, replace the asterisks (********) with secret values.
The output should be similar to the following
Docker mode.
info: Microsoft.Hosting.Lifetime[0]
Now listening on: https://[::]:5320
info: Microsoft.Hosting.Lifetime[0]
Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
Hosting environment: Production
info: Microsoft.Hosting.Lifetime[0]
Content root path: C:\app
Note Azure DevOps refuses localhost connections for Web hooks. The container must be exposed using a DNS name.
Try access the /config/status endpoint to check connectivity, e.g.
curl -X GET https://aggregator.example.com:5320/config/status
Add the --insecure if you are using a self-signed certificate (not recommended for production).
If your system hasn't curl, you can test using PowerShell
Invoke-RestMethod -Method Get -Uri https://aggregator.example.com:5320/config/status
Add -SkipCertificateCheck if you are using a self-signed certificate (not recommended).
The container is configurable using these environment variables.
| Variable | Use | Linux Default value | Windows Default value |
|---|---|---|---|
ASPNETCORE_URLS | Set the listening port | https://*:5320 | https://*:5320 |
ASPNETCORE_Kestrel__Certificates__Default__Path | SSL Certificate | /secrets/aggregator.pfx | c:\\secrets\\aggregator.pfx |
ASPNETCORE_Kestrel__Certificates__Default__Password | SSL Certificate password | ||
Logging__LogLevel__Aggregator | Level of Application Logging | Debug | Debug |
Aggregator_ApiKeysPath | Valid API Keys | /secrets/apikeys.json | c:\\secrets\\apikeys.json |
Aggregator_SharedSecret | Shared password to authenticate CLI | ||
Aggregator_RulesPath | Directory with Rule files | /rules | c:\\rules |
Aggregator_VstsTokenType | Type of Azure DevOps authentication | PAT | PAT |
Aggregator_VstsToken | Azure DevOps Personal Authentication Token | ||
AGGREGATOR_TELEMETRY_DISABLED | Control telemetry | false | false |
We do not recommend using unsecured HTTP. The certificate should be trusted by the Azure DevOps instance.
Note that the backslash character (\) must be doubled for Windows paths.
Content type
Image
Digest
Size
58.3 MB
Last updated
over 4 years ago
docker pull tfsaggregator/aggregator3:v1.2.0