Skip to content

Commit 414a5ce

Browse files
committed
go.testEnvFile: support export keyword
Support exported variables in environment files, e.g. export BAR=foo
1 parent 6f77bbd commit 414a5ce

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

extension/src/utils/envUtils.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,14 @@ export function parseEnvFile(envFilePath: string, globalVars?: NodeJS.Dict<strin
3131
try {
3232
const buffer = stripBOM(fs.readFileSync(envFilePath, 'utf8'));
3333
buffer.split('\n').forEach((line) => {
34-
const r = line.match(/^\s*([\w\.\-]+)\s*=\s*(.*)?\s*$/);
34+
const r = line.match(/^\s*(export\s+)?([\w\.\-]+)\s*=\s*(.*)?\s*$/);
3535
if (r !== null) {
36-
let value = r[2] || '';
36+
let value = r[3] || '';
3737
if (value.length > 0 && value.charAt(0) === '"' && value.charAt(value.length - 1) === '"') {
3838
value = value.replace(/\\n/gm, '\n');
3939
}
4040
const v = value.replace(/(^['"]|['"]$)/g, '');
41-
env[r[1]] = substituteEnvVars(v, env, globalVars!);
41+
env[r[2]] = substituteEnvVars(v, env, globalVars!);
4242
}
4343
});
4444
return env;

extension/test/integration/goDebugConfiguration.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ suite('Debug Environment Variable Merge Test', () => {
130130
test('launchArgs.env overwrites launchArgs.envFile', () => {
131131
const env = { SOMEVAR1: 'valueFromEnv' };
132132
const envFile = path.join(tmpDir, 'env');
133-
fs.writeFileSync(envFile, ['SOMEVAR1=valueFromEnvFile1', 'SOMEVAR2=valueFromEnvFile2'].join('\n'));
133+
fs.writeFileSync(envFile, ['SOMEVAR1=valueFromEnvFile1', 'export SOMEVAR2=valueFromEnvFile2'].join('\n'));
134134

135135
runTest(
136136
{ env, envFile },

0 commit comments

Comments
 (0)