Run multiple gradle-tasks via plugin


I'm writing a plugin, whih should call some gradle-tasks. This should not be parallel, but one after one.
Currently I'm using ExternalSystemUtil.runTask for calling a task and with IN_BACKGROUND_ASYNC. This can only run one task. Can I use a kind of scripting to call more than one task?

A second problem: how can I hide the output of the call in the run-window? The task must be called with a password as a parameter and I don't want to show this.


1. Use a TaskCallback parameter, start next task onSuccess/onFailure event - pretty common pattern in async programming

2. Not clear for me.

Do you want to pass password as a parameter in a command line?  Well, you can look at ConsoleFilterProvider class, and implement your own filter, but I'm not 100% sure it is possible.

If you need to pass a password to another process as a parameter secretly, I'd suggest to use keyboard input (just ask user in console), or delegate password passing to another program, e.g. like ASKPASS/SUDO_ASKPASS