knockknock10 opened a new pull request, #6922:
URL: https://github.com/apache/camel-k/pull/6922

   ## What does this PR do?
   
   Fixes #6911.
   
   Adds opt-in automatic KEDA IBM MQ trigger discovery for Camel's generic JMS 
component.
   
   IBM MQ commonly uses Camel's generic `jms` component, which is also used by 
other JMS providers. Therefore, the provider cannot safely be inferred from the 
endpoint URI alone.
   
   This implementation requires an explicit provider discriminator:
   
   ```yaml
   traits:
     keda:
       enabled: true
       autoMetadata:
         ibmmq:
           queueType: ibm
           host: https://mq.example.com/ibmmq/rest/v2/admin/action/qmgr/QM1/mqsc
           queueDepth: "25"
   ```
   
   ### Implementation details
   
   - Registers an IBM MQ mapper for Camel's `jms` component.
   - Requires `keda.autoMetadata.ibmmq.queueType=ibm` before mapping a JMS 
endpoint.
   - Requires the IBM MQ Queue Manager Admin REST endpoint through 
`keda.autoMetadata.ibmmq.host`.
   - Derives `queueName` from JMS queue destinations, supporting both 
`jms:queue:ORDERS` and the default queue form `jms:ORDERS`.
   - Ignores topics, temporary destinations, non-IBM JMS providers, and 
configurations without the required discriminator or Admin REST host.
   - Removes the internal `queueType` discovery hint before generating KEDA 
trigger metadata.
   - Preserves the remaining IBM MQ auto-metadata values.
   - Adds an optional metadata-aware mapper interface while keeping the 
existing `ScaleMapper` contract and `MapToKedaTrigger` entry point compatible.
   
   ### Tests
   
   Adds mapper-level and trait-level tests covering:
   
   - Mapper registration.
   - Queue destination mapping.
   - Default queue destination handling.
   - Topic and temporary destination rejection.
   - Explicit IBM MQ provider selection.
   - Missing or invalid provider discriminator.
   - Missing required Admin REST host.
   - Additional metadata propagation.
   - Ensuring `queueType` is not emitted as KEDA scaler metadata.
   
   ### Documentation
   
   Updates the KEDA trait documentation and the KEDA scaler contributor guide 
with IBM MQ configuration, discovery requirements, and authentication guidance.
   
   ### Validation status
   
   Tests have been added but have **not yet been executed locally**. CI results 
are needed to verify the implementation.
   
   An IBM MQ service-backed end-to-end test is not included in this PR. The 
shared KEDA workflow in #6920 is still under review, and this can be extended 
once that workflow is available.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to