be3f89b5f9
* artifact: enable inheriting environment variables from client This PR adds client configuration for specifying environment variables that should be inherited by the artifact sandbox process from the Nomad Client agent. Most users should not need to set these values but the configuration is provided to ensure backwards compatability. Configuration of go-getter should ideally be done through the artifact block in a jobspec task. e.g. ```hcl client { artifact { set_environment_variables = "TMPDIR,GIT_SSH_OPTS" } } ``` Closes #15498 * website: update set_environment_variables text to mention PATH
38 lines
803 B
Go
38 lines
803 B
Go
//go:build windows
|
|
|
|
package getter
|
|
|
|
import (
|
|
"os"
|
|
"path/filepath"
|
|
"syscall"
|
|
)
|
|
|
|
// attributes returns the system process attributes to run
|
|
// the sandbox process with
|
|
func attributes() *syscall.SysProcAttr {
|
|
return &syscall.SysProcAttr{}
|
|
}
|
|
|
|
func credentials() (uint32, uint32) {
|
|
return 0, 0
|
|
}
|
|
|
|
// lockdown has no effect on windows
|
|
func lockdown(string) error {
|
|
return nil
|
|
}
|
|
|
|
// defaultEnvironment is the default minimal environment variables for Windows.
|
|
func defaultEnvironment(taskDir string) map[string]string {
|
|
tmpDir := filepath.Join(taskDir, "tmp")
|
|
return map[string]string{
|
|
"HOMEPATH": os.Getenv("HOMEPATH"),
|
|
"HOMEDRIVE": os.Getenv("HOMEDRIVE"),
|
|
"USERPROFILE": os.Getenv("USERPROFILE"),
|
|
"PATH": os.Getenv("PATH"),
|
|
"TMP": tmpDir,
|
|
"TEMP": tmpDir,
|
|
}
|
|
}
|