[jira] [Commented] (FLINK-10294) Split MiniClusterResource to be usable in runtime/streaming-java/clients

2021-04-27 Thread Flink Jira Bot (Jira)


[ 
https://issues.apache.org/jira/browse/FLINK-10294?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17334091#comment-17334091
 ] 

Flink Jira Bot commented on FLINK-10294:


This issue was marked "stale-assigned" and has not received an update in 7 
days. It is now automatically unassigned. If you are still working on it, you 
can assign it to yourself again. Please also give an update about the status of 
the work.

> Split MiniClusterResource to be usable in runtime/streaming-java/clients
> 
>
> Key: FLINK-10294
> URL: https://issues.apache.org/jira/browse/FLINK-10294
> Project: Flink
>  Issue Type: Improvement
>  Components: API / DataStream, Tests
>Affects Versions: 1.7.0
>Reporter: Chesnay Schepler
>Assignee: Chesnay Schepler
>Priority: Major
>  Labels: stale-assigned
>
> h5. Problem
> The {{MiniClusterResource}} is a utility class to create and manage flink 
> clusters for testing purposes. It is incredibly convenient, but unfortunately 
> resides in {{flink-test-utils}} which depends on flink-runtime, 
> flink-streaming-java and flink-clients, making the class not usable in these 
> modules.
> The current version does require these dependencies, but only for specific, 
> *optional*, parts. {{streaming-java}} is only required for accessing 
> {{TestStreamEnvironment}} and {{flink-clients}} only for tests that want to 
> work against a {{ClusterClient}}.
> h5. Proposal
> Split the {{MiniClusterResource}} as follows:
> h5. 1)
> Remove client/streaming-java dependent parts and move the class to 
> flink-runtime.
> h5. 2)
> Add a new class {{StreamingMiniClusterResourceExtension}} that accepts a  
> {{MiniClusterResource}} as an argument and contains the streaming parts.
> Usage would look like this:
> {code}
> private final MiniClusterResource cluster = ...
> private final StreamingMiniClusterResourceExtension ext = new 
> StreamingMiniClusterResourceExtension(cluster);
> @Rule
> public RuleChain chain= RuleChain
>   .outerRule(cluster) 
>   .around(ext),
> {code}
> h5. 3)
> Add a new class {{ClientMiniClusterResourceExtension}} that accepts a  
> {{MiniClusterResource}} as an argument and contains the client parts.
> Usage would look like this:
> {code}
> private final MiniClusterResource cluster = ...
> private final ClientMiniClusterResourceExtensionext = new 
> ClientMiniClusterResourceExtension(cluster);
> @Rule
> public RuleChain chain= RuleChain
>   .outerRule(cluster) 
>   .around(ext),
> {code}
> [~till.rohrmann] WDYT?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (FLINK-10294) Split MiniClusterResource to be usable in runtime/streaming-java/clients

2021-04-16 Thread Flink Jira Bot (Jira)


[ 
https://issues.apache.org/jira/browse/FLINK-10294?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17323465#comment-17323465
 ] 

Flink Jira Bot commented on FLINK-10294:


This issue is assigned but has not received an update in 7 days so it has been 
labeled "stale-assigned". If you are still working on the issue, please give an 
update and remove the label. If you are no longer working on the issue, please 
unassign so someone else may work on it. In 7 days the issue will be 
automatically unassigned.

> Split MiniClusterResource to be usable in runtime/streaming-java/clients
> 
>
> Key: FLINK-10294
> URL: https://issues.apache.org/jira/browse/FLINK-10294
> Project: Flink
>  Issue Type: Improvement
>  Components: API / DataStream, Tests
>Affects Versions: 1.7.0
>Reporter: Chesnay Schepler
>Assignee: Chesnay Schepler
>Priority: Major
>  Labels: stale-assigned
>
> h5. Problem
> The {{MiniClusterResource}} is a utility class to create and manage flink 
> clusters for testing purposes. It is incredibly convenient, but unfortunately 
> resides in {{flink-test-utils}} which depends on flink-runtime, 
> flink-streaming-java and flink-clients, making the class not usable in these 
> modules.
> The current version does require these dependencies, but only for specific, 
> *optional*, parts. {{streaming-java}} is only required for accessing 
> {{TestStreamEnvironment}} and {{flink-clients}} only for tests that want to 
> work against a {{ClusterClient}}.
> h5. Proposal
> Split the {{MiniClusterResource}} as follows:
> h5. 1)
> Remove client/streaming-java dependent parts and move the class to 
> flink-runtime.
> h5. 2)
> Add a new class {{StreamingMiniClusterResourceExtension}} that accepts a  
> {{MiniClusterResource}} as an argument and contains the streaming parts.
> Usage would look like this:
> {code}
> private final MiniClusterResource cluster = ...
> private final StreamingMiniClusterResourceExtension ext = new 
> StreamingMiniClusterResourceExtension(cluster);
> @Rule
> public RuleChain chain= RuleChain
>   .outerRule(cluster) 
>   .around(ext),
> {code}
> h5. 3)
> Add a new class {{ClientMiniClusterResourceExtension}} that accepts a  
> {{MiniClusterResource}} as an argument and contains the client parts.
> Usage would look like this:
> {code}
> private final MiniClusterResource cluster = ...
> private final ClientMiniClusterResourceExtensionext = new 
> ClientMiniClusterResourceExtension(cluster);
> @Rule
> public RuleChain chain= RuleChain
>   .outerRule(cluster) 
>   .around(ext),
> {code}
> [~till.rohrmann] WDYT?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (FLINK-10294) Split MiniClusterResource to be usable in runtime/streaming-java/clients

2018-10-01 Thread Till Rohrmann (JIRA)


[ 
https://issues.apache.org/jira/browse/FLINK-10294?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16633949#comment-16633949
 ] 

Till Rohrmann commented on FLINK-10294:
---

Alright, this makes sense. Maybe we could offer for the most common use case 
convenience classes or alternatively document how to use them with the 
{{RuleChain}}.

> Split MiniClusterResource to be usable in runtime/streaming-java/clients
> 
>
> Key: FLINK-10294
> URL: https://issues.apache.org/jira/browse/FLINK-10294
> Project: Flink
>  Issue Type: Improvement
>  Components: Tests
>Affects Versions: 1.7.0
>Reporter: Chesnay Schepler
>Assignee: Chesnay Schepler
>Priority: Major
> Fix For: 1.7.0
>
>
> h5. Problem
> The {{MiniClusterResource}} is a utility class to create and manage flink 
> clusters for testing purposes. It is incredibly convenient, but unfortunately 
> resides in {{flink-test-utils}} which depends on flink-runtime, 
> flink-streaming-java and flink-clients, making the class not usable in these 
> modules.
> The current version does require these dependencies, but only for specific, 
> *optional*, parts. {{streaming-java}} is only required for accessing 
> {{TestStreamEnvironment}} and {{flink-clients}} only for tests that want to 
> work against a {{ClusterClient}}.
> h5. Proposal
> Split the {{MiniClusterResource}} as follows:
> h5. 1)
> Remove client/streaming-java dependent parts and move the class to 
> flink-runtime.
> h5. 2)
> Add a new class {{StreamingMiniClusterResourceExtension}} that accepts a  
> {{MiniClusterResource}} as an argument and contains the streaming parts.
> Usage would look like this:
> {code}
> private final MiniClusterResource cluster = ...
> private final StreamingMiniClusterResourceExtension ext = new 
> StreamingMiniClusterResourceExtension(cluster);
> @Rule
> public RuleChain chain= RuleChain
>   .outerRule(cluster) 
>   .around(ext),
> {code}
> h5. 3)
> Add a new class {{ClientMiniClusterResourceExtension}} that accepts a  
> {{MiniClusterResource}} as an argument and contains the client parts.
> Usage would look like this:
> {code}
> private final MiniClusterResource cluster = ...
> private final ClientMiniClusterResourceExtensionext = new 
> ClientMiniClusterResourceExtension(cluster);
> @Rule
> public RuleChain chain= RuleChain
>   .outerRule(cluster) 
>   .around(ext),
> {code}
> [~till.rohrmann] WDYT?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (FLINK-10294) Split MiniClusterResource to be usable in runtime/streaming-java/clients

2018-09-24 Thread Chesnay Schepler (JIRA)


[ 
https://issues.apache.org/jira/browse/FLINK-10294?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16625802#comment-16625802
 ] 

Chesnay Schepler commented on FLINK-10294:
--

Alright I remembered why i initially went with the RuleChain approach: It 
easily allows composition of different extensions. In your approach it would 
not be possible to create a MiniClusterResource that has both the streaming and 
client parts (without creating a separate class obviously).

> Split MiniClusterResource to be usable in runtime/streaming-java/clients
> 
>
> Key: FLINK-10294
> URL: https://issues.apache.org/jira/browse/FLINK-10294
> Project: Flink
>  Issue Type: Improvement
>  Components: Tests
>Affects Versions: 1.7.0
>Reporter: Chesnay Schepler
>Assignee: Chesnay Schepler
>Priority: Major
> Fix For: 1.7.0
>
>
> h5. Problem
> The {{MiniClusterResource}} is a utility class to create and manage flink 
> clusters for testing purposes. It is incredibly convenient, but unfortunately 
> resides in {{flink-test-utils}} which depends on flink-runtime, 
> flink-streaming-java and flink-clients, making the class not usable in these 
> modules.
> The current version does require these dependencies, but only for specific, 
> *optional*, parts. {{streaming-java}} is only required for accessing 
> {{TestStreamEnvironment}} and {{flink-clients}} only for tests that want to 
> work against a {{ClusterClient}}.
> h5. Proposal
> Split the {{MiniClusterResource}} as follows:
> h5. 1)
> Remove client/streaming-java dependent parts and move the class to 
> flink-runtime.
> h5. 2)
> Add a new class {{StreamingMiniClusterResourceExtension}} that accepts a  
> {{MiniClusterResource}} as an argument and contains the streaming parts.
> Usage would look like this:
> {code}
> private final MiniClusterResource cluster = ...
> private final StreamingMiniClusterResourceExtension ext = new 
> StreamingMiniClusterResourceExtension(cluster);
> @Rule
> public RuleChain chain= RuleChain
>   .outerRule(cluster) 
>   .around(ext),
> {code}
> h5. 3)
> Add a new class {{ClientMiniClusterResourceExtension}} that accepts a  
> {{MiniClusterResource}} as an argument and contains the client parts.
> Usage would look like this:
> {code}
> private final MiniClusterResource cluster = ...
> private final ClientMiniClusterResourceExtensionext = new 
> ClientMiniClusterResourceExtension(cluster);
> @Rule
> public RuleChain chain= RuleChain
>   .outerRule(cluster) 
>   .around(ext),
> {code}
> [~till.rohrmann] WDYT?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (FLINK-10294) Split MiniClusterResource to be usable in runtime/streaming-java/clients

2018-09-24 Thread Chesnay Schepler (JIRA)


[ 
https://issues.apache.org/jira/browse/FLINK-10294?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16625587#comment-16625587
 ] 

Chesnay Schepler commented on FLINK-10294:
--

Note that with the RuleChain we wouldn't have to deal with the Rule life-cycle 
internally.

> Split MiniClusterResource to be usable in runtime/streaming-java/clients
> 
>
> Key: FLINK-10294
> URL: https://issues.apache.org/jira/browse/FLINK-10294
> Project: Flink
>  Issue Type: Improvement
>  Components: Tests
>Affects Versions: 1.7.0
>Reporter: Chesnay Schepler
>Assignee: Chesnay Schepler
>Priority: Major
> Fix For: 1.7.0
>
>
> h5. Problem
> The {{MiniClusterResource}} is a utility class to create and manage flink 
> clusters for testing purposes. It is incredibly convenient, but unfortunately 
> resides in {{flink-test-utils}} which depends on flink-runtime, 
> flink-streaming-java and flink-clients, making the class not usable in these 
> modules.
> The current version does require these dependencies, but only for specific, 
> *optional*, parts. {{streaming-java}} is only required for accessing 
> {{TestStreamEnvironment}} and {{flink-clients}} only for tests that want to 
> work against a {{ClusterClient}}.
> h5. Proposal
> Split the {{MiniClusterResource}} as follows:
> h5. 1)
> Remove client/streaming-java dependent parts and move the class to 
> flink-runtime.
> h5. 2)
> Add a new class {{StreamingMiniClusterResourceExtension}} that accepts a  
> {{MiniClusterResource}} as an argument and contains the streaming parts.
> Usage would look like this:
> {code}
> private final MiniClusterResource cluster = ...
> private final StreamingMiniClusterResourceExtension ext = new 
> StreamingMiniClusterResourceExtension(cluster);
> @Rule
> public RuleChain chain= RuleChain
>   .outerRule(cluster) 
>   .around(ext),
> {code}
> h5. 3)
> Add a new class {{ClientMiniClusterResourceExtension}} that accepts a  
> {{MiniClusterResource}} as an argument and contains the client parts.
> Usage would look like this:
> {code}
> private final MiniClusterResource cluster = ...
> private final ClientMiniClusterResourceExtensionext = new 
> ClientMiniClusterResourceExtension(cluster);
> @Rule
> public RuleChain chain= RuleChain
>   .outerRule(cluster) 
>   .around(ext),
> {code}
> [~till.rohrmann] WDYT?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (FLINK-10294) Split MiniClusterResource to be usable in runtime/streaming-java/clients

2018-09-24 Thread Chesnay Schepler (JIRA)


[ 
https://issues.apache.org/jira/browse/FLINK-10294?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16625556#comment-16625556
 ] 

Chesnay Schepler commented on FLINK-10294:
--

Yeah I guess that would make things simpler, the cluster resource could be 
exposed with a simple getter.

> Split MiniClusterResource to be usable in runtime/streaming-java/clients
> 
>
> Key: FLINK-10294
> URL: https://issues.apache.org/jira/browse/FLINK-10294
> Project: Flink
>  Issue Type: Improvement
>  Components: Tests
>Affects Versions: 1.7.0
>Reporter: Chesnay Schepler
>Assignee: Chesnay Schepler
>Priority: Major
> Fix For: 1.7.0
>
>
> h5. Problem
> The {{MiniClusterResource}} is a utility class to create and manage flink 
> clusters for testing purposes. It is incredibly convenient, but unfortunately 
> resides in {{flink-test-utils}} which depends on flink-runtime, 
> flink-streaming-java and flink-clients, making the class not usable in these 
> modules.
> The current version does require these dependencies, but only for specific, 
> *optional*, parts. {{streaming-java}} is only required for accessing 
> {{TestStreamEnvironment}} and {{flink-clients}} only for tests that want to 
> work against a {{ClusterClient}}.
> h5. Proposal
> Split the {{MiniClusterResource}} as follows:
> h5. 1)
> Remove client/streaming-java dependent parts and move the class to 
> flink-runtime.
> h5. 2)
> Add a new class {{StreamingMiniClusterResourceExtension}} that accepts a  
> {{MiniClusterResource}} as an argument and contains the streaming parts.
> Usage would look like this:
> {code}
> private final MiniClusterResource cluster = ...
> private final StreamingMiniClusterResourceExtension ext = new 
> StreamingMiniClusterResourceExtension(cluster);
> @Rule
> public RuleChain chain= RuleChain
>   .outerRule(cluster) 
>   .around(ext),
> {code}
> h5. 3)
> Add a new class {{ClientMiniClusterResourceExtension}} that accepts a  
> {{MiniClusterResource}} as an argument and contains the client parts.
> Usage would look like this:
> {code}
> private final MiniClusterResource cluster = ...
> private final ClientMiniClusterResourceExtensionext = new 
> ClientMiniClusterResourceExtension(cluster);
> @Rule
> public RuleChain chain= RuleChain
>   .outerRule(cluster) 
>   .around(ext),
> {code}
> [~till.rohrmann] WDYT?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (FLINK-10294) Split MiniClusterResource to be usable in runtime/streaming-java/clients

2018-09-14 Thread Till Rohrmann (JIRA)


[ 
https://issues.apache.org/jira/browse/FLINK-10294?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16615198#comment-16615198
 ] 

Till Rohrmann commented on FLINK-10294:
---

I like the idea :-)

Maybe one thought concerning the chaining of rules. It might be simpler to let 
the {{StreamingMiniClusterResourceExtension}} and 
{{ClientMiniClusterResourceExtension}} instantiate a {{MiniClusterResource}} 
internally. Then it would be simply:
{code}
@Rule
public final ClientMiniClusterResource miniCluster = new 
ClientMiniClusterResource()
{code}

> Split MiniClusterResource to be usable in runtime/streaming-java/clients
> 
>
> Key: FLINK-10294
> URL: https://issues.apache.org/jira/browse/FLINK-10294
> Project: Flink
>  Issue Type: Improvement
>  Components: Tests
>Affects Versions: 1.7.0
>Reporter: Chesnay Schepler
>Assignee: Chesnay Schepler
>Priority: Major
> Fix For: 1.7.0
>
>
> h5. Problem
> The {{MiniClusterResource}} is a utility class to create and manage flink 
> clusters for testing purposes. It is incredibly convenient, but unfortunately 
> resides in {{flink-test-utils}} which depends on flink-runtime, 
> flink-streaming-java and flink-clients, making the class not usable in these 
> modules.
> The current version does require these dependencies, but only for specific, 
> *optional*, parts. {{streaming-java}} is only required for accessing 
> {{TestStreamEnvironment}} and {{flink-clients}} only for tests that want to 
> work against a {{ClusterClient}}.
> h5. Proposal
> Split the {{MiniClusterResource}} as follows:
> h5. 1)
> Remove client/streaming-java dependent parts and move the class to 
> flink-runtime.
> h5. 2)
> Add a new class {{StreamingMiniClusterResourceExtension}} that accepts a  
> {{MiniClusterResource}} as an argument and contains the streaming parts.
> Usage would look like this:
> {code}
> private final MiniClusterResource cluster = ...
> private final StreamingMiniClusterResourceExtension ext = new 
> StreamingMiniClusterResourceExtension(cluster);
> @Rule
> public RuleChain chain= RuleChain
>   .outerRule(cluster) 
>   .around(ext),
> {code}
> h5. 3)
> Add a new class {{ClientMiniClusterResourceExtension}} that accepts a  
> {{MiniClusterResource}} as an argument and contains the client parts.
> Usage would look like this:
> {code}
> private final MiniClusterResource cluster = ...
> private final ClientMiniClusterResourceExtensionext = new 
> ClientMiniClusterResourceExtension(cluster);
> @Rule
> public RuleChain chain= RuleChain
>   .outerRule(cluster) 
>   .around(ext),
> {code}
> [~till.rohrmann] WDYT?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)