GitHub user tillrohrmann opened a pull request:
https://github.com/apache/flink/pull/5224
[FLINK-8338] [flip6] Make CustomCommandLines non static in CliFrontend
## What is the purpose of the change
This commit changes how CustomCommandLines are registered at the
CliFrontend.
Henceforth, the CliFrontend is initialized with the set of
CustomCommandLines
instead of registering them statically. This improves maintainability and
testability.
This PR is based on #5220.
## Brief change log
- Remove static `CustomCommandLines` field in `CliFrontend`
- Pass in the `CustomCommandLines` to the `CliFrontend's` constructor
- Adapt command methods in `CliFrontend` to use the correct `Options` from
the instance `CustomCommandLines`
## Verifying this change
- This change is covered by existing tests
## Does this pull request potentially affect one of the following parts:
- Dependencies (does it add or upgrade a dependency): (no)
- The public API, i.e., is any changed class annotated with
`@Public(Evolving)`: (no)
- The serializers: (no)
- The runtime per-record code paths (performance sensitive): (no)
- Anything that affects deployment or recovery: JobManager (and its
components), Checkpointing, Yarn/Mesos, ZooKeeper: (yes)
- The S3 file system connector: (no)
## Documentation
- Does this pull request introduce a new feature? (no)
- If yes, how is the feature documented? (not applicable)
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/tillrohrmann/flink nonStaticCustomCommandLines
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/5224.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #5224
----
commit c48324702b0ebff3fd7a16e480ead90fc4c9a30b
Author: Till Rohrmann <trohrmann@...>
Date: 2017-12-07T12:57:24Z
[FLINK-8328] [flip6] Move Yarn ApplicationStatus polling out of
YarnClusterClient
Introduce YarnApplicationStatusMonitor which does the Yarn
ApplicationStatus polling in
the FlinkYarnSessionCli. This decouples the YarnClusterClient from the
actual communication
with Yarn and, thus, gives a better separation of concerns.
commit 783bd1daf36b34a74cbe718a52a1043ba38d5a44
Author: Till Rohrmann <trohrmann@...>
Date: 2017-12-20T15:43:21Z
[FLINK-8329] [flip6] Move YarnClient to AbstractYarnClusterDescriptor
Moves the YarnClient from the YarnClusterClient to the
AbstractYarnClusterDescriptor.
This makes the latter responsible for the lifecycle management of the
client and gives
a better separation of concerns.
commit 192adb786a48d19b71e797355500652d51de6296
Author: Till Rohrmann <trohrmann@...>
Date: 2017-12-18T17:59:30Z
[FLINK-8332] [flip6] Move savepoint dispose into ClusterClient
Move the savepoint disposal logic from the CliFrontend into the
ClusterClient. This gives
a better separation of concerns and allows the CliFrontend to be used with
different
ClusterClient implementations.
commit a73b6e2850d4b2445a835914ba570d1057e59dfb
Author: Till Rohrmann <trohrmann@...>
Date: 2018-01-02T06:42:18Z
[FLINK-8333] [flip6] Separate deployment options from command options
This commit separates the parsing of command options and deployment options
into two
steps. This makes it easier to make the CustomCommandLines non-static.
Moreover, this commit moves the CliFrontend into the cli sub package.
commit e32fa9d4eb45bfac2d13ab112f127be29d273ebd
Author: Till Rohrmann <trohrmann@...>
Date: 2018-01-02T06:59:34Z
[FLINK-8338] [flip6] Make CustomCommandLines non static in CliFrontend
This commit changes how CustomCommandLines are registered at the
CliFrontend.
Henceforth, the CliFrontend is initialized with the set of
CustomCommandLines
instead of registering them statically. This improves maintainability and
testability.
----
---