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.
provs/src/main/kotlin/io/provs/platforms/UbuntuProv.kt

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")
}
}