Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Accept Quarkus and SpringBoot versions as system properties #16907

Closed
wants to merge 1 commit into from

Conversation

bartoszpop
Copy link
Contributor

Quarkus and SpringBoot versions can't be defined in jbang-catalog.json because of jbangdev#1910. As a fix Camel JBang should accept the version defined as a system property

@davsclaus
Copy link
Contributor

what are you trying to do. The option can be defined as CLI argument for a CLI tool - its not intended as a JVM system property

@bartoszpop
Copy link
Contributor Author

bartoszpop commented Jan 24, 2025

@davsclaus we need to have control over Quarkus/SpringBoot version via the jbang-catalog.json file. Currently, the only option to set the version is to use "--quarkusVersion" but it won't work with jbang-catalog.json because of jbangdev#1910. JBang team advised using system property, similar to what Camel JBang does for Camel and Kamelets Catalog versions.

@davsclaus
Copy link
Contributor

Who are we - the came-catalog file is for ASF Camel only. You can make your own catalog file

@bartoszpop
Copy link
Contributor Author

bartoszpop commented Jan 24, 2025

@davsclaus by "we" I mean the company I'm working for. Basically, we have a custom catalog file which delegates to Camel with some opinionated options:

{
	"aliases": {
		"customCamel": {
		        "script-ref": "org.apache.camel:camel-jbang-main:4.8.3", <-- this works
			"main": "main.CamelJBang",
  		        "dependencies": ["..."],
			"java-options": ["-Dcamel-kamelets.version=4.8.3"], <-- this also works
			"arguments": ["--quarkusVersion=3.17.0"] <-- this doesn't work because of https://github.com/jbangdev/jbang/issues/1910
		}
	}
}

and although we can control the Camel version, Quarkus and SpringBoot versions are not configurable.

@davsclaus
Copy link
Contributor

We are not changing existing versions.

@davsclaus
Copy link
Contributor

You should use camel config set where you can configure any options you want to have special

@bartoszpop
Copy link
Contributor Author

bartoszpop commented Jan 26, 2025

@davsclaus camel config set is not sufficient as the user needs to invoke this command explicitly. The requirement we have is to deliver a ready to use jbang-catalog.json. It would be consistent with how the camel and kamelet versions are configurable now (see CamelJBang.java). Because Quarkus and SpringBoot versions are hardcoded in RuntimeType.java, hence we can't get a new Camel Quarkus version until a new Camel version is released.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants