From 9afdf6ea4a6c484fc2692a36a631cd851fc15d70 Mon Sep 17 00:00:00 2001 From: Luca Comellini Date: Wed, 15 Feb 2023 16:16:09 -0800 Subject: [PATCH] add env --- dist/setup/index.js | 12 ++++++++++++ src/main.ts | 22 ++++++++++++++++++++-- 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/dist/setup/index.js b/dist/setup/index.js index 40f31c5..3fc4eaa 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -63617,6 +63617,9 @@ function run() { core.setOutput('go-version', parseGoVersion(goVersion)); core.startGroup('go env'); let goEnv = (child_process_1.default.execSync(`${goPath} env`) || '').toString(); + let goEnvJson = convertEnvStringToJson(goEnv); + core.info(`go env json: ${goEnvJson}`); + core.setOutput('go-version', parseGoVersion(goVersion)); core.info(goEnv); core.endGroup(); } @@ -63664,6 +63667,15 @@ function parseGoVersion(versionString) { return versionString.split(' ')[2].slice('go'.length); } exports.parseGoVersion = parseGoVersion; +function convertEnvStringToJson(envString) { + const envArray = envString.split('\n'); + const envObject = {}; + envArray.forEach(envVar => { + const [key, value] = envVar.split('='); + envObject[key] = value; + }); + return envObject; +} function resolveVersionInput() { let version = core.getInput('go-version'); const versionFilePath = core.getInput('go-version-file'); diff --git a/src/main.ts b/src/main.ts index 6cdb2e6..5a6a332 100644 --- a/src/main.ts +++ b/src/main.ts @@ -3,8 +3,8 @@ import * as io from '@actions/io'; import * as installer from './installer'; import * as semver from 'semver'; import path from 'path'; -import {restoreCache} from './cache-restore'; -import {isCacheFeatureAvailable} from './cache-utils'; +import { restoreCache } from './cache-restore'; +import { isCacheFeatureAvailable } from './cache-utils'; import cp from 'child_process'; import fs from 'fs'; import os from 'os'; @@ -80,6 +80,12 @@ export async function run() { core.startGroup('go env'); let goEnv = (cp.execSync(`${goPath} env`) || '').toString(); + + let goEnvJson = convertEnvStringToJson(goEnv) + + core.info(`go env json: ${goEnvJson}`); + + core.setOutput('go-version', parseGoVersion(goVersion)); core.info(goEnv); core.endGroup(); } catch (error) { @@ -126,6 +132,18 @@ export function parseGoVersion(versionString: string): string { return versionString.split(' ')[2].slice('go'.length); } +function convertEnvStringToJson(envString: string): { [key: string]: string } { + const envArray = envString.split('\n'); + const envObject: { [key: string]: string } = {}; + + envArray.forEach(envVar => { + const [key, value] = envVar.split('='); + envObject[key] = value; + }); + + return envObject; +} + function resolveVersionInput(): string { let version = core.getInput('go-version'); const versionFilePath = core.getInput('go-version-file');