@@ -12,16 +12,21 @@ import (
1212// Updates the app enviornment variables for creating or updating an instance.
1313func (broker * SCSBroker ) UpdateAppEnvironment (cfClient * ccv3.Client , app * ccv3.Application , info * ccv3.Info , kind string , instanceId string , jsonparams string , params map [string ]string ) error {
1414
15+ var hostKeySetSSH bool = false
1516 var profiles []string
17+ envVarToSet := make (ccv3.EnvironmentVariables )
1618 for key , value := range params {
17- _ , _ , err := cfClient .UpdateApplicationEnvironmentVariables (app .GUID , ccv3.EnvironmentVariables {
18- key : * types .NewFilteredString (value ),
19- })
19+
20+ envVarToSet [key ] = * types .NewFilteredString (value )
2021
2122 if key == "SPRING_CLOUD_CONFIG_SERVER_GIT_URI" {
2223 profiles = append (profiles , "git" )
2324 }
2425
26+ if key == "SPRING_CLOUD_CONFIG_SERVER_GIT_HOSTKEY" {
27+ hostKeySetSSH = true
28+ }
29+
2530 if key == "SPRING_CLOUD_CONFIG_SERVER_VAULT_HOST" {
2631 profiles = append (profiles , "vault" )
2732 }
@@ -34,9 +39,6 @@ func (broker *SCSBroker) UpdateAppEnvironment(cfClient *ccv3.Client, app *ccv3.A
3439 profiles = append (profiles , "credhub" )
3540 }
3641
37- if err != nil {
38- return err
39- }
4042 }
4143
4244 var profileString strings.Builder
@@ -48,13 +50,21 @@ func (broker *SCSBroker) UpdateAppEnvironment(cfClient *ccv3.Client, app *ccv3.A
4850 }
4951 }
5052
51- _ , _ , err := cfClient .UpdateApplicationEnvironmentVariables (app .GUID , ccv3.EnvironmentVariables {
52- "SPRING_APPLICATION_JSON" : * types .NewFilteredString (jsonparams ),
53- "JWK_SET_URI" : * types .NewFilteredString (fmt .Sprintf ("%v/token_keys" , info .UAA ())),
54- "SKIP_SSL_VALIDATION" : * types .NewFilteredString (strconv .FormatBool (broker .Config .CfConfig .SkipSslValidation )),
55- "REQUIRED_AUDIENCE" : * types .NewFilteredString (fmt .Sprintf ("%s.%v" , kind , instanceId )),
56- "SPRING_PROFILES_ACTIVE" : * types .NewFilteredString (profileString .String ()),
57- })
53+ envVarToSet ["SPRING_CLOUD_CONFIG_SERVER_GIT_IGNORELOCALSSHSETTINGS" ] = * types .NewFilteredString ("true" )
54+
55+ if ! hostKeySetSSH {
56+ envVarToSet ["SPRING_CLOUD_CONFIG_SERVER_GIT_STRICTHOSTKEYCHECKING" ] = * types .NewFilteredString ("false" )
57+ } else {
58+ envVarToSet ["SPRING_CLOUD_CONFIG_SERVER_GIT_STRICTHOSTKEYCHECKING" ] = * types .NewFilteredString ("true" )
59+ }
60+
61+ envVarToSet ["SPRING_APPLICATION_JSON" ] = * types .NewFilteredString (jsonparams )
62+ envVarToSet ["JWK_SET_URI" ] = * types .NewFilteredString (fmt .Sprintf ("%v/token_keys" , info .UAA ()))
63+ envVarToSet ["SKIP_SSL_VALIDATION" ] = * types .NewFilteredString (strconv .FormatBool (broker .Config .CfConfig .SkipSslValidation ))
64+ envVarToSet ["REQUIRED_AUDIENCE" ] = * types .NewFilteredString (fmt .Sprintf ("%s.%v" , kind , instanceId ))
65+ envVarToSet ["SPRING_PROFILES_ACTIVE" ] = * types .NewFilteredString (profileString .String ())
66+
67+ _ , _ , err := cfClient .UpdateApplicationEnvironmentVariables (app .GUID , envVarToSet )
5868 if err != nil {
5969 return err
6070 }
0 commit comments