You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
24 lines
846 B
Kotlin
24 lines
846 B
Kotlin
package io.provs.platforms
|
|
|
|
import io.provs.Prov
|
|
import io.provs.ProvResult
|
|
import io.provs.processors.LocalProcessor
|
|
import io.provs.processors.Processor
|
|
|
|
const val SHELL = "/bin/bash" // could be changed to another shell like "sh", "/bin/csh" if required
|
|
|
|
|
|
class UbuntuProv internal constructor(processor : Processor = LocalProcessor(), name: String? = null) : Prov (processor, name) {
|
|
|
|
override fun cmd(cmd: String, dir: String?) : ProvResult = def {
|
|
xec(SHELL, "-c", if (dir == null) cmd else "cd $dir && $cmd")
|
|
}
|
|
|
|
override fun cmdNoLog(cmd: String, dir: String?) : ProvResult {
|
|
return xecNoLog(SHELL, "-c", if (dir == null) cmd else "cd $dir && $cmd")
|
|
}
|
|
|
|
override fun cmdNoEval(cmd: String, dir: String?) : ProvResult {
|
|
return xec(SHELL, "-c", if (dir == null) cmd else "cd $dir && $cmd")
|
|
}
|
|
} |