Short notice about maven build process:
- You can describe each plugin only once in pom.xml, duplicate descriptions is a bad practice (error prone).
- You can describe multiple separate executions for each plugin.
- Executions of the single plugin (bound to the single phase) will run in a sequence, regardless of other plugin definitions.
- Executions of the different plugins (bound to the single phase) will run in a sequence as they are described in pom.xml.
Thinking about this statements you have a simple way - bind (1) and (3) to different phases.
I suggest you to bind
- (1) and (2) to 'pre-integration-test' phase, and
- (3) to 'integration-test' phase
It will solve the sequence problem. See also full list of phases in maven docs to find proper phases for your case.
And you have an alternative way, if you run this scenario only from CI server. You can configure build job for explicit multiple-steps build via separate profiles in pom.xml:
- build binaries
- migrate scheme
- deploy app
- load test data
It is much more complex and error prone, so I prefer the first way.