Croway commented on PR #16773:
URL: https://github.com/apache/camel/pull/16773#issuecomment-2582908013

   Thanks for your inputs @davsclaus @orpiske @oscerd , in the latest commit I 
removed the jackson-yaml dependency in favour of asciitable for the list and 
json serialization for the Service properties, we do not know a priori what's 
inside a Service object (in some case can be a complex object), this is why a 
table cannot be used and I am still using json.
   
   But I added a flag `--json` for the tooling
   list output (I'll review some annotations to avoid cases like 
`azure-storage-queue  storage-queue`)
   ```
    ALIAS                   IMPLEMENTATION              
    ignite                                              
    azure-storage-queue     storage-queue               
    openldap                                            
    event-bridge                                        
    kinesis                                             
    xmpp                                                
    redis                                               
    aws-lambda                                          
    aws-config                                          
    lambda                                              
    elastic-search                                      
    aws-secrets-manager                                 
    elasticsearch                                       
    hazelcast                                           
    arangodb                                            
    aws-kinesis                                         
    chatscript                                          
    aws-dynamo-db                                       
    aws-sns                                             
    azure                   storage-queue, storage-blob 
    hashicorp-vault         vault                       
    s3                                                  
    torch-serve                                         
    zookeeper                                           
    etcd3                                               
    ollama                                              
    google                  pub-sub                     
    dynamodb                                            
    aws-cloud-watch                                     
    aws-sqs                                             
    aws-iam                                             
    aws-ec2                                             
    cassandra                                           
    aws-kms                                             
    kafka                   redpanda, strimzi           
    aws-s3                                              
    sftp                                                
    couchdb                                             
    milvus                                              
    pulsar                                              
    hashicorp               vault                       
    cloud-watch                                         
    nats                                                
    qdrant                                              
    hive-mq                 sparkplug                   
    fhir                                                
    smb                                                 
    minio                                               
    dynamo-db                                           
    ec2                                                 
    aws-sts                                             
    couchbase                                           
    solr                                                
    mongodb                                             
    postgres                                            
    google-pub-sub          pub-sub                     
    ftps                                                
    artemis                 amqp, mqtt, persistent      
    hivemq                  sparkplug                   
    ftp                                                 
    microprofile            lra                         
    rocketmq                                            
    rabbitmq                                            
    aws-event-bridge                                    
    infinispan                                          
    mosquitto                                           
    azure-storage-blob      storage-blob                
    microprofile-lra        lra                         
    chat-script                          
    ```
    list output json 
`[{"aliasImplementation":"","alias":"ignite"},{"aliasImplementation":"storage-queue","alias":"azure-storage-queue"},{"aliasImplementation":"","alias":"openldap"},{"aliasImplementation":"","alias":"event-bridge"},{"aliasImplementation":"","alias":"kinesis"},{"aliasImplementation":"","alias":"xmpp"},{"aliasImplementation":"","alias":"redis"},{"aliasImplementation":"","alias":"aws-lambda"},{"aliasImplementation":"","alias":"aws-config"},{"aliasImplementation":"","alias":"lambda"},{"aliasImplementation":"","alias":"elastic-search"},{"aliasImplementation":"","alias":"aws-secrets-manager"},{"aliasImplementation":"","alias":"elasticsearch"},{"aliasImplementation":"","alias":"hazelcast"},{"aliasImplementation":"","alias":"arangodb"},{"aliasImplementation":"","alias":"aws-kinesis"},{"aliasImplementation":"","alias":"chatscript"},{"aliasImplementation":"","alias":"aws-dynamo-db"},{"aliasImplementation":"","alias":"aws-sns"},{"aliasImplementation":"storage-queue,
 storage-bl
 
ob","alias":"azure"},{"aliasImplementation":"vault","alias":"hashicorp-vault"},{"aliasImplementation":"","alias":"s3"},{"aliasImplementation":"","alias":"torch-serve"},{"aliasImplementation":"","alias":"zookeeper"},{"aliasImplementation":"","alias":"etcd3"},{"aliasImplementation":"","alias":"ollama"},{"aliasImplementation":"pub-sub","alias":"google"},{"aliasImplementation":"","alias":"dynamodb"},{"aliasImplementation":"","alias":"aws-cloud-watch"},{"aliasImplementation":"","alias":"aws-sqs"},{"aliasImplementation":"","alias":"aws-iam"},{"aliasImplementation":"","alias":"aws-ec2"},{"aliasImplementation":"","alias":"cassandra"},{"aliasImplementation":"","alias":"aws-kms"},{"aliasImplementation":"redpanda,
 
strimzi","alias":"kafka"},{"aliasImplementation":"","alias":"aws-s3"},{"aliasImplementation":"","alias":"sftp"},{"aliasImplementation":"","alias":"couchdb"},{"aliasImplementation":"","alias":"milvus"},{"aliasImplementation":"","alias":"pulsar"},{"aliasImplementation":"vault","alias":
 
"hashicorp"},{"aliasImplementation":"","alias":"cloud-watch"},{"aliasImplementation":"","alias":"nats"},{"aliasImplementation":"","alias":"qdrant"},{"aliasImplementation":"sparkplug","alias":"hive-mq"},{"aliasImplementation":"","alias":"fhir"},{"aliasImplementation":"","alias":"smb"},{"aliasImplementation":"","alias":"minio"},{"aliasImplementation":"","alias":"dynamo-db"},{"aliasImplementation":"","alias":"ec2"},{"aliasImplementation":"","alias":"aws-sts"},{"aliasImplementation":"","alias":"couchbase"},{"aliasImplementation":"","alias":"solr"},{"aliasImplementation":"","alias":"mongodb"},{"aliasImplementation":"","alias":"postgres"},{"aliasImplementation":"pub-sub","alias":"google-pub-sub"},{"aliasImplementation":"","alias":"ftps"},{"aliasImplementation":"amqp,
 mqtt, 
persistent","alias":"artemis"},{"aliasImplementation":"sparkplug","alias":"hivemq"},{"aliasImplementation":"","alias":"ftp"},{"aliasImplementation":"lra","alias":"microprofile"},{"aliasImplementation":"","alias":"rocket
 
mq"},{"aliasImplementation":"","alias":"rabbitmq"},{"aliasImplementation":"","alias":"aws-event-bridge"},{"aliasImplementation":"","alias":"infinispan"},{"aliasImplementation":"","alias":"mosquitto"},{"aliasImplementation":"storage-blob","alias":"azure-storage-blob"},{"aliasImplementation":"lra","alias":"microprofile-lra"},{"aliasImplementation":"","alias":"chat-script"}]`
    
    run command output `camel infra run kafka redpanda`
    ```
    Starting service kafka with implementation redpanda
   {
     "getBootstrapServers" : "localhost:32783"
   }
   To stop the execution press q
   ```
   
   @davsclaus regarding the camel-catalog, I do not know how easy it is, right 
now I am using camel-test-infra-all module that contain all the test-infra 
dependencies, the jandex index and executes the Mojo to generate the json file, 
probably the json file can be simply copied under  
`/camel/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/test-infra/metadata.json`
 but I do not know if this is a good approach, given that the other generated 
files are generated by the camel-package-maven-plugin during runtime.


-- 
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