2021-08-09 00:22:09 +02:00
|
|
|
package generators
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"os"
|
|
|
|
|
|
|
|
|
|
"github.com/projectdiscovery/stringsutil"
|
|
|
|
|
)
|
|
|
|
|
|
2021-08-09 09:49:07 +02:00
|
|
|
var envVars map[string]interface{}
|
|
|
|
|
|
|
|
|
|
func parseEnvVars() map[string]interface{} {
|
2021-08-09 00:22:09 +02:00
|
|
|
sliceEnvVars := os.Environ()
|
2021-08-09 12:38:31 +02:00
|
|
|
parsedEnvVars := make(map[string]interface{}, len(sliceEnvVars))
|
2021-08-09 00:22:09 +02:00
|
|
|
for _, envVar := range sliceEnvVars {
|
|
|
|
|
key, val := stringsutil.Before(envVar, "="), stringsutil.After(envVar, "=")
|
2021-08-09 12:38:31 +02:00
|
|
|
parsedEnvVars[key] = val
|
2021-08-09 00:22:09 +02:00
|
|
|
}
|
2021-08-09 12:38:31 +02:00
|
|
|
return parsedEnvVars
|
2021-08-09 00:22:09 +02:00
|
|
|
}
|
2021-08-09 09:49:07 +02:00
|
|
|
|
|
|
|
|
// EnvVars returns a map with all environment variables into a map
|
|
|
|
|
func EnvVars() map[string]interface{} {
|
|
|
|
|
if envVars == nil {
|
|
|
|
|
envVars = parseEnvVars()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return envVars
|
|
|
|
|
}
|