You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@beam.apache.org by GitBox <gi...@apache.org> on 2022/02/19 01:08:11 UTC
[GitHub] [beam] tvalentyn commented on a change in pull request #16658: [BEAM-12792] Install pipline dependencies to temporary venv
tvalentyn commented on a change in pull request #16658:
URL: https://github.com/apache/beam/pull/16658#discussion_r810420441
##########
File path: sdks/python/container/boot.go
##########
@@ -210,15 +224,29 @@ func main() {
wg.Add(len(workerIds))
for _, workerId := range workerIds {
go func(workerId string) {
+ defer wg.Done()
log.Printf("Executing: python %v", strings.Join(args, " "))
- log.Fatalf("Python exited: %v", execx.ExecuteEnv(map[string]string{"WORKER_ID": workerId}, "python", args...))
- wg.Done()
+ log.Printf("Python exited: %v", execx.ExecuteEnv(map[string]string{"WORKER_ID": workerId}, "python", args...))
}(workerId)
}
wg.Wait()
}
-// setup wheel specs according to installed python version
+// setupVenv initialize a local Python venv and set the corresponding env variables
+func setupVenv(dir string) error {
+ log.Printf("Initializing temporary Python venv ...")
+ if _, err := os.Stat(filepath.Join(dir, "pyenv.cfg")); os.IsNotExist(err) {
Review comment:
I think you meant pyvenv.cfg
##########
File path: sdks/python/container/boot.go
##########
@@ -210,15 +224,29 @@ func main() {
wg.Add(len(workerIds))
for _, workerId := range workerIds {
go func(workerId string) {
+ defer wg.Done()
log.Printf("Executing: python %v", strings.Join(args, " "))
- log.Fatalf("Python exited: %v", execx.ExecuteEnv(map[string]string{"WORKER_ID": workerId}, "python", args...))
- wg.Done()
+ log.Printf("Python exited: %v", execx.ExecuteEnv(map[string]string{"WORKER_ID": workerId}, "python", args...))
}(workerId)
}
wg.Wait()
}
-// setup wheel specs according to installed python version
+// setupVenv initialize a local Python venv and set the corresponding env variables
+func setupVenv(dir string) error {
+ log.Printf("Initializing temporary Python venv ...")
+ if _, err := os.Stat(filepath.Join(dir, "pyenv.cfg")); os.IsNotExist(err) {
Review comment:
What is the reason to reuse the venv exactly? When do we want to do that as opposed to creating a new venv from scratch?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org