Documentation ¶
Index ¶
Constants ¶
View Source
const ( // Successful exit ExitOK = 0 // The command was used incorrectly, e.g., with the // wrong number of arguments, a bad flag, a bad syntax // in a parameter, etc. ExitUsage = 64 // The input data was incorrect in some way. This // should only be used for user's data and not system // files. ExitDataErr = 65 // An input file (not a system file) did not exist or // was not readable. This could also include errors // like "No message" to a mailer (if it cared to // catch it). ExitNoInput = 66 // The user specified did not exist. This might be // used for mail addresses or remote logins. ExitNoUser = 67 // The host specified did not exist. This is used in // mail addresses or network requests. ExitNoHost = 68 // support program or file does not exist. This can also // be used as a catchall message when something you // wanted to do doesn't work, but you don't know why. ExitUnavailable = 69 // An internal software error has been detected. This // should be limited to non-operating system related // errors as possible. ExitSoftware = 70 // An operating system error has been detected. This // is intended to be used for such things as "cannot // fork", "cannot create pipe", or the like. It // includes things like getuid returning a user that // does not exist in the passwd file. ExitOSErr = 71 // Some system file (e.g., /etc/passwd, /var/run/utmp, // etc.) does not exist, cannot be opened, or has some // sort of error (e.g., syntax error). ExitOSFile = 72 // A (user specified) output file cannot be created. ExitCantCreat = 73 // An error occurred while doing I/O on some file. ExitIOErr = 74 // Temporary failure, indicating something that is not // really an error. In sendmail, this means that a // mailer (e.g.) could not create a connection, and // the request should be reattempted later. ExitTempfail = 75 // The remote system returned something that was // "not possible" during a protocol exchange. ExitProtocol = 76 // You did not have sufficient permission to perform // the operation. This is not intended for file system // problems, which should use `NOINPUT` or `CANTCREAT`, // but rather for higher level permissions. ExitNoPerm = 77 // Something was found in an unconfigured or misconfigured state. ExitConfig = 78 )
View Source
const ConfigFileName = "penrun.toml"
Variables ¶
This section is empty.
Functions ¶
func FindConfigFile ¶
Types ¶
type Config ¶
type Config struct { CLI []string `kong:"arg,passthrough,help='Command to invoke'"` ArtifactsDir string `kong:"short='d',help='Set artifacts_dir to this directory'"` ArtifactsBase string `kong:"short='b',help='Set artifacts_base where the artifacts hierarchy (including LATEST) will be created'"` Batched bool `kong:"short='B',help='Run several commands in parallel'"` PreHook string `kong:"help='Shell script that runs before the command'"` PostHook string `kong:"help='Shell script that runs after the command'"` }
func ParseConfigFile ¶
type FinishedRun ¶
type FinishedRun struct { ArtifactsDir string `json:"artifacts_dir"` CLI []string `json:"cli"` CLIString string `json:"cli_string"` CWD string `json:"cwd"` ExitCode int `json:"exit_code"` StartTime time.Time `json:"start_time"` EndTime time.Time `json:"end_time"` Duration time.Duration `json:"duration"` Environ []string `json:"environ"` Hostname string `json:"hostname"` PenrunVersion string `json:"penrun_version"` }
func RunCommand ¶
func RunCommand(config *Config) (*FinishedRun, error)
func (*FinishedRun) Success ¶
func (fr *FinishedRun) Success() bool
Click to show internal directories.
Click to hide internal directories.