func BuildEnvVariablesFromGlobalAndNodeSpecificSettings()

in internal/resource/statefulset_utils.go [245:262]


func BuildEnvVariablesFromGlobalAndNodeSpecificSettings(instance *TeamCity, node Node) []v12.EnvVar {
	dataDirPath := instance.DataDirPath()
	extraServerOpts := ConvertStartUpPropertiesToServerOptions(instance.Spec.StartupPropertiesConfig)
	var responsibilities string
	if len(node.Spec.Responsibilities) > 0 {
		responsibilities = ConvertResponsibilitiesToServerOptions(node.Spec.Responsibilities)
	}
	extraServerOpts = responsibilities + extraServerOpts
	xmxValue := XmxValueCalculator(instance.Spec.XmxPercentage, node.Spec.Requests.Memory().Value())
	envVars := DefaultEnvironmentVariableBuilder(node.Name, xmxValue, dataDirPath, extraServerOpts)
	nodeSpecificEnvVars := ConvertNodeEnvVars(node.Spec.Env)
	envVars = append(envVars, nodeSpecificEnvVars...)
	if instance.DatabaseSecretProvided() {
		databaseEnvVars := DatabaseEnvVarBuilder(instance.Spec.DatabaseSecret.Secret)
		envVars = append(envVars, databaseEnvVars...)
	}
	return envVars
}