apiVersion: broker.amq.io/v2alpha3
kind: ActiveMQArtemis
metadata:
  name: ex-aao
  application: ex-aao-app
spec:
  version: 7.7.0
  deploymentPlan:
    size: 1
    image: registry-proxy.engineering.redhat.com/rh-osbs/amq-broker-7-amq-broker-77-openshift:7.7-14
    requireLogin: false
    persistenceEnabled: true
    journalType: nio
    messageMigration: false
    #resources:
    #  limits:
    #    cpu: "500m"
    #    memory: "1024m"
    #  requests:
    #    cpu: "250m"
    #    memory: "512m"
    storage:
      size: "4Gi"
  console:
    expose: true
  acceptors:
    - name: amqp
      protocols: amqp
      port: 5672
      sslEnabled: false
      enabledProtocols: TLSv1,TLSv1.1,TLSv1.2
      needClientAuth: true
      wantClientAuth: true
      verifyHost: true
      sslProvider: JDK
      sniHost: localhost
      expose: true
      anycastPrefix: jms.queue.
      multicastPrefix: /topic/
  connectors:
    - name: connector0
      host: localhost
      port: 22222
      sslEnabled: false
      enabledProtocols: TLSv1,TLSv1.1,TLSv1.2
      needClientAuth: true
      wantClientAuth: true
      verifyHost: true
      sslProvider: JDK
      sniHost: localhost
      expose: true
  upgrades:
      enabled: false
      minor: false
  addressSettings:
    #applyRule: merge_all
    #applyRule: replace_all
    #applyRule: merge_replace
    addressSetting:
    - match: testAllPossibleSettings
      deadLetterAddress: PREFIX.DLQ.SULFIX
      autoCreateDeadLetterResources: true
      deadLetterQueuePrefix: PREFIX
      deadLetterQueueSuffix: .SULFIX
      expiryAddress: PREFIX.EXPIRY.Q.SULFIX
      autoCreateExpiryResources: true
      expiryQueuePrefix: PREFIX.
      expiryQueueSuffix: .SULFIX
      expiryDelay: 500
      minExpiryDelay: 100
      maxExpiryDelay: 1000
      redeliveryDelay: 200
      redeliveryDelayMultiplier: 2
      #redeliveryCollisionAvoidanceFactor: 0.3 - operator fails to work with floating number
      maxRedeliveryDelay: 600
      maxDeliveryAttempts: 2
      maxSizeBytes: "104857600"
      maxSizeBytesRejectThreshold: 512000
      #pageSizeBytes: 500k -- broken. It is tracked in https://issues.redhat.com/browse/ENTMQBR-4143
      pageMaxCacheSize: 10
      addressFullPolicy: PAGE
      messageCounterHistoryDayLimit: 1
      lastValueQueue: true
      defaultLastValueQueue: true
      defaultLastValueKey: LVK
      defaultNonDestructive: true
      defaultExclusiveQueue: true
      defaultGroupRebalance: true
      #defaultGroupRebalancePauseDispatch: true - failed on broker start. need investigation
      defaultGroupBuckets: 5
      defaultGroupFirstKey: GFK
      defaultConsumersBeforeDispatch: 5
      defaultDelayBeforeDispatch: 10
      redistributionDelay: 50
      sendToDlaOnNoRoute: true
      slowConsumerThreshold: 10
      slowConsumerPolicy: NOTIFY
      slowConsumerCheckPeriod: 5
      autoCreateJmsQueues: true
      autoDeleteJmsQueues: true
      autoCreateJmsTopics: true
      autoDeleteJmsTopics: true
      autoCreateQueues: true
      autoDeleteQueues: true
      autoDeleteCreatedQueues: true
      autoDeleteQueuesDelay: 50
      autoDeleteQueuesMessageCount: -1
      configDeleteQueues: FORCE
      autoCreateAddresses: true
      autoDeleteAddresses: true
      configDeleteAddresses: FORCE
      managementBrowsePageSize: 100
      defaultPurgeOnNoConsumers: true
      defaultMaxConsumers: 10
      defaultQueueRoutingType: ANYCAST
      defaultAddressRoutingType: ANYCAST
      defaultConsumerWindowSize: 100
      defaultRingSize: 10
      retroactiveMessageCount: 10
      enableMetrics: true
      