Chapter 6. Generating a catalog
6.1. Overview Copy linkLink copied to clipboard!
By default, every Kaoto release includes the latest Camel version available at the moment of the build, nevertheless, generating a different set of catalogs is possible.
6.2. Catalog generator CLI Copy linkLink copied to clipboard!
Kaoto provides a Camel catalog generator CLI to ease this process, it supports the following runtimes:
- Main
- Quarkus
- Springboot
6.2.1. Using Camel catalog Copy linkLink copied to clipboard!
- Clone the Kaoto project
- Navigate to the packages/catalog-generator directory
Install the project dependencies:
./mvnw installRun the project with the following command:
./mvnw package; java -jar ./target/catalog-generator-0.0.1-SNAPSHOT.jar -o ./dist/camel-catalog -k 4.6.0 -m 4.6.0 -n "My Catalog"This will generate a Catalog library containing:
- Camel Main 4.6.0
- Camel Kamelets 4.6.0
-
The resulting files will be in the
packages/catalog-generator/dist/camel-catalogfolder - Providing that folder through a http server will make it available for using it in Kaoto
6.2.2. Creating a Catalog library with different runtimes Copy linkLink copied to clipboard!
In order to add multiple runtimes to the Catalog library, we can provide each runtime with its version using the following flags:
-m,--main <version> Camel Main version. If not specified, it will use the generator installed version -q,--quarkus <version> Camel Extensions for Quarkus version -s,--springboot <version> Camel SpringBoot versionFor instance, running the following command will create a Catalog library with Camel Main 4.6.0 and Camel extensions for Quarkus 3.8.0:
./mvnw package; java -jar ./target/catalog-generator-0.0.1-SNAPSHOT.jar -o ./dist/camel-catalog -k 4.6.0 -m 4.6.0 -q 3.8.0 -n "My Catalog"For a different Kamelets catalog version, the
--kamelets or -kflag can be specified../mvnw package; java -jar ./target/catalog-generator-0.0.1-SNAPSHOT.jar -o ./dist/camel-catalog -k 4.5.0 -m 4.6.0 -n "My Catalog"
6.2.3. Instructing Kaoto to use a specific Catalog library Copy linkLink copied to clipboard!
In VSCode, go to the settings page and look for “Kaoto”
In the
TextField, provide the URL of theindex.jsonfile that specifies the location of the subsequent catalogs, for instance, the public Kaoto catalog can be used:
Restart Kaoto for the changes to have effect