diff options
author | Valery Piashchynski <[email protected]> | 2023-07-06 18:23:56 +0200 |
---|---|---|
committer | Valery Piashchynski <[email protected]> | 2023-07-06 18:23:56 +0200 |
commit | 7b8a59ed071c0f66877aa8fe28155100fb18373d (patch) | |
tree | 8dbe5c20fa74fc9bf877c2025285b46c4c498eb1 | |
parent | d6ca04f1d7ae230bc8139ea652d67766779beb57 (diff) |
release: update schema3.0, CHANGELOG, config, plugins
Signed-off-by: Valery Piashchynski <[email protected]>
-rw-r--r-- | .rr.yaml | 10 | ||||
-rw-r--r-- | CHANGELOG.md | 26 | ||||
-rw-r--r-- | go.mod | 79 | ||||
-rw-r--r-- | go.sum | 157 | ||||
-rw-r--r-- | schemas/config/3.0.schema.json | 331 |
5 files changed, 401 insertions, 202 deletions
@@ -500,6 +500,11 @@ service: # Default: 1 process_num: 1 + # Timeout for the process stop operation + # + # Default: 5 seconds + timeout_stop_sec: 5 + # Allowed time before stop. # # Default: 0 (infinity), can be 1s, 2m, 2h (seconds, minutes, hours) @@ -529,6 +534,11 @@ service: # Default: none, required. command: "binary" + # Timeout for the process stop operation + # + # Default: 5 seconds + timeout_stop_sec: 5 + # Env variables for the process # # Default: empty diff --git a/CHANGELOG.md b/CHANGELOG.md index bc9610eb..ba1498a2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,31 @@ # CHANGELOG +# <center> ๐ v2023.2.0 ๐ </center> + +## ๐ New + +- โ๏ธ **Kafka driver**: Support for the `SCRAM-SHA-256` and `SCRAM-SHA-512` SASL mechanisms: [FR](https://github.com/roadrunner-server/roadrunner/issues/1601), (thanks @Azomas) +- โ๏ธ **Headers middleware**: Actualize CORS support: [FR](https://github.com/roadrunner-server/roadrunner/issues/909), (thanks @rmikalkenas, @hustlahusky) +- โ๏ธ **RoadRunner CLI**: Additional [semgrep](https://semgrep.dev/) security scanner. +- โ๏ธ **Docker builds**: New tags: `v2023`, `v2023.x` and with bugfix: `v2023.x.x`. The `latest` tag points to the latest **stable** release. All `rc`, `beta`, `alpha` releases will no longer be tagged with `latest`. +- โ๏ธ **Server plugin**: `after_init` option. This is a new `server` option and, like `on_init`, can contain any custom command to be fired after each pool of workers is initialized. For example, if you have 2 plugins: `http` and `grpc`, the `after_init` command would be fired twice: [FR](https://github.com/roadrunner-server/roadrunner/issues/1554), (thanks @rauanmayemir). +- โ๏ธ **AMQP driver**: Support for the `TLS` transport named `amqps`: [FR](https://github.com/roadrunner-server/roadrunner/issues/1538), (thanks @marcosraudkett) +- โ๏ธ **JOBS plugin**: Support for the workers health/readiness checks. [PR](https://github.com/roadrunner-server/jobs/pull/81), (thanks @Kaspiman) +- โ๏ธ **JOBS plugin**: Delete all messages that were in the priority queue when the pipeline was deleted (1-st part of the BUG), [BUG](https://github.com/roadrunner-server/roadrunner/issues/1382) +- โ๏ธ **JOBS plugin**: JOBS plugin now support reporting it's workers status with a simple query: `http://<status_plugin_host>:<port>/ready(health)?plugin=jobs`, [PR](https://github.com/roadrunner-server/roadrunner/issues/1382), (thanks @Kaspiman) +- โ๏ธ **Temporal plugin, internal**: Pass `history_len` to the PHP worker and get the PHP-SDK version to pass to the Temporal server. +- โ๏ธ **Lock plugin**: Completely rewritten. Now supports microseconds interval. Any `ttl/wait_ttl` value passed to RR is now treated as **microseconds**. There is no configuration for this plugin, it is bundled with RR. +- โ๏ธ **Service plugin**: Add a new option for the graceful process timeout: `timeout_stop_sec`. RR will wait for the specified amount of time (but not more than `endure.graceful_period`) for the process to stop, [FR](https://github.com/roadrunner-server/roadrunner/issues/1628), (thanks @asanikovich) + +## ๐ฉน Fixes + +- ๐ **JOBS plugin**: Nil pointer exception on very fast (after RR was started, but JOBS worker failed to start) check for the JOBS metrics: [BUG](https://github.com/roadrunner-server/roadrunner/issues/1597), (thanks @Kaspiman). +- ๐ **Service plugin**: Incorrect parsing and assignment of the `process_num` value passed via RPC: [BUG](https://github.com/roadrunner-server/roadrunner/issues/1621), (thanks @asanikovich) + +### <center>๐งน Chore:</center> + +- ๐งโ๐ญ **Dependencies**: update project dependencies. + # <center> ๐ v2023.2.0-beta.1 ๐ </center> ## ๐ New @@ -8,59 +8,61 @@ require ( github.com/fatih/color v1.15.0 github.com/joho/godotenv v1.5.1 github.com/olekukonko/tablewriter v0.0.5 - github.com/roadrunner-server/amqp/v4 v4.6.1 + github.com/roadrunner-server/amqp/v4 v4.7.0 github.com/roadrunner-server/api/v4 v4.5.0 github.com/roadrunner-server/app-logger/v4 v4.0.9 - github.com/roadrunner-server/beanstalk/v4 v4.3.0 - github.com/roadrunner-server/boltdb/v4 v4.4.1 - github.com/roadrunner-server/centrifuge/v4 v4.1.11 - github.com/roadrunner-server/config/v4 v4.3.5 + github.com/roadrunner-server/beanstalk/v4 v4.4.0 + github.com/roadrunner-server/boltdb/v4 v4.5.0 + github.com/roadrunner-server/centrifuge/v4 v4.2.0 + github.com/roadrunner-server/config/v4 v4.4.0 github.com/roadrunner-server/endure/v2 v2.2.1 github.com/roadrunner-server/errors v1.2.0 - github.com/roadrunner-server/fileserver/v4 v4.0.14 + github.com/roadrunner-server/fileserver/v4 v4.1.0 github.com/roadrunner-server/goridge/v3 v3.6.3 - github.com/roadrunner-server/grpc/v4 v4.1.15 - github.com/roadrunner-server/gzip/v4 v4.0.13 - github.com/roadrunner-server/headers/v4 v4.1.1 - github.com/roadrunner-server/http/v4 v4.1.14 - github.com/roadrunner-server/informer/v4 v4.1.10 - github.com/roadrunner-server/jobs/v4 v4.4.1 - github.com/roadrunner-server/kafka/v4 v4.2.1 - github.com/roadrunner-server/kv/v4 v4.1.13 - github.com/roadrunner-server/lock/v4 v4.2.0 - github.com/roadrunner-server/logger/v4 v4.1.10 + github.com/roadrunner-server/grpc/v4 v4.2.0 + github.com/roadrunner-server/gzip/v4 v4.1.0 + github.com/roadrunner-server/headers/v4 v4.2.0 + github.com/roadrunner-server/http/v4 v4.2.0 + github.com/roadrunner-server/informer/v4 v4.2.0 + github.com/roadrunner-server/jobs/v4 v4.5.0 + github.com/roadrunner-server/kafka/v4 v4.3.0 + github.com/roadrunner-server/kv/v4 v4.2.0 + github.com/roadrunner-server/lock/v4 v4.3.0 + github.com/roadrunner-server/logger/v4 v4.2.0 github.com/roadrunner-server/memcached/v4 v4.1.10 - github.com/roadrunner-server/memory/v4 v4.3.0 - github.com/roadrunner-server/metrics/v4 v4.0.12 - github.com/roadrunner-server/nats/v4 v4.3.1 - github.com/roadrunner-server/otel/v4 v4.1.15 - github.com/roadrunner-server/prometheus/v4 v4.0.14 - github.com/roadrunner-server/proxy_ip_parser/v4 v4.0.12 - github.com/roadrunner-server/redis/v4 v4.1.13 + github.com/roadrunner-server/memory/v4 v4.4.0 + github.com/roadrunner-server/metrics/v4 v4.1.0 + github.com/roadrunner-server/nats/v4 v4.4.0 + github.com/roadrunner-server/otel/v4 v4.2.0 + github.com/roadrunner-server/prometheus/v4 v4.1.0 + github.com/roadrunner-server/proxy_ip_parser/v4 v4.1.0 + github.com/roadrunner-server/redis/v4 v4.2.0 github.com/roadrunner-server/resetter/v4 v4.0.7 - github.com/roadrunner-server/rpc/v4 v4.1.12 - github.com/roadrunner-server/sdk/v4 v4.3.0 - github.com/roadrunner-server/send/v4 v4.1.0 - github.com/roadrunner-server/server/v4 v4.1.10 - github.com/roadrunner-server/service/v4 v4.2.0 - github.com/roadrunner-server/sqs/v4 v4.3.1 - github.com/roadrunner-server/static/v4 v4.0.13 - github.com/roadrunner-server/status/v4 v4.2.0 - github.com/roadrunner-server/tcp/v4 v4.0.12 + github.com/roadrunner-server/rpc/v4 v4.2.0 + github.com/roadrunner-server/sdk/v4 v4.3.1 + github.com/roadrunner-server/send/v4 v4.2.0 + github.com/roadrunner-server/server/v4 v4.2.0 + github.com/roadrunner-server/service/v4 v4.3.0 + github.com/roadrunner-server/sqs/v4 v4.4.0 + github.com/roadrunner-server/static/v4 v4.1.0 + github.com/roadrunner-server/status/v4 v4.3.0 + github.com/roadrunner-server/tcp/v4 v4.1.0 github.com/spf13/cobra v1.7.0 github.com/spf13/viper v1.16.0 github.com/stretchr/testify v1.8.4 - github.com/temporalio/roadrunner-temporal/v4 v4.2.7 + github.com/temporalio/roadrunner-temporal/v4 v4.3.2 go.buf.build/protocolbuffers/go/roadrunner-server/api v1.3.40 go.uber.org/automaxprocs v1.5.2 golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df ) +replace github.com/temporalio/roadrunner-temporal/v4 => ../plugins/roadrunner-temporal + exclude github.com/uber-go/tally/v4 v4.1.7 require ( github.com/andybalholm/brotli v1.0.5 // indirect - github.com/aws/aws-sdk-go v1.44.295 // indirect + github.com/aws/aws-sdk-go v1.44.296 // indirect github.com/aws/aws-sdk-go-v2 v1.18.1 // indirect github.com/aws/aws-sdk-go-v2/config v1.18.27 // indirect github.com/aws/aws-sdk-go-v2/credentials v1.13.26 // indirect @@ -90,7 +92,6 @@ require ( github.com/go-logr/logr v1.2.4 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/go-ole/go-ole v1.2.6 // indirect - github.com/go-redis/redis/v8 v8.11.5 // indirect github.com/goccy/go-json v0.10.2 // indirect github.com/gofiber/fiber/v2 v2.47.0 // indirect github.com/gogo/googleapis v1.4.1 // indirect @@ -120,7 +121,6 @@ require ( github.com/nats-io/nats.go v1.27.1 // indirect github.com/nats-io/nkeys v0.4.4 // indirect github.com/nats-io/nuid v1.0.1 // indirect - github.com/onsi/gomega v1.24.1 // indirect github.com/openzipkin/zipkin-go v0.4.1 // indirect github.com/pborman/uuid v1.2.1 // indirect github.com/pelletier/go-toml/v2 v2.0.8 // indirect @@ -133,6 +133,7 @@ require ( github.com/prometheus/common v0.44.0 // indirect github.com/prometheus/procfs v0.11.0 // indirect github.com/rabbitmq/amqp091-go v1.8.1 // indirect + github.com/redis/go-redis/v9 v9.0.5 // indirect github.com/rivo/uniseg v0.4.4 // indirect github.com/roadrunner-server/tcplisten v1.3.0 // indirect github.com/robfig/cron v1.2.0 // indirect @@ -184,14 +185,14 @@ require ( go.uber.org/atomic v1.11.0 // indirect go.uber.org/multierr v1.11.0 // indirect go.uber.org/zap v1.24.0 // indirect - golang.org/x/crypto v0.10.0 // indirect + golang.org/x/crypto v0.11.0 // indirect golang.org/x/mod v0.12.0 // indirect - golang.org/x/net v0.11.0 // indirect + golang.org/x/net v0.12.0 // indirect golang.org/x/sync v0.3.0 // indirect golang.org/x/sys v0.10.0 // indirect golang.org/x/text v0.11.0 // indirect golang.org/x/time v0.3.0 // indirect - golang.org/x/tools v0.10.0 // indirect + golang.org/x/tools v0.11.0 // indirect google.golang.org/genproto/googleapis/api v0.0.0-20230629202037-9506855d4529 // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20230629202037-9506855d4529 // indirect google.golang.org/grpc v1.56.1 // indirect @@ -617,8 +617,8 @@ github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kd github.com/apache/arrow/go/v10 v10.0.1/go.mod h1:YvhnlEePVnBS4+0z3fhPfUy7W1Ikj0Ih0vcRo/gZ1M0= github.com/apache/arrow/go/v11 v11.0.0/go.mod h1:Eg5OsL5H+e299f7u5ssuXsuHQVEGC4xei5aX110hRiI= github.com/apache/thrift v0.16.0/go.mod h1:PHK3hniurgQaNMZYaCLEqXKsYK8upmhPbmdP2FXSqgU= -github.com/aws/aws-sdk-go v1.44.295 h1:SGjU1+MqttXfRiWHD6WU0DRhaanJgAFY+xIhEaugV8Y= -github.com/aws/aws-sdk-go v1.44.295/go.mod h1:aVsgQcEevwlmQ7qHE9I3h+dtQgpqhFB+i8Phjh7fkwI= +github.com/aws/aws-sdk-go v1.44.296 h1:ALRZIIKI+6EBWDiWP4RHWmOtHZ7dywRzenL4NWgNI2A= +github.com/aws/aws-sdk-go v1.44.296/go.mod h1:aVsgQcEevwlmQ7qHE9I3h+dtQgpqhFB+i8Phjh7fkwI= github.com/aws/aws-sdk-go-v2 v1.18.1 h1:+tefE750oAb7ZQGzla6bLkOwfcQCEtC5y2RqoqCeqKo= github.com/aws/aws-sdk-go-v2 v1.18.1/go.mod h1:uzbQtefpm44goOPmdKyAlXSNcwlRgF3ePWVW6EtJvvw= github.com/aws/aws-sdk-go-v2/config v1.18.27 h1:Az9uLwmssTE6OGTpsFqOnaGpLnKDqNYOJzWuC6UAYzA= @@ -657,6 +657,8 @@ github.com/boombuler/barcode v1.0.0/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl github.com/boombuler/barcode v1.0.1/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= github.com/bradfitz/gomemcache v0.0.0-20230611145640-acc696258285 h1:Dr+ezPI5ivhMn/3WOoB86XzMhie146DNaBbhaQWZHMY= github.com/bradfitz/gomemcache v0.0.0-20230611145640-acc696258285/go.mod h1:H0wQNHz2YrLsuXOZozoeDmnHXkNCRmMW0gwFWDfEZDA= +github.com/bsm/ginkgo/v2 v2.7.0 h1:ItPMPH90RbmZJt5GtkcNvIRuGEdwlBItdNVoyzaNQao= +github.com/bsm/gomega v1.26.0 h1:LhQm+AFcgV2M0WyKroMASzAzCAJVpAxQXv4SaI9a69Y= github.com/buger/goterm v1.0.4 h1:Z9YvGmOih81P0FbVtEYTFF6YsSgxSUKEhf/f9bTMXbY= github.com/buger/goterm v1.0.4/go.mod h1:HiFWV3xnkolgrBV3mY8m0X0Pumt4zg4QhbdOzQtB8tE= github.com/cactus/go-statsd-client/statsd v0.0.0-20200423205355-cb0885a1018c h1:HIGF0r/56+7fuIZw2V4isE22MK6xpxWx7BbV8dJ290w= @@ -756,8 +758,6 @@ github.com/go-ole/go-ole v1.2.6 h1:/Fpf6oFPoeFik9ty7siob0G6Ke8QvQEuVcuChpwXzpY= github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0= github.com/go-pdf/fpdf v0.5.0/go.mod h1:HzcnA+A23uwogo0tp9yU+l3V+KXhiESpt1PMayhOh5M= github.com/go-pdf/fpdf v0.6.0/go.mod h1:HzcnA+A23uwogo0tp9yU+l3V+KXhiESpt1PMayhOh5M= -github.com/go-redis/redis/v8 v8.11.5 h1:AcZZR7igkdvfVmQTPnu9WE37LRrO/YrBH5zWyjDC0oI= -github.com/go-redis/redis/v8 v8.11.5/go.mod h1:gREzHqY1hg6oD9ngVRbLStwAWKhA0FEgq8Jd4h5lpwo= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/goccy/go-json v0.9.11/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I= github.com/goccy/go-json v0.10.2 h1:CrxCmQqYDkv1z7lO7Wbh2HN93uovUHgrECaO5ZrCXAU= @@ -979,12 +979,8 @@ github.com/nats-io/nkeys v0.4.4/go.mod h1:XUkxdLPTufzlihbamfzQ7mw/VGx6ObUs+0bN5s github.com/nats-io/nuid v1.0.1 h1:5iA8DT8V7q8WK2EScv2padNa/rTESc1KdnPw4TC2paw= github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= -github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec= github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY= -github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= -github.com/onsi/gomega v1.24.1 h1:KORJXNNTzJXzu4ScJWssJfJMnJ+2QJqhoQSRwNlze9E= -github.com/onsi/gomega v1.24.1/go.mod h1:3AOiACssS3/MajrniINInwbfOOtfZvplPzuRSmvt1jM= github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= github.com/openzipkin/zipkin-go v0.4.1 h1:kNd/ST2yLLWhaWrkgchya40TJabe8Hioj9udfPcEO5A= github.com/openzipkin/zipkin-go v0.4.1/go.mod h1:qY0VqDSN1pOBN94dBc6w2GJlWLiovAyg7Qt6/I9HecM= @@ -1037,88 +1033,90 @@ github.com/prometheus/procfs v0.11.0 h1:5EAgkfkMl659uZPbe9AS2N68a7Cc1TJbPEuGzFuR github.com/prometheus/procfs v0.11.0/go.mod h1:nwNm2aOCAYw8uTR/9bWRREkZFxAUcWzPHWJq+XBB/FM= github.com/rabbitmq/amqp091-go v1.8.1 h1:RejT1SBUim5doqcL6s7iN6SBmsQqyTgXb1xMlH0h1hA= github.com/rabbitmq/amqp091-go v1.8.1/go.mod h1:+jPrT9iY2eLjRaMSRHUhc3z14E/l85kv/f+6luSD3pc= +github.com/redis/go-redis/v9 v9.0.5 h1:CuQcn5HIEeK7BgElubPP8CGtE0KakrnbBSTLjathl5o= +github.com/redis/go-redis/v9 v9.0.5/go.mod h1:WqMKv5vnQbRuZstUwxQI195wHy+t4PuXDOjzMvcuQHk= github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis= github.com/rivo/uniseg v0.4.4/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= -github.com/roadrunner-server/amqp/v4 v4.6.1 h1:wY5fmcW8R0lo++coDWSKnSgDgYrWr7GiH90Tng4W4Lo= -github.com/roadrunner-server/amqp/v4 v4.6.1/go.mod h1:qvPhlLvvBlLt3ONM3MXoXoZ1F50UzMAOOsurbUDxw+A= +github.com/roadrunner-server/amqp/v4 v4.7.0 h1:M5PWVZ1Qz+3nLmB9u/3kgMXmee3Vt1AKgcwthetCrTk= +github.com/roadrunner-server/amqp/v4 v4.7.0/go.mod h1:0DUFGcGLljCS80K6DxjdwrEcWpEyckKL41QgRE7Tp3s= github.com/roadrunner-server/api/v4 v4.5.0 h1:OUAcCwLeQbgRj7E2/6M6W2nxOnbG6XYPSS6LjW6COAQ= github.com/roadrunner-server/api/v4 v4.5.0/go.mod h1:nzJvLrDMYT0K9hgPFmeL8dh6q2EvrJEaCHy2XRqz20c= github.com/roadrunner-server/app-logger/v4 v4.0.9 h1:bDTnlMGwC3q7x4R7zXfyZ3QVZnAjDxXNX36xsSH7RZ8= github.com/roadrunner-server/app-logger/v4 v4.0.9/go.mod h1:ewb5g6/+dc4aErm//UBtbJ0QvaV9Fb4S9ULMfKKn9tc= -github.com/roadrunner-server/beanstalk/v4 v4.3.0 h1:UVwDy5wQbtowtVHx5XxhnkmYyTf4ykcFDY9bmWx0vLk= -github.com/roadrunner-server/beanstalk/v4 v4.3.0/go.mod h1:IOKJ2xScJthfDHtOwPKxi0WnchVOnRo5bLjvCaKuG1g= -github.com/roadrunner-server/boltdb/v4 v4.4.1 h1:vkml65HEaQTonfe4Lsc6WBLks8KZycs8iVJpDA9l1DI= -github.com/roadrunner-server/boltdb/v4 v4.4.1/go.mod h1:ZgMGgReToW7e4/j5Pc0ZDc6t5HJt8Z+Y4NdJVSgjFP4= -github.com/roadrunner-server/centrifuge/v4 v4.1.11 h1:TRCDQP1XKQ5Cwv9lL0sigPTF0O97YLesH15NtjhMWls= -github.com/roadrunner-server/centrifuge/v4 v4.1.11/go.mod h1:gVbLzAfQEnGOkSFkO51+rSSjETVDsM43e2xHYVcV4qQ= -github.com/roadrunner-server/config/v4 v4.3.5 h1:TBs9vu0E9QqS5ssPnGyNRi9A6r/MbcIBlob57WUg8ps= -github.com/roadrunner-server/config/v4 v4.3.5/go.mod h1:nEKt+gejzSmcIpXJ7nXX6ST/e4B6DtbMNup4zmrjsAg= +github.com/roadrunner-server/beanstalk/v4 v4.4.0 h1:M7aXIHAzahmRDQbJYRTPg15xNbzb6gE5EuqI1VwTVW8= +github.com/roadrunner-server/beanstalk/v4 v4.4.0/go.mod h1:V3XbdhN19Qd8vIvWKpVH53E9an3XEI2f/v+zIHwWAwI= +github.com/roadrunner-server/boltdb/v4 v4.5.0 h1:bOT49WMyF7oCU6aBbJqs/LoB/n5X02N9C5WG/hsn3o4= +github.com/roadrunner-server/boltdb/v4 v4.5.0/go.mod h1:Dv9hT/8p8P0+ABe+dcuuFQg6pTMk040tlMx/gcRTFKs= +github.com/roadrunner-server/centrifuge/v4 v4.2.0 h1:pRQ707/yQVqK+oUQ+KGZs6rOgAfWiutIR+4GqaOB+nU= +github.com/roadrunner-server/centrifuge/v4 v4.2.0/go.mod h1:K9Tfaxuo7Q/63xIVJcFmZVyy21a9OF15vvEfxcDWkKA= +github.com/roadrunner-server/config/v4 v4.4.0 h1:iRgwldlKQJpRZ3eUThBWIEEFxQT2Qg+QKY5HxLlCHzg= +github.com/roadrunner-server/config/v4 v4.4.0/go.mod h1:WUnciU9NeJpcVukJCYDp4bF6xb+yRbCVi3gjJXWoZtg= github.com/roadrunner-server/endure/v2 v2.2.1 h1:OkJUSd6+qqTcnl8in3bbyidEOmhO3B9uOVdR0avba28= github.com/roadrunner-server/endure/v2 v2.2.1/go.mod h1:4eTAr3fASpdyqgFcbqVckOx68dZ4YPECecrcHvAuSdU= github.com/roadrunner-server/errors v1.2.0 h1:qBmNXt8Iex9QnYTjCkbJKsBZu2EtYkQCM06GUDcQBbI= github.com/roadrunner-server/errors v1.2.0/go.mod h1:z0ECxZp/dDa5RahtMcy4mBIavVxiZ9vwE5kByl7kFtY= -github.com/roadrunner-server/fileserver/v4 v4.0.14 h1:B3tzThicz+66OjK8+mzpfkh07N/IbrjTMcXpsLME6Mw= -github.com/roadrunner-server/fileserver/v4 v4.0.14/go.mod h1:wkAZ7iunfUlUviuler36MkLN2TMFR8gxyF48OKbVtjE= +github.com/roadrunner-server/fileserver/v4 v4.1.0 h1:5O42/ESyNWfpM0eTlRz/mYjWP6GJkNSz47r2H/D1WFI= +github.com/roadrunner-server/fileserver/v4 v4.1.0/go.mod h1:TtFW0RfNGyoMgqyhEE5tCUD7X29irA1D08Lv0MNioVI= github.com/roadrunner-server/goridge/v3 v3.6.3 h1:8hCuPVK9BxIE4IGyNphK6KPAy9Kg6t5tHaItBIQKh2o= github.com/roadrunner-server/goridge/v3 v3.6.3/go.mod h1:hB5+lHhl8msuHrngjKQ+Wx8B705AU0/2DlYGFXbjtgU= -github.com/roadrunner-server/grpc/v4 v4.1.15 h1:WFnUSjJzMCUB1q0iPLM8ArsXrOuozL/A3LTC1C86wKU= -github.com/roadrunner-server/grpc/v4 v4.1.15/go.mod h1:58TtayN1GFpmla7pSgl4SK6OtiCXIDNQ4Igma/nRx0I= -github.com/roadrunner-server/gzip/v4 v4.0.13 h1:AnjOHmQQDptiROj4Bb56wnMR8nC7ZvFWkIy5Tqs/OYw= -github.com/roadrunner-server/gzip/v4 v4.0.13/go.mod h1:05bHgPsuuXtmZ9Iwvl5vnRWsiVa/SrNbqVQUkZBnuHw= -github.com/roadrunner-server/headers/v4 v4.1.1 h1:hNi+nrbeCPXDhdpJRiWm0/LMwLjLc7pdKKGGGr2tSdQ= -github.com/roadrunner-server/headers/v4 v4.1.1/go.mod h1:Oh85fcYc14DxJe4mV3ifPSBB6bYiaSX2LDM6rRDDjKA= -github.com/roadrunner-server/http/v4 v4.1.14 h1:7HQmzbgEX8Nplovpp1vgNSaMxBRozeF/rfJDfQLVCEE= -github.com/roadrunner-server/http/v4 v4.1.14/go.mod h1:+YoTDU1Cg8U2Rosn6iui5P+E+5KZ/QMD0iKdYsxh7Yo= -github.com/roadrunner-server/informer/v4 v4.1.10 h1:fNFt2FQA1MrXuNkFMfNxCfOl1NBE7g0BAqJyrzv6/8Y= -github.com/roadrunner-server/informer/v4 v4.1.10/go.mod h1:Rzq7MdApa37Vhp44HUOxTFe6YL1cFvBSOxyc6VrugAs= -github.com/roadrunner-server/jobs/v4 v4.4.1 h1:vHWHwyQgY9MSB2Aha8SPScsGh6j1BpCmyYPx8I2MGWA= -github.com/roadrunner-server/jobs/v4 v4.4.1/go.mod h1:Ke7fNFKTIrNRjMBT9v5L8bU7BtlKQKaCasGpiSjCgrw= -github.com/roadrunner-server/kafka/v4 v4.2.1 h1:TFUVbQzhZEeATh6mEhb5aHfhUArPBLCPwZQb5ZF949I= -github.com/roadrunner-server/kafka/v4 v4.2.1/go.mod h1:nrsHNcfrJQ/GX7OnQ54mar8Ug1VP1k84m/T+mjR8CaA= -github.com/roadrunner-server/kv/v4 v4.1.13 h1:WKGHPvc3Fu4DodlS14zAZv5GNjg8ngT9FBTmdO1eurs= -github.com/roadrunner-server/kv/v4 v4.1.13/go.mod h1:K68llRju01tld0yJeJf12A0Bd20VWgLKCp78TTyNe3U= -github.com/roadrunner-server/lock/v4 v4.2.0 h1:EGCPEYafzX6wI5rREg78C3ENyZ7B0KbRsrpQMHR+so4= -github.com/roadrunner-server/lock/v4 v4.2.0/go.mod h1:9J2gRhb3la5SYn8POMo8BRC9MXcdg0/XVU72QzkfNzs= -github.com/roadrunner-server/logger/v4 v4.1.10 h1:+eLS8KwIvpWTIkyjPCk7UKSnQ+xK7UAKstT8wOCV9uQ= -github.com/roadrunner-server/logger/v4 v4.1.10/go.mod h1:HvbhVvfH8sxZXT5q/iMCnjO4NPWPBAo5MJRyYQ+n44Y= +github.com/roadrunner-server/grpc/v4 v4.2.0 h1:wb0WxQNMpG+frI2N9H18j2RWG4aZlb9pvNr/hc94qWM= +github.com/roadrunner-server/grpc/v4 v4.2.0/go.mod h1:jfI+iVJlCJNFIY1vsY7BNNV1aqfKsEMNu47m6CkGK+Q= +github.com/roadrunner-server/gzip/v4 v4.1.0 h1:YtVnKUty3lsYUtpRkxsQoW2aPyDsSl3ndKtWEeVUas8= +github.com/roadrunner-server/gzip/v4 v4.1.0/go.mod h1:aurznE//pHsr7FD1QitiVuNK1HRXUyM6pICJNlraSnA= +github.com/roadrunner-server/headers/v4 v4.2.0 h1:CCgDX1B2EDt+9Hp5SkeG02LlnJXsHC+Hn1CpJ77zdmQ= +github.com/roadrunner-server/headers/v4 v4.2.0/go.mod h1:ifLP7Y7tDAn3MD783c7v7VEH/Df3YB3cplcZmqN+pgI= +github.com/roadrunner-server/http/v4 v4.2.0 h1:reZYAh0Kv9Lbhzbt0putM3Z4Yh0x1fDLhtl/Pwhm1gI= +github.com/roadrunner-server/http/v4 v4.2.0/go.mod h1:eh8Z8GKhpYRAFX4ihTfzjXkcgc6SIVu7Sp9gIiwFLfI= +github.com/roadrunner-server/informer/v4 v4.2.0 h1:LQuJwW7dg1Z47GtocOaOeepXJPDYB12K6zznXC3oeBQ= +github.com/roadrunner-server/informer/v4 v4.2.0/go.mod h1:c59aVVYVke4nB69gYSHvVL1Ct+zOkf+SnA3ikPPhDUs= +github.com/roadrunner-server/jobs/v4 v4.5.0 h1:+z7c+Y/iTvfh8ab1pwRozZnxbZKVVDQoYPh513Lqsdo= +github.com/roadrunner-server/jobs/v4 v4.5.0/go.mod h1:Wn3PScAF5weQdcxCwIC42axxdP2XSNrsxYOHSvCNiGw= +github.com/roadrunner-server/kafka/v4 v4.3.0 h1:v1SdC7Erh6PFBrPEC8bgwreuf1xHu7pfM8IBVd9uFb8= +github.com/roadrunner-server/kafka/v4 v4.3.0/go.mod h1:/XGmZGE2yGxvjQrhU46L9IxO/7wG9/kk19IeGPZRFUo= +github.com/roadrunner-server/kv/v4 v4.2.0 h1:B/3SHE6xAqwK3wDG9PpB1nGikwUPIdaKsiOhH5W1CoI= +github.com/roadrunner-server/kv/v4 v4.2.0/go.mod h1:4E7zTQ8liypysI7DxtVGorPBRyqqFqHtrA3S2otbolE= +github.com/roadrunner-server/lock/v4 v4.3.0 h1:iAVkb/Z2z0iUjVh9Qs07mFHSgsGBJDmV9gM2gk4Ieiw= +github.com/roadrunner-server/lock/v4 v4.3.0/go.mod h1:9J2gRhb3la5SYn8POMo8BRC9MXcdg0/XVU72QzkfNzs= +github.com/roadrunner-server/logger/v4 v4.2.0 h1:dKWC1hS6iTVFqRD1gUtAXqOFbNMjPKSCXaC9hbZwowo= +github.com/roadrunner-server/logger/v4 v4.2.0/go.mod h1:wTLv/67y9rSaz5z1wGn2lpsOm2BRLBdvaKpJHbeBE/c= github.com/roadrunner-server/memcached/v4 v4.1.10 h1:zkOQBi5IsVh5EFJAlcYgkuDFrSvvTMSdK3/52Pp0QB4= github.com/roadrunner-server/memcached/v4 v4.1.10/go.mod h1:NGCxpRS8IjEkzzbR2foB6HS118y/eKMG72th6EjgvT4= -github.com/roadrunner-server/memory/v4 v4.3.0 h1:uiSXy2K9yvkjAs3aku02M5I5ab+f88lPgXdRxQx4MYI= -github.com/roadrunner-server/memory/v4 v4.3.0/go.mod h1:Aj5UseBK1186gLb3mRaykZIDAG7pyHUvmUQbZSgiGbQ= -github.com/roadrunner-server/metrics/v4 v4.0.12 h1:IRxHOEKy6U+wENKtshkB3evc+pd55ebclR/b3fo84N4= -github.com/roadrunner-server/metrics/v4 v4.0.12/go.mod h1:CnC2i1GyU9FMaxUXVjzBFYpePU9QIentG0EA748XkwU= -github.com/roadrunner-server/nats/v4 v4.3.1 h1:GiEBvvCtmniW/RKr9Ac1X3s9WxCFNxt2Vlf1CCf2Xlc= -github.com/roadrunner-server/nats/v4 v4.3.1/go.mod h1:tkj7QJZnnm/7IJsN2ziaWoeeLZMJL+VmgbchfiJ9/tY= -github.com/roadrunner-server/otel/v4 v4.1.15 h1:paRS15e26QkOQSk0LwbUxk4CIdMiIvOh5L+czTQ7zVk= -github.com/roadrunner-server/otel/v4 v4.1.15/go.mod h1:hwwl/VZ3K8vDdeRBnZz5CjHmoXcN2RdGO6srGrOgsaU= -github.com/roadrunner-server/prometheus/v4 v4.0.14 h1:BjWMIVnm3lMSAbN42VMz7OYTO02UYIqHK6lKhe8IzV0= -github.com/roadrunner-server/prometheus/v4 v4.0.14/go.mod h1:KYC4Ev6c5jTZUKXgRpwIspv/X4tRyUbJ/yyUkCbN6FY= -github.com/roadrunner-server/proxy_ip_parser/v4 v4.0.12 h1:wwwdeD0KaSHgs0TQkVU+GAlvvryRLz+SYHU53JRiEWY= -github.com/roadrunner-server/proxy_ip_parser/v4 v4.0.12/go.mod h1:hEqTlIP97wyBGgMFI1TNjspal52YwjrP+YQVwtcS9m0= -github.com/roadrunner-server/redis/v4 v4.1.13 h1:OdbeevJDjKNWYN8YG49rpnC71K+QpoMrMBaub/DbuQE= -github.com/roadrunner-server/redis/v4 v4.1.13/go.mod h1:HxJl58JzmtT4LesTLkXzFubWbWFXOXcIZst+KURCo9M= +github.com/roadrunner-server/memory/v4 v4.4.0 h1:gfTD5HjiAvSt+RfXlhYxpfR6VMG4RHWBZxGt9a4JsM4= +github.com/roadrunner-server/memory/v4 v4.4.0/go.mod h1:uvrOgyuzZxcDKmBgX1QZR+25t1M9BtqCwd4uw+h5YvU= +github.com/roadrunner-server/metrics/v4 v4.1.0 h1:8ibAYnoRIpOb0mprzB1fWj5EDMPES9geToL/b7AT/Pw= +github.com/roadrunner-server/metrics/v4 v4.1.0/go.mod h1:Tm1TclZfJrjH8iNehV92mmGF9u9/67fChfAAF0vilzE= +github.com/roadrunner-server/nats/v4 v4.4.0 h1:6778/MSPMOCtCViFNuvIVig/2NJZQ2zKW+9vthZ2FW4= +github.com/roadrunner-server/nats/v4 v4.4.0/go.mod h1:7fd33GKUopQ8EWnaoPXcPDJb8crCxZdsTxuwrvWezxE= +github.com/roadrunner-server/otel/v4 v4.2.0 h1:x20Vyr0s/TNbWw5jIe6VH7MTTI7jSGbNN1w2QgsfVBc= +github.com/roadrunner-server/otel/v4 v4.2.0/go.mod h1:w8GZeiY3eH4twPh08DHJnGIbWdtLGOuHcYCQ7EE3urw= +github.com/roadrunner-server/prometheus/v4 v4.1.0 h1:bjFKOx8TGlBkCc7W3/s5kA9qCViBQUgMEsMWdYkyvjA= +github.com/roadrunner-server/prometheus/v4 v4.1.0/go.mod h1:xjsX0u+69E13kP29BFsvWVmUv1W3rWzHKxKqaWFOjHI= +github.com/roadrunner-server/proxy_ip_parser/v4 v4.1.0 h1:IwL0kpofMXhjF0v/8RivcqLK+Dl2dSF0QiS1sC549nE= +github.com/roadrunner-server/proxy_ip_parser/v4 v4.1.0/go.mod h1:TlfsOu3KtJh3t0PBX8fDeRHxVM46JKGuWUUkYv7NBpo= +github.com/roadrunner-server/redis/v4 v4.2.0 h1:0Qj+s0WMSRHwEBPxxL1LRGIinyg1JYlC+FP5hETr6+o= +github.com/roadrunner-server/redis/v4 v4.2.0/go.mod h1:kYWUG05Tr6uX7+iLO+zhfEnM7+b7FKLuvVCluyCyGvk= github.com/roadrunner-server/resetter/v4 v4.0.7 h1:bUm94zICb1ftweRZZK4Ij6EQ0gN8ieh+AjPDCx9a+pQ= github.com/roadrunner-server/resetter/v4 v4.0.7/go.mod h1:0Bfqs6AscmK6olMzlXtyYRZlfjE9Sqy9RgEC3MxieOA= -github.com/roadrunner-server/rpc/v4 v4.1.12 h1:s/uJ+HdQaR0kYU3GbOpr87obuscgHbO1k5yN1+/DkOc= -github.com/roadrunner-server/rpc/v4 v4.1.12/go.mod h1:bk0O5L7ywaTCfR6V7KYrhCxWk1gZ7a9r2xF/+tGmf8A= -github.com/roadrunner-server/sdk/v4 v4.3.0 h1:QdCK5kd/eLTnyLQsOOFtkd3CQK+NR4j/5PF5OpeHvA0= -github.com/roadrunner-server/sdk/v4 v4.3.0/go.mod h1:7LIxYOBo306SncMKUxEy9Xd3GQWYHW0G4zuDHnKZ3l4= -github.com/roadrunner-server/send/v4 v4.1.0 h1:RiEY0oR952HNFR44GaFdxBFgC4sXlNoRWdoo0v05ZcU= -github.com/roadrunner-server/send/v4 v4.1.0/go.mod h1:enFaWTByFnUGbZzHMRka7G6o6BPsTf1QDTDr/v2uVNs= -github.com/roadrunner-server/server/v4 v4.1.10 h1:UtRlKcUi0tbhKirN+ZiL6eylNfaCgDA8wkmoKxuWaAI= -github.com/roadrunner-server/server/v4 v4.1.10/go.mod h1:rZC3ij1BPDhQrSNIatcsw4aisRFh4hICze7us+nGAok= -github.com/roadrunner-server/service/v4 v4.2.0 h1:Y+4tI9g6i+ntInNy8lBpbUyTuGR94ff2GWNxOmjLM7k= -github.com/roadrunner-server/service/v4 v4.2.0/go.mod h1:8cO1OvceK6z4/qKaBXjXsyWhP4IIVpkVgq/zR8kSEyk= -github.com/roadrunner-server/sqs/v4 v4.3.1 h1:kaJrcgZHeLD9c6ZvAj8oESz+Kh9tF2nYtdAcl8eV6x8= -github.com/roadrunner-server/sqs/v4 v4.3.1/go.mod h1:OxvW7Er/z0gjNi4ya/FEsbtJtsEoMvQtM7ehX/k217s= -github.com/roadrunner-server/static/v4 v4.0.13 h1:PTP5kta8JLtVH8Hti2+hG/nOmD6WRvjNuecaw86LCFk= -github.com/roadrunner-server/static/v4 v4.0.13/go.mod h1:7y7Tn52kZGSNcgksSrXSww62TqzJqHCmmaDfEwCLBi8= -github.com/roadrunner-server/status/v4 v4.2.0 h1:VKfjslG/HEM9qQkSW7RETv7XyKLXrLOMVp58QmNuSgQ= -github.com/roadrunner-server/status/v4 v4.2.0/go.mod h1:T33YVQoZrM/zrELK7EaUj5Zv+5x1U0VwKp865ry0oyw= -github.com/roadrunner-server/tcp/v4 v4.0.12 h1:+6ixsJ0+2yslMOpmwxy4IXnBmeMUIEhY+/ZTVSDmpVg= -github.com/roadrunner-server/tcp/v4 v4.0.12/go.mod h1:6tEU6K+Zf/SPOYxZhT4RppI9WvZdxMEfyN0JXwBU1BA= +github.com/roadrunner-server/rpc/v4 v4.2.0 h1:Uc0bMfhQagzANySFvm8nvO8SayKZz3Ylmaneg0EEFxw= +github.com/roadrunner-server/rpc/v4 v4.2.0/go.mod h1:KG5gCDkEXzCqd8k5HfB88L7cJXJRVXNH2V2lE7mcvy0= +github.com/roadrunner-server/sdk/v4 v4.3.1 h1:DwmyzcKbprXz6JLnyR4fbOmgSC0qr528xC4uSwxRVSY= +github.com/roadrunner-server/sdk/v4 v4.3.1/go.mod h1:YiYFMLx2zVcDjy52P8i/c++VJIY/qaUSdboN0PiPGok= +github.com/roadrunner-server/send/v4 v4.2.0 h1:2i/kpFd+tOu97FmvO6OJzZvtV4BmDHg1kaCDPTwbeZk= +github.com/roadrunner-server/send/v4 v4.2.0/go.mod h1:1GxkbifRy4LqVw66McQPLGXy9klNfm4o4VMXeioQ/bk= +github.com/roadrunner-server/server/v4 v4.2.0 h1:MX8cJ317kQnmL3kInrC3ynZzZVdNgyg+8jHxZy/JKDg= +github.com/roadrunner-server/server/v4 v4.2.0/go.mod h1:jZUuZ3Pz6NCVAU3RTUnVQFhicf3bnH5Y3820jQZHzkc= +github.com/roadrunner-server/service/v4 v4.3.0 h1:giZGjyxSfk3TOLOphgswveU2Z6xQ0QtCxc4XgQpwfpA= +github.com/roadrunner-server/service/v4 v4.3.0/go.mod h1:jFYm2Yo5Wedk1qkZVqOBJlVllQVdDCTFt0/OjOzmeDc= +github.com/roadrunner-server/sqs/v4 v4.4.0 h1:GHrqHsdSLau0XGfcLgWZaJehuuS/foPq7NEaF2+kyws= +github.com/roadrunner-server/sqs/v4 v4.4.0/go.mod h1:SqxuDN1IvLi+Kj3+EFOHRR/F8tIkY8n1NxT6TyAUNMA= +github.com/roadrunner-server/static/v4 v4.1.0 h1:dVLwch0p8re3+hDjD0C9/mfpVawq1Bqy2zt1vxy5hqQ= +github.com/roadrunner-server/static/v4 v4.1.0/go.mod h1:ItaMMx84oyRba6V/zLUS6im4Ulb9oq5/Sa0Uh8r843Q= +github.com/roadrunner-server/status/v4 v4.3.0 h1:ffdR38t/agWcF2c6brMLD06eZfEKF83U6WmFhNpZswo= +github.com/roadrunner-server/status/v4 v4.3.0/go.mod h1:GE4zk+2M9x6S/1vVXXWq7/69N2i8992XrsnuUwZR2t4= +github.com/roadrunner-server/tcp/v4 v4.1.0 h1:HpWv46FK/vFLuPi0AF2gfynXrc4EUWaPzHDN2SDv2mA= +github.com/roadrunner-server/tcp/v4 v4.1.0/go.mod h1:GCjKNGC4HlDO5+OOYxNWliP2zGWUG25Z5Dl67B/h7jA= github.com/roadrunner-server/tcplisten v1.3.0 h1:VDd6IbP8oIjm5vKvMVozeZgeHgOcoP0XYLOyOqcZHCY= github.com/roadrunner-server/tcplisten v1.3.0/go.mod h1:VR6Ob5am0oEuLMOeLiVvQxG9ShykAEgrlvZddX8EfoU= github.com/robfig/cron v1.2.0 h1:ZjScXvvxeQ63Dbyxy76Fj3AT3Ut0aKsyd2/tl3DTMuQ= @@ -1179,8 +1177,6 @@ github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcU github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= github.com/subosito/gotenv v1.4.2 h1:X1TuBLAMDFbaTAChgCBLu3DU3UPyELpnF2jjJ2cz/S8= github.com/subosito/gotenv v1.4.2/go.mod h1:ayKnFf/c6rvx/2iiLrJUk1e6plDbT3edrFNGqEflhK0= -github.com/temporalio/roadrunner-temporal/v4 v4.2.7 h1:ibs5jgjtsPrXMHTqdLIvl/rJET3qxmt7s3VmclfO9ec= -github.com/temporalio/roadrunner-temporal/v4 v4.2.7/go.mod h1:wUGOOfupPiRaaqvVgQpPOp1l/ce7TAMrAJqMUf50/sE= github.com/tinylib/msgp v1.1.6/go.mod h1:75BAfg2hauQhs3qedfdDZmWAPcFMAvJE5b9rGOMufyw= github.com/tinylib/msgp v1.1.8 h1:FCXC1xanKO4I8plpHGH2P7koL/RzZs12l/+r7vakfm0= github.com/tinylib/msgp v1.1.8/go.mod h1:qkpG+2ldGg4xRFmx+jfTvZPxfGFhi64BcnL9vkCm/Tw= @@ -1313,8 +1309,8 @@ golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.10.0 h1:LKqV2xt9+kDzSTfOhx4FrkEBcMrAgHSYgzywV9zcGmM= -golang.org/x/crypto v0.10.0/go.mod h1:o4eNf7Ede1fv+hwOwZsTHl9EsPFO6q6ZvYR8vYfY45I= +golang.org/x/crypto v0.11.0 h1:6Ewdq3tDic1mg5xRO4milcWCfMVQhI4NkqWWvqejpuA= +golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20180807140117-3d87b88a115f/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -1439,8 +1435,8 @@ golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= -golang.org/x/net v0.11.0 h1:Gi2tvZIJyBtO9SDr1q9h5hEQCp/4L2RQ+ar0qjx2oNU= -golang.org/x/net v0.11.0/go.mod h1:2L/ixqYpgIVXmeoSA/4Lu7BzTG4KIyPIryS4IsOd1oQ= +golang.org/x/net v0.12.0 h1:cfawfvKITfUsFCeJIHJrbSxpeu/E81khclypR0GVT50= +golang.org/x/net v0.12.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -1684,8 +1680,8 @@ golang.org/x/tools v0.3.0/go.mod h1:/rWhSS2+zyEVwoJf8YAX6L2f0ntZ7Kn/mGgAWcipA5k= golang.org/x/tools v0.4.0/go.mod h1:UE5sM2OK9E/d67R0ANs2xJizIymRP5gJU295PvKXxjQ= golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= golang.org/x/tools v0.7.0/go.mod h1:4pg6aUX35JBAogB10C9AtvVL+qowtN4pT3CGSQex14s= -golang.org/x/tools v0.10.0 h1:tvDr/iQoUqNdohiYm0LmmKcBk+q86lb9EprIUFhHHGg= -golang.org/x/tools v0.10.0/go.mod h1:UJwyiVBsOA2uwvK/e5OY3GTpDUJriEd+/YlqAwLPmyM= +golang.org/x/tools v0.11.0 h1:EMCa6U9S2LtZXLAMoWiR/R8dAQFRqbAitmbJ2UKhoi8= +golang.org/x/tools v0.11.0/go.mod h1:anzJrxPjNtfgiYQYirP2CPGzGLxrH2u2QBhn6Bf3qY8= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -1987,7 +1983,6 @@ gopkg.in/ini.v1 v1.67.0 h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA= gopkg.in/ini.v1 v1.67.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= gopkg.in/natefinch/lumberjack.v2 v2.2.1 h1:bBRl1b0OH9s/DuPhuXpNl+VtCaJXFZ5/uEFST95x9zc= gopkg.in/natefinch/lumberjack.v2 v2.2.1/go.mod h1:YD8tP3GAjkrDg1eZH7EGmyESg/lsYskCTPBJVb9jqSc= -gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= gopkg.in/validator.v2 v2.0.0-20200605151824-2b28d334fa05/go.mod h1:o4V0GXN9/CAmCsvJ0oXYZvrZOe7syiDZSN1GWGZTGzc= gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= diff --git a/schemas/config/3.0.schema.json b/schemas/config/3.0.schema.json index 5134dba0..bba1e50a 100644 --- a/schemas/config/3.0.schema.json +++ b/schemas/config/3.0.schema.json @@ -88,6 +88,39 @@ "server": { "type": "object", "properties": { + "after_init": { + "description": "Execute command or script after RR allocated a pool of workers. Command executed on the every pool allocation. For example, if you have 2 plugins: `http` and `grpc`, the `after_init` command would be fired twice.", + "type": "object", + "properties": { + "command": { + "description": "Command to execute. It can be script or binary", + "type": "string", + "examples": [ + "php not-worker.php", + "sh script.sh", + "start script.bat" + ] + }, + "exec_timeout": { + "description": "Script execute timeout", + "$ref": "#/definitions/Duration", + "default": "60s" + }, + "env": { + "description": "Environment variables for the worker processes", + "type": "array", + "items": { + "type": "object", + "patternProperties": { + "^[a-zA-Z0-9._-]+$": { + "type": "string" + } + }, + "additionalProperties": false + } + } + } + }, "on_init": { "description": "Execute command or script before RR starts allocating workers", "type": "object", @@ -1299,6 +1332,34 @@ "description": "AMQP Uri to connect to the rabbitmq server https://www.rabbitmq.com/uri-spec.html", "type": "string", "default": "amqp://guest:[email protected]:5672" + }, + "tls": { + "description": "", + "properties": { + "key": { + "description": "Path to the key file", + "type": "string" + }, + "cert": { + "description": "Path to the cert file", + "type": "string" + }, + "root_ca": { + "description": "Path to the CA certificate, defines the set of root certificate authorities that servers use if required to verify a client certificate. Used with the `client_auth_type` option.", + "type": "string" + }, + "client_auth_type": { + "type": "string", + "default": "no_client_certs", + "enum": [ + "request_client_cert", + "require_any_client_cert", + "verify_client_cert_if_given", + "no_client_certs", + "require_and_verify_client_cert" + ] + } + } } } }, @@ -1522,79 +1583,35 @@ "type": "integer", "default": 10 }, - "topic": { - "description": "Topic name: https://kafka.apache.org/intro#intro_concepts_and_terms", - "type": "string", - "default": null - }, - "partitions_offsets": { - "description": "Offsets for the partitions", - "type": "object", - "properties": { - "itemType": { - "$ref": "#/definitions/HashMapInt" - }, - "itemCount": { - "$ref": "#/definitions/Hashmap" - } - }, - "default": null - }, - "group_id": { - "type": "string", - "description": "Kafka group id", - "default": "default" - }, - "max_open_requests": { - "description": "Max number of outstanding requests a connection is allowed to have before sending on it blocks", - "type": "integer", - "default": 5 - }, - "client_id": { - "description": "A user provided string sent with every request to the brokers for logging, debugging, and auditing purposes.", - "type": "string", - "default": "roadrunner" - }, - "kafka_version": { - "description": "Kafka version.", - "type": "string", - "default": "1.0.0.0" - }, - "create_topics": { - "description": "Create topics configuration. If topic doesn't exist, RR may create a topic with provided configuration", - "type": "object", - "properties": { - "replication_factor": { - "description": "Replication factor for the data stored across several Kafka brokers.", - "type": "integer", - "default": 1 - }, - "replica_assignment": { - "type": "object", - "description": "Partition replica assigment.", - "default": null - }, - "config_entries": { - "type": "object", - "description": "Topic creation options. Note: 'compression:type' will be replaced with 'compression.type', so ':' -> '.'. All options should use ':' as the delimiter.", - "default": null - } - } + "auto_create_topics_enable": { + "description": "Auto create topic for the consumer/producer", + "type": "boolean", + "default": false }, "producer_options": { "description": "Kafka producer options", "type": "object", "properties": { - "max_message_bytes": { - "type": "integer", - "default": 1000000 + "disable_idempotent": { + "description": "Disable_idempotent disables idempotent produce requests, opting out of Kafka server-side deduplication in the face of reissued requests due to transient network problems. Idempotent production is strictly a win, but does require the IDEMPOTENT_WRITE permission on CLUSTER (pre Kafka 3.0), and not all clients can have that permission.", + "type": "boolean", + "default": false }, "required_acks": { - "description": "The level of acknowledgement reliability needed from the broker.", + "description": "Sets the required acks for produced records", + "type": "string", + "default": "AllISRAcks", + "enum": [ + "NoAck", + "LeaderAck", + "AllISRAck" + ] + }, + "max_message_bytes": { "type": "integer", - "default": -1 + "default": 1000012 }, - "timeout": { + "request_timeout": { "description": "The maximum duration in seconds the broker will wait the receipt of the number of required_acks.", "default": 10, "type": "integer" @@ -1610,41 +1627,114 @@ "zstd" ] }, - "compression_level": { + "delivery_timeout": { "description": "The level of compression to use on messages.", "type": "integer", "default": null }, - "idempotent": { + "transaction_timeout": { "description": "If enabled, the producer will ensure that exactly one copy of each message is written.", "type": "boolean", "default": false } } }, + "group_options": { + "description": "group_options sets the consumer group for the client to join and consume in. This option is required if using any other group options.", + "properties": { + "group_id":{ + "description": "Kafka group ID", + "type": "string", + "default": null + }, + "block_rebalance_on_poll":{ + "description": "Switches the client to block rebalances whenever you poll", + "type": "boolean", + "default": false + } + } + }, "consumer_options": { "description": "Kafka consumer options", "type": "object", "properties": { - "min_fetch_message_size": { - "description": "The minimum number of message bytes to fetch in a request", - "type": "integer", - "default": 1 + "topics": { + "description": "List of the topics to consume. Regex also supported", + "type": "array", + "default": null + }, + "consume_regexp": { + "description": "consume_regexp sets the client to parse all topics passed to `topics` as regular expressions. When consuming via regex, every metadata request loads *all* topics, so that all topics can be passed to any regular expressions. Every topic is evaluated only once ever across all regular expressions; either it permanently is known to match, or is permanently known to not match.", + "type": "boolean", + "default": false }, "max_fetch_message_size": { "type": "integer", - "description": "The default number of message bytes to fetch from the broker in each request", - "default": 1000000 + "default": 50000 }, - "session_timeout": { + "min_fetch_message_size": { "type": "integer", - "description": "The timeout in seconds used to detect consumer failures when using Kafka's group management facility.", - "default": 10 + "default": 1 }, - "heartbeat_interval": { - "type": "integer", - "description": "The expected time in seconds between heartbeats to the consumer coordinator when using Kafka's group management facilities", - "default": 3 + "consume_offset": { + "description": "consumer_offset sets the offset to start consuming from, or if OffsetOutOfRange is seen while fetching, to restart consuming from.", + "type": "object", + "properties": { + "type":{ + "description": "Partition offset type", + "type": "string", + "default": null, + "enum": [ + "AtEnd", + "At", + "AfterMilli", + "AtStart", + "Relative", + "WithEpoch" + ] + }, + "value": { + "description": "Value for the: At, AfterMilli, Relative and WithEpoch offsets", + "type": "integer", + "default": 0 + } + } + }, + "consume_partitions": { + "patternProperties": { + "^[a-zA-Z0-9._-]+$": { + "description": "Topic to consume", + "type":"string", + "default": null, + "patternProperties": { + "^[0-9]+$":{ + "description": "Partition number", + "type": "integer", + "default": null, + "properties": { + "type":{ + "description": "Partition offset type", + "type": "string", + "default": null, + "enum": [ + "AtEnd", + "At", + "AfterMilli", + "AtStart", + "Relative", + "WithEpoch" + ] + }, + "value": { + "description": "Value for the: At, AfterMilli, Relative and WithEpoch offsets", + "type": "integer", + "default": 0 + } + } + } + } + } + } } } } @@ -2135,6 +2225,11 @@ "type": "object", "$ref": "#/definitions/Hashmap" }, + "timeout_stop_sec": { + "description": "Timeout for the process stop operation", + "type":"integer", + "default": 5 + }, "process_num": { "description": "Number of copies (processes) to start per command", "type": "integer", @@ -2373,9 +2468,81 @@ "description": "Kafka jobs driver", "type": "object", "properties": { - "addr": { - "description": "Kafka server addresses", - "type": "array" + "brokers": { + "description": "Kafka broker addresses", + "type": "array", + "items": { + "type": "string", + "enum": [ + "127.0.0.1:9092", + "127.0.0.1:9002" + ] + } + }, + "sasl": { + "description": "Mechanism used for the authentication", + "properties": { + "mechanism":{ + "description": "Kafka brokers", + "type": "string", + "items": { + "type": "string", + "enum": [ + "aws_msk_iam", + "plain", + "SCRAM-SHA-256", + "SCRAM-SHA-512" + ] + } + }, + "username":{ + "description": "Username for authentication", + "type": "string", + "default": null + }, + "password":{ + "description": "Password for authentication", + "type": "string", + "default": null + }, + "nonce":{ + "description": "Optional for the SHA auth types. Empty by default", + "type": "string", + "default": null + }, + "is_token":{ + "description": "If true, suffixes the tokenauth=true extra attribute to the initial authentication message. Set this to true if the user and pass are from a delegation token. Optional for the SHA auth types. Empty by default", + "type": "boolean", + "default": false + }, + "zid":{ + "description": "Zid is an optional authorization ID to use in authenticating", + "type": "string", + "default": null + }, + + + "access_key":{ + "description": "AWS Access key ID", + "type": "string", + "default": null + }, + "secret_key":{ + "description": "AWS Secret Access key ID", + "type": "string", + "default": null + }, + "session_token":{ + "description": "SessionToken, if non-empty, is a session / security token to use for authentication. See the following link for more details: https://docs.aws.amazon.com/STS/latest/APIReference/welcome.html", + "type": "string", + "default": null + }, + "user_agent":{ + "description": "UserAgent is the user agent to for the client to use when connecting to Kafka, overriding the default franz-go/<runtime.Version()>/<hostname>. Setting a UserAgent allows authorizing based on the aws:UserAgent condition key; see the following link for more details: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-useragent", + "type": "string", + "default": null + } + } } } }, |