|
|
@ -3,8 +3,8 @@ import * as io from '@actions/io';
|
|
|
|
import * as installer from './installer';
|
|
|
|
import * as installer from './installer';
|
|
|
|
import * as semver from 'semver';
|
|
|
|
import * as semver from 'semver';
|
|
|
|
import path from 'path';
|
|
|
|
import path from 'path';
|
|
|
|
import {restoreCache} from './cache-restore';
|
|
|
|
import { restoreCache } from './cache-restore';
|
|
|
|
import {isCacheFeatureAvailable} from './cache-utils';
|
|
|
|
import { isCacheFeatureAvailable } from './cache-utils';
|
|
|
|
import cp from 'child_process';
|
|
|
|
import cp from 'child_process';
|
|
|
|
import fs from 'fs';
|
|
|
|
import fs from 'fs';
|
|
|
|
import os from 'os';
|
|
|
|
import os from 'os';
|
|
|
@ -80,6 +80,12 @@ export async function run() {
|
|
|
|
|
|
|
|
|
|
|
|
core.startGroup('go env');
|
|
|
|
core.startGroup('go env');
|
|
|
|
let goEnv = (cp.execSync(`${goPath} env`) || '').toString();
|
|
|
|
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.info(goEnv);
|
|
|
|
core.endGroup();
|
|
|
|
core.endGroup();
|
|
|
|
} catch (error) {
|
|
|
|
} catch (error) {
|
|
|
@ -126,6 +132,18 @@ export function parseGoVersion(versionString: string): string {
|
|
|
|
return versionString.split(' ')[2].slice('go'.length);
|
|
|
|
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 {
|
|
|
|
function resolveVersionInput(): string {
|
|
|
|
let version = core.getInput('go-version');
|
|
|
|
let version = core.getInput('go-version');
|
|
|
|
const versionFilePath = core.getInput('go-version-file');
|
|
|
|
const versionFilePath = core.getInput('go-version-file');
|
|
|
|