0
votes

I'am using spring-cloud-data-flow-server-yarn and successfully deployed my spring-cloud-stream apps in my yarn-cluster.

Now I'm facing a problem:

When I deploy my scs apps, the property value of spring.cloud.stream.bindings.output.destination will be override to streamName.groupName, which I think is the default value for the channel name.

How can I let the properties of the channel name inside the scs-app take effective? I mean not using the deploy properties, but just let the properties inside the scs-app take effective.

1

1 Answers

0
votes

Spring Cloud Data Flow assumes the inbound/outbound target (ex: message channel) names to be input/output based on the OOTB apps. If you have a custom application with the target channel names different than input/output then, you would need to set the destination names explicitly via stream definition/deployment properties.

There is a Github issue on this and you can track it from there.

EDIT:

Some more general points to be noted:

SCDF needs to know the group name (here the Stream name) in the context of a stream being deployed. Whereas, as a standalone Spring Cloud Stream application it has its own way of setting consumer group name etc., in the context of an application level.

SCDF is built as an orchestration model to run Streams/Tasks using Spring Cloud Stream/Task applications. The binding destination properties are one of those that are required to be overridden by SCDF to adhere to this Stream model. But, you can still override this setting of destination via deployment properties