Worker YAML Configuration
The Worker System YAML supports shared configurations, Worker microservice configurations, and router configurations.
The Worker System YAML supports shared configurations, Worker microservice configurations, and router configurations.
Worker YAML
## Worker service configuration
# worker:
## Worker port for REST API
# port: 8098
## Worker port for gRPC API
# grpcPort: 8099
## Worker cache configuration
# state:
# Defines how many key-value pairs can be stored in the state of a Worker
# maxItems: 10
# workerCache:
## Maximum number of workers stored in cache
# max: 200
## Time to live for workers in cache
# ttlMillis: 300000
# worker:
## Amount of workers allowed per action
# maxPerActionPerTenant: 10
## Defines how many memory max in Mb the node process can use per worker (child process)
# maxOldSpace: 128
# edition:
# limits:
## Maximum number of code characters allowed in a single worker
# maxCodeChars: 100000
## Maximum number of characters allowed in the ersion (when saving a Worker with version)
# maxVersionNumberChars: 64
## Maximum number of version description characters allowed (when saving a Worker with version)
# maxVersionDescriptionChars: 256
## Maximum number of version description characters allowed (when saving a Worker with version)
# maxVersionCommitShaChars: 128
## Maximum number of versions kept per Worker
# maxVersionByWorker: 50
# execution:
## Set it to false to bypass the host check ; host check forbidds the 'context.clients.axios' client from calling localhost, unicast IPs and JFrog's domain names.
# enableLocalNetworkValidation: true
# errorRateLimiter:
## Backed off by 2^10 which is around 17 minutes
# maxExponentBackoff: 10
## Reset errorRateLimiter every day (backoff exponent and current rate will be reset)
# cleanIntervalMillis: 1000 * 60 * 60 * 24
## How many times we can fail withing cleanIntervalMillis before backing off
# rateLimit: 10
# limits:
## Maximum CPU time in milliseconds allowed for a single worker
# cpuTimeMillis: 1000
## Maximum call time in milliseconds allowed for a single worker
# callTimeMillis: 5000
## Maximum memory in Mb allowed for a single worker
# memoryMB: 64
## How often we check for the worker status
# checkIntervalMillis: 100
## Maximum call depth allowed for a single worker
# maxCallDepth: 100
## Maximum time a worker can wait in the queue before being killed
# maxWaitingInQueueMillis: 30000
## Maximum size of JSON payload in KB allowed to be sent to a worker
# jsonPayloadLimitKB: 100
# workers:
## Number of processes (execution unit) in worker pool
# count: 10
## Security configuration for axios client used in workers
# axios:
## List of axios config properties allowed for modification
# requestConfigWhiteList: {}
## Whether to reset the request config base white list
# resetRequestConfigBaseWhiteList: false
## DNS cache configuration
# dnsCache:
# enabled: true
# maxTtlSeconds: 5
# errorTtlSeconds: 1
## These fields will be skipped from obfuscation in the worker output
# skipFieldsObfuscation:
# - 'modifiedRepoPath'
## Execution history configuration
# history:
# enabled: false
# storageConfig:
## The limit in Kb beyond which the entry will be truncated (essentially logs and custom data returned by the worker)
# maxEntrySizeKb: 130
## Interval in milliseconds for trimming the history
# trimIntervalMillis: 60000
## Maximum number of entries in the history for a single Worker
# maxTrimLength: 100
## The target of the storage where the history will be saved.
## Must follow the pattern <protocol>://<valid_uri>
## protocol can be 'redis' (for Redis storage or Valkey), 'rediss' for Redis/Valkey connection over TLS/SSL or 'file'
## you can use several uri separated by a comma (will use the same protocol for all)
## Examples: redis://localhost:6379 or file:///var/logs/,another/path
# url: 'file://$JFROG_HOME/var/log'
## Storage connection parameters separated by a semicolon
## List of parameters: username, password, mode (single or cluster), commandTimeoutMillis and connectionTimeoutMillis
# params: 'mode=single'
## Number of seconds the history is kept in the storage such as Redis or Valkey (does not apply for file system storage mode)
# streamTtlDurationSeconds: 1296000
# security:
# trustedCAFiles:
# - $JFROG_HOME/var/etc/worker/keys/trusted
# - $JFROG_HOME/var/etc/security/keys/trusted
## Configure the GRPC server (used by event producer to trigger Workers)
# grpc:
# maxConnectionAgeMillis: 300000
# maxConnectionIdleMillis: 30000
## Config for fetching Worker code samples
# marketplace:
# enabled: true,
## you target your own GitHub repository for code samples. (Please refer to this README for the
# github:
# baseUrl: 'https://github.com'
# owner: 'jfrog'
# repo: 'workers-sample'
# samplesPath: 'samples'
# branchRef: 'main'
# pollingIntervalHours: 24
## Logging configuration
# logging:
## Log throttle configuration
# throttle:
# maxItems: 50
# intervalMillis: 250
## Application logging configuration
# application:
# dirPath: 'var/log'
# level: 'info'
# rotation:
# frequency: '24h'
# maxSizeMb: 25
# maxFiles: 10
# datePattern: 'YYYY-MM-DD-HH'
## Request logging configuration
# request:
# dirPath: 'var/log'
# level: 'info'
# rotation:
# frequency: '24h'
# maxSizeMb: 25
# maxFiles: 10
# datePattern: 'YYYY-MM-DD-HH'Updated 5 days ago
