Sha256: 5fc4de4262ec263386e4945626708410ef148d82d4fb5bf4399230f4a320ab36

Contents?: true

Size: 669 Bytes

Versions: 5

Compression:

Stored size: 669 Bytes

Contents

# frozen_string_literal: true

module Karafka
  module Schemas
    # Consumer group topic validation rules
    ConsumerGroupTopic = Dry::Validation.Schema do
      required(:id).filled(:str?, format?: Karafka::Schemas::TOPIC_REGEXP)
      required(:name).filled(:str?, format?: Karafka::Schemas::TOPIC_REGEXP)
      required(:backend).filled(included_in?: %i[inline sidekiq])
      required(:controller).filled
      required(:parser).filled
      required(:max_bytes_per_partition).filled(:int?, gteq?: 0)
      required(:start_from_beginning).filled(:bool?)
      required(:batch_consuming).filled(:bool?)
      required(:persistent).filled(:bool?)
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
karafka-1.1.2 lib/karafka/schemas/consumer_group_topic.rb
karafka-1.1.1 lib/karafka/schemas/consumer_group_topic.rb
karafka-1.1.0 lib/karafka/schemas/consumer_group_topic.rb
karafka-1.1.0.alpha2 lib/karafka/schemas/consumer_group_topic.rb
karafka-1.1.0.alpha1 lib/karafka/schemas/consumer_group_topic.rb