This is an automated email from the ASF dual-hosted git repository.
pabloem pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/beam.git
The following commit(s) were added to refs/heads/master by this push:
new fd2d445 [BEAM-13120][Playground] add working dir for setting up sdk
environment; renaming;
new 06d2207 Merge pull request #15824 from [BEAM-13120][Playground]
GetSdkEnvsFromOsEnvs should check APP_WORK_DIR env before extracting
fd2d445 is described below
commit fd2d445ed451be894901140bcf7e41ffb1cde125
Author: AydarZaynutdinov <[email protected]>
AuthorDate: Thu Oct 28 16:57:01 2021 +0300
[BEAM-13120][Playground]
add working dir for setting up sdk environment;
renaming;
---
playground/backend/cmd/server/controller_test.go | 10 +++++-----
playground/backend/cmd/server/server.go | 4 ++--
.../backend/internal/environment/environment_service.go | 6 +++---
.../backend/internal/environment/environment_service_test.go | 11 ++++++-----
4 files changed, 16 insertions(+), 15 deletions(-)
diff --git a/playground/backend/cmd/server/controller_test.go
b/playground/backend/cmd/server/controller_test.go
index 31379ea..0e53cf6 100644
--- a/playground/backend/cmd/server/controller_test.go
+++ b/playground/backend/cmd/server/controller_test.go
@@ -79,11 +79,11 @@ func setup() *grpc.Server {
if err != nil {
panic(err)
}
- sdkEnv, err := environment.GetSdkEnvsFromOsEnvs()
+ appEnv, err := environment.GetApplicationEnvsFromOsEnvs()
if err != nil {
panic(err)
}
- appEnv, err := environment.GetApplicationEnvsFromOsEnvs()
+ sdkEnv, err := environment.ConfigureBeamEnvs(appEnv.WorkingDir())
if err != nil {
panic(err)
}
@@ -243,15 +243,15 @@ func TestPlaygroundController_GetRunOutput(t *testing.T) {
func Test_processCode(t *testing.T) {
pipelineId := uuid.New()
- sdkEnv, err := environment.GetSdkEnvsFromOsEnvs()
+ networkEnvs, err := environment.GetNetworkEnvsFromOsEnvs()
if err != nil {
panic(err)
}
- networkEnvs, err := environment.GetNetworkEnvsFromOsEnvs()
+ appEnvs, err := environment.GetApplicationEnvsFromOsEnvs()
if err != nil {
panic(err)
}
- appEnvs, err := environment.GetApplicationEnvsFromOsEnvs()
+ sdkEnv, err := environment.ConfigureBeamEnvs(appEnvs.WorkingDir())
if err != nil {
panic(err)
}
diff --git a/playground/backend/cmd/server/server.go
b/playground/backend/cmd/server/server.go
index 995fb53..2a29b5c 100644
--- a/playground/backend/cmd/server/server.go
+++ b/playground/backend/cmd/server/server.go
@@ -71,11 +71,11 @@ func setupEnvironment() (*environment.Environment, error) {
if err != nil {
return nil, err
}
- beamEnvs, err := environment.GetSdkEnvsFromOsEnvs()
+ appEnvs, err := environment.GetApplicationEnvsFromOsEnvs()
if err != nil {
return nil, err
}
- appEnvs, err := environment.GetApplicationEnvsFromOsEnvs()
+ beamEnvs, err := environment.ConfigureBeamEnvs(appEnvs.WorkingDir())
if err != nil {
return nil, err
}
diff --git a/playground/backend/internal/environment/environment_service.go
b/playground/backend/internal/environment/environment_service.go
index 240a972..0f469ec 100644
--- a/playground/backend/internal/environment/environment_service.go
+++ b/playground/backend/internal/environment/environment_service.go
@@ -118,8 +118,8 @@ func GetNetworkEnvsFromOsEnvs() (*NetworkEnvs, error) {
return NewNetworkEnvs(ip, port), nil
}
-// GetSdkEnvsFromOsEnvs lookups in os environment variables and takes value
for Apache Beam SDK. If not exists - using default
-func GetSdkEnvsFromOsEnvs() (*BeamEnvs, error) {
+// ConfigureBeamEnvs lookups in os environment variables and takes value for
Apache Beam SDK. If not exists - using default
+func ConfigureBeamEnvs(workDir string) (*BeamEnvs, error) {
sdk := pb.Sdk_SDK_UNSPECIFIED
if value, present := os.LookupEnv(beamSdkKey); present {
@@ -137,7 +137,7 @@ func GetSdkEnvsFromOsEnvs() (*BeamEnvs, error) {
if sdk == pb.Sdk_SDK_UNSPECIFIED {
return nil, errors.New("env BEAM_SDK must be specified in the
environment variables")
}
- configPath := filepath.Join(os.Getenv(workingDirKey), configFolderName,
sdk.String()+jsonExt)
+ configPath := filepath.Join(workDir, configFolderName,
sdk.String()+jsonExt)
executorConfig, err := createExecutorConfig(sdk, configPath)
if err != nil {
return nil, err
diff --git
a/playground/backend/internal/environment/environment_service_test.go
b/playground/backend/internal/environment/environment_service_test.go
index 51644c9..a773d08 100644
--- a/playground/backend/internal/environment/environment_service_test.go
+++ b/playground/backend/internal/environment/environment_service_test.go
@@ -95,6 +95,7 @@ func TestNewEnvironment(t *testing.T) {
func Test_getSdkEnvsFromOsEnvs(t *testing.T) {
jars := strings.Join([]string{defaultBeamSdkPath, defaultBeamRunner,
defaultSLF4j}, ":")
+ workingDir := "./"
tests := []struct {
name string
want *BeamEnvs
@@ -104,25 +105,25 @@ func Test_getSdkEnvsFromOsEnvs(t *testing.T) {
{
name: "not specified beam sdk key in os envs",
want: nil,
- envsToSet: map[string]string{workingDirKey: "./"},
+ envsToSet: map[string]string{},
wantErr: true,
},
{
name: "default beam envs",
want: NewBeamEnvs(defaultSdk,
NewExecutorConfig("javac", "java", []string{"-d", "bin", "-classpath",
defaultBeamSdkPath}, []string{"-cp", "bin:" + jars})),
- envsToSet: map[string]string{beamSdkKey: "SDK_JAVA",
workingDirKey: "./"},
+ envsToSet: map[string]string{beamSdkKey: "SDK_JAVA"},
wantErr: false,
},
{
name: "specific sdk key in os envs",
want: NewBeamEnvs(defaultSdk,
NewExecutorConfig("javac", "java", []string{"-d", "bin", "-classpath",
defaultBeamSdkPath}, []string{"-cp", "bin:" + jars})),
- envsToSet: map[string]string{beamSdkKey: "SDK_JAVA",
workingDirKey: "./"},
+ envsToSet: map[string]string{beamSdkKey: "SDK_JAVA"},
wantErr: false,
},
{
name: "wrong sdk key in os envs",
want: nil,
- envsToSet: map[string]string{beamSdkKey: "SDK_J",
workingDirKey: "./"},
+ envsToSet: map[string]string{beamSdkKey: "SDK_J"},
wantErr: true,
},
}
@@ -131,7 +132,7 @@ func Test_getSdkEnvsFromOsEnvs(t *testing.T) {
if err := setOsEnvs(tt.envsToSet); err != nil {
t.Fatalf("couldn't setup os env")
}
- got, err := GetSdkEnvsFromOsEnvs()
+ got, err := ConfigureBeamEnvs(workingDir)
if (err != nil) != tt.wantErr {
t.Errorf("getSdkEnvsFromOsEnvs() error = %v,
wantErr %v", err, tt.wantErr)
return