Skip to content
This repository was archived by the owner on May 14, 2025. It is now read-only.
This repository was archived by the owner on May 14, 2025. It is now read-only.

spring-cloud-dataflow-shell fails to parse kebab-case arguments #5172

@michael-wirth

Description

@michael-wirth

Description:

kebab-case arguments are not parsed correctly by the shell.

e.g the argument --metadata-uri does not resolve to it's value, but it works with camelCase syntax --metadataUri

Negative case with --metadata-uri (kebab-case)

Command..

app register --name paymentorderloader --type task 
--uri docker:code-registry.xxx.com/jobs/payment-order-loader:40.0.0-SNAPSHOT
--metadata-uri maven://ch.xxx.job:payment-order-loader:jar:metadata:40.0.0-SNAPSHOT
--force true`

.. resolves to
Arguments: [paymentorderloader, task, docker:code-registry.xxx.com/jobs/payment-order-loader:40.0.0-SNAPSHOT, --metadata-uri, true]

Log file:

org.springframework.shell.Shell          : Evaluate input with line=[app register --name paymentorderloader --type task --uri docker:code-registry.xxx.com/jobs/payment-order-loader:40.0.0-SNAPSHOT --metadata-uri maven://ch.xxx.eb.job:payment-order-loader:jar:metadata:40.0.0-SNAPSHOT --force true], command=[app register]
o.s.s.c.invocation.InvocableShellMethod  : Arguments: [paymentorderloader, task, docker:code-registry.xxx.com/jobs/payment-order-loader:40.0.0-SNAPSHOT, --metadata-uri, true]

Positive case with --metadataUri (camelCase)

Command..

app register --name paymentorderloader --type task 
--uri docker:code-registry.xxx.com/jobs/payment-order-loader:40.0.0-SNAPSHOT
--metadataUri maven://ch.xxx.job:payment-order-loader:jar:metadata:40.0.0-SNAPSHOT
--force true`

.. resolves to
Arguments: [paymentorderloader, task, docker:code-registry.xxx.com/jobs/payment-order-loader:40.0.0-SNAPSHOT, maven://ch.xxx.job:payment-order-loader:jar:metadata:40.0.0-SNAPSHOT, true]

Log file:

org.springframework.shell.Shell          : Evaluate input with line=[app register --name paymentorderloader --type task --uri docker:code-registry.xxx.com/jobs/payment-order-loader:40.0.0-SNAPSHOT --metadataUri maven://ch.xxx.job:payment-order-loader:jar:metadata:40.0.0-SNAPSHOT --force true], command=[app register]
o.s.s.c.invocation.InvocableShellMethod  : Arguments: [paymentorderloader, task, docker:code-registry.xxx.com/jobs/payment-order-loader:40.0.0-SNAPSHOT, maven://ch.xxx.job:payment-order-loader:jar:metadata:40.0.0-SNAPSHOT, true]

Release versions:
spring-cloud-dataflow-shell:2.10.0
tested with docker: bitnami/spring-cloud-dataflow-shell:2.10.0

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions