Command Line Execution Plug-in for the Kobalt build system https://github.com/ethauvin/kobalt-exec
Find a file
2016-07-13 00:31:22 -07:00
.idea Added predefined operating systems value. 2016-07-13 00:26:17 -07:00
example Added predefined operating systems value. 2016-07-13 00:26:17 -07:00
kobalt Added predefined operating systems value. 2016-07-13 00:26:17 -07:00
src Added predefined operating systems value. 2016-07-13 00:26:17 -07:00
wrapper Update to the latest API. 2016-07-10 21:49:27 -07:00
.gitattributes fixup! Added .gitattributes 2016-07-12 18:51:34 -07:00
.gitignore Fixed forEach loops. 2016-07-11 22:27:05 -07:00
.travis.yml Added ConfigActor injection. 2016-07-12 17:56:49 -07:00
kobalt-exec.iml Added predefined operating systems value. 2016-07-13 00:26:17 -07:00
kobaltw Made kobaltw executable. 2016-07-12 18:36:25 -07:00
LICENSE.txt Added license. 2016-07-13 00:31:22 -07:00
README.md Added predefined operating systems value. 2016-07-13 00:26:17 -07:00

Command Line Execution plug-in for Kobalt

License (3-Clause BSD) Build Status

var pl = plugins("net.thauvin.erik:kobalt-exc:")

var p = project {
    name = "example"
	
    exec {
       commandLine(listOf("echo", "Hello, World!"))
    }
}
./kobaltw assemble exec

CommandLine Directive

exec {
    commandLine(listOf("cmd", "/c", "stop.bat"), dir = "../tomcat/bin", os = setOf(Os.WINDOWS))
    commandLine(listOf("./stop.sh"), dir = "../tomcat/bin", os = setOf(Os.MAC, Os.LINUX))
    commandLine(listOf("/bin/sh", "-c", "ps aux | grep tomcat"), fail = setOf(Fail.EXIT))
}

Parameters

args

The full command line including the executable and its parameters.

exec {
    commandLine(listOf("ls", "-l"))
    comamndLine(args = listOf("touch", "README.md"))
}

dir

The working directory for the process. Defaults to the project directory.

exec {
    commandLine(listOf("cmd", "/c", "stop.bat"), dir = "../tomcat/bin")
}

os

The operating system(s) to execute the command on. If the current operating system does not match, the command will not be executed.

The following predefined values are available:

Name Operating System
Os.FREEBSD FreeBSD
Os.LINUX Linux
Os.MAC Apple Macintosh / OS X
Os.OPENVMS OpenVMS
Os.OS400 OS/400
Os.SOLARIS Solaris / SunOS
Os.TANDEM Tandem's Non-Stop
Os.WINDOWS Microsoft Windows
Os.ZOS z/OS / OS/390
exec {
    commandLine(listOf("cmd", "/c", "stop.cmd"), os = setOf(Os.WINDOWS))
    commandLine(listOf("./stop.sh"), os = setOf(Os.LINUX, Os.MAC))
}

fail

Specifies whether output to the stderr, stdout and/or an abnormal exit value constitutes a failure.

The following predefined values are available:

Name Failure When
Fail.EXIT Exit value > 0
Fail.NORMAL Exit value > 0 or any output to the standard error stream (stderr).
Fail.OUTPUT Any output to the standard output stream (stdout) or stderr.
Fail.STDERR Any output to stderr.
Fail.STDOUT Any output to stdout.
Fail.ALL Any of the conditions above.

Fail.NORMAL is the default value.

exec {
    commandLine(listOf("cmd", "/c", "stop.bat"), fail = setOf(Fail.EXIT))
    commandLine(listOf("./stop.sh"), fail = setOf(Fail.EXIT, Fail.STDOUT))
}

Logging / Debugging

./kobaltw exec --log 2