Dear Maven Developers,

 

today I'd like to propose a new core feature of Maven: Maven Workflows.

 

Since several time there had been workflow-style plugins, i. e. plugins that
simply execute mojos of other plugins in a particular sequence. Well-known
examples are the Maven Release Plugin (which implements a flow of SCM and
Version operations), the Git-Flow Maven Plugin (which implements a flow of
SCM operations) and in some why the Groovy Maven Plugin (which, besides
custom code, is able to invoke Maven plugin to implement a flow). Some
people start coding custom plugins for more custom flows, other people use
bash scripting to implement their flows using a sequence of mvn invocations,
both with the benefit that neither Maven itself nor Maven-enabled tools
(like IDEs or CI/CD) neither "see" nor "understand" these workflows -- hence
cannot support custom workflows, or only with a lot of more custom code
(like custom IDE plugins). It is time to discuss the ideo of natively
supporting Workflows!

 

What I like to propose is:

 

* Maven core has new interface "Workflow", is able to customize it using
<workflow> POM elements.

* A "Workflow" is defined as a sequence of plugin executions. Workflows can
includes <if> or <case> to query properties.

* A new "Maven Workflow Plugin", is able to execute workflows.

* IDEs can "see" and execute workflows.

 

This is just a core idea and certainly needs more in-depth thoughts. But so
far, what do you think?

 

-Markus

 

Reply via email to