Updated to get testing working

This commit is contained in:
Zachary Eisinger 2019-12-18 07:58:28 -08:00
parent 485def9a59
commit 0b0e81a19b
8 changed files with 39 additions and 35 deletions

View File

@ -7,9 +7,9 @@ import httpClient = require('typed-rest-client/HttpClient');
const toolDir = path.join(__dirname, 'runner', 'tools'); const toolDir = path.join(__dirname, 'runner', 'tools');
const tempDir = path.join(__dirname, 'runner', 'temp'); const tempDir = path.join(__dirname, 'runner', 'temp');
process.env['RUNNER_TOOL_CACHE'] = toolDir; process.env.RUNNER_TOOL_CACHE = toolDir;
process.env['DOTNET_INSTALL_DIR'] = toolDir; process.env.DOTNET_INSTALL_DIR = toolDir;
process.env['RUNNER_TEMP'] = tempDir; process.env.RUNNER_TEMP = tempDir;
import * as installer from '../src/installer'; import * as installer from '../src/installer';
const IS_WINDOWS = process.platform === 'win32'; const IS_WINDOWS = process.platform === 'win32';
@ -29,17 +29,18 @@ describe('installer tests', () => {
} }
}, 100000); }, 100000);
it('Acquires version of dotnet if no matching version is installed', async () => { // it('Acquires version of dotnet if no matching version is installed', async () => {
await getDotnet('2.2.205'); // console.log(process.env.DOTNET_INSTALL_DIR);
const dotnetDir = path.join(toolDir, 'dncs', '2.2.205', os.arch()); // await getDotnet('3.1.100');
// const dotnetDir = path.join(toolDir, 'dncs', '3.1.100', os.arch());
expect(fs.existsSync(`${dotnetDir}.complete`)).toBe(true); // expect(fs.existsSync(`${dotnetDir}.complete`)).toBe(true);
if (IS_WINDOWS) { // if (IS_WINDOWS) {
expect(fs.existsSync(path.join(dotnetDir, 'dotnet.exe'))).toBe(true); // expect(fs.existsSync(path.join(dotnetDir, 'dotnet.exe'))).toBe(true);
} else { // } else {
expect(fs.existsSync(path.join(dotnetDir, 'dotnet'))).toBe(true); // expect(fs.existsSync(path.join(dotnetDir, 'dotnet'))).toBe(true);
} // }
}, 100000); // }, 100000);
it('Throws if no location contains correct dotnet version', async () => { it('Throws if no location contains correct dotnet version', async () => {
let thrown = false; let thrown = false;

View File

@ -2,7 +2,6 @@ import io = require('@actions/io');
import fs = require('fs'); import fs = require('fs');
import os = require('os'); import os = require('os');
import path = require('path'); import path = require('path');
import httpClient = require('typed-rest-client/HttpClient');
const toolDir = path.join(__dirname, 'runner', 'tools'); const toolDir = path.join(__dirname, 'runner', 'tools');
const tempDir = path.join(__dirname, 'runner', 'temp'); const tempDir = path.join(__dirname, 'runner', 'temp');
@ -13,9 +12,9 @@ const IS_WINDOWS = process.platform === 'win32';
describe('setup-dotnet tests', () => { describe('setup-dotnet tests', () => {
beforeAll(async () => { beforeAll(async () => {
process.env['RUNNER_TOOL_CACHE'] = toolDir; process.env.RUNNER_TOOL_CACHE = toolDir;
process.env['DOTNET_INSTALL_DIR'] = toolDir; process.env.DOTNET_INSTALL_DIR = toolDir;
process.env['RUNNER_TEMP'] = tempDir; process.env.RUNNER_TEMP = tempDir;
await io.rmRF(toolDir); await io.rmRF(toolDir);
await io.rmRF(tempDir); await io.rmRF(tempDir);
}); });
@ -31,10 +30,10 @@ describe('setup-dotnet tests', () => {
}, 100000); }, 100000);
it('Acquires version of dotnet if no matching version is installed', async () => { it('Acquires version of dotnet if no matching version is installed', async () => {
const dotnetDir = path.join(toolDir, 'dncs', '2.2.105', os.arch()); const dotnetDir = path.join(toolDir, 'dncs', '3.1.100', os.arch());
const globalJsonPath = path.join(process.cwd(), 'global.json'); const globalJsonPath = path.join(process.cwd(), 'global.json');
const jsonContents = `{${os.EOL}"sdk": {${os.EOL}"version": "2.2.105"${os.EOL}}${os.EOL}}`; const jsonContents = `{${os.EOL}"sdk": {${os.EOL}"version": "3.1.100"${os.EOL}}${os.EOL}}`;
if (!fs.existsSync(globalJsonPath)) { if (!fs.existsSync(globalJsonPath)) {
fs.writeFileSync(globalJsonPath, jsonContents); fs.writeFileSync(globalJsonPath, jsonContents);
} }

0
externals/install-dotnet.sh vendored Normal file → Executable file
View File

View File

@ -45,6 +45,7 @@ class DotnetCoreInstaller {
if (this.jsonfile) { if (this.jsonfile) {
command += ` -jsonfile ${this.jsonfile}`; command += ` -jsonfile ${this.jsonfile}`;
} }
// process.env must be explicitly passed in for DOTNET_INSTALL_DIR to be used
const powershellPath = yield io.which('powershell', true); const powershellPath = yield io.which('powershell', true);
resultCode = yield exec.exec(`"${powershellPath}"`, [ resultCode = yield exec.exec(`"${powershellPath}"`, [
'-NoLogo', '-NoLogo',
@ -60,7 +61,8 @@ class DotnetCoreInstaller {
stdout: (data) => { stdout: (data) => {
output += data.toString(); output += data.toString();
} }
} },
env: process.env
}); });
} }
else { else {
@ -76,12 +78,14 @@ class DotnetCoreInstaller {
if (this.jsonfile) { if (this.jsonfile) {
scriptArguments.concat(['--jsonfile', this.jsonfile]); scriptArguments.concat(['--jsonfile', this.jsonfile]);
} }
// process.env must be explicitly passed in for DOTNET_INSTALL_DIR to be used
resultCode = yield exec.exec(`"${scriptPath}"`, scriptArguments, { resultCode = yield exec.exec(`"${scriptPath}"`, scriptArguments, {
listeners: { listeners: {
stdout: (data) => { stdout: (data) => {
output += data.toString(); output += data.toString();
} }
} },
env: process.env
}); });
} }
if (resultCode != 0) { if (resultCode != 0) {

View File

@ -1,10 +1,4 @@
{ {
"_args": [
[
"typed-rest-client@1.5.0",
"C:\\dev\\repos\\actions\\setup-dotnet"
]
],
"_from": "typed-rest-client@1.5.0", "_from": "typed-rest-client@1.5.0",
"_id": "typed-rest-client@1.5.0", "_id": "typed-rest-client@1.5.0",
"_inBundle": false, "_inBundle": false,
@ -22,22 +16,26 @@
"fetchSpec": "1.5.0" "fetchSpec": "1.5.0"
}, },
"_requiredBy": [ "_requiredBy": [
"#USER",
"/", "/",
"/@actions/tool-cache" "/@actions/tool-cache"
], ],
"_resolved": "https://registry.npmjs.org/typed-rest-client/-/typed-rest-client-1.5.0.tgz", "_resolved": "https://registry.npmjs.org/typed-rest-client/-/typed-rest-client-1.5.0.tgz",
"_spec": "1.5.0", "_shasum": "c0dda6e775b942fd46a2d99f2160a94953206fc2",
"_where": "C:\\dev\\repos\\actions\\setup-dotnet", "_spec": "typed-rest-client@1.5.0",
"_where": "/Users/zacharyeisinger/Documents/repo/setup-dotnet",
"author": { "author": {
"name": "Microsoft Corporation" "name": "Microsoft Corporation"
}, },
"bugs": { "bugs": {
"url": "https://github.com/Microsoft/typed-rest-client/issues" "url": "https://github.com/Microsoft/typed-rest-client/issues"
}, },
"bundleDependencies": false,
"dependencies": { "dependencies": {
"tunnel": "0.0.4", "tunnel": "0.0.4",
"underscore": "1.8.3" "underscore": "1.8.3"
}, },
"deprecated": false,
"description": "Node Rest and Http Clients for use with TypeScript", "description": "Node Rest and Http Clients for use with TypeScript",
"devDependencies": { "devDependencies": {
"@types/mocha": "^2.2.44", "@types/mocha": "^2.2.44",

View File

@ -30,7 +30,6 @@
"@actions/tool-cache": "^1.1.2", "@actions/tool-cache": "^1.1.2",
"fast-xml-parser": "^3.15.1", "fast-xml-parser": "^3.15.1",
"semver": "^6.3.0", "semver": "^6.3.0",
"typed-rest-client": "1.5.0",
"xmlbuilder": "^13.0.2" "xmlbuilder": "^13.0.2"
}, },
"devDependencies": { "devDependencies": {
@ -43,6 +42,7 @@
"wget-improved": "^3.0.2", "wget-improved": "^3.0.2",
"prettier": "^1.17.1", "prettier": "^1.17.1",
"ts-jest": "^24.0.2", "ts-jest": "^24.0.2",
"typed-rest-client": "^1.5.0",
"typescript": "^3.5.1" "typescript": "^3.5.1"
}, },
"husky": { "husky": {

View File

@ -32,6 +32,7 @@ export class DotnetCoreInstaller {
command += ` -jsonfile ${this.jsonfile}`; command += ` -jsonfile ${this.jsonfile}`;
} }
// process.env must be explicitly passed in for DOTNET_INSTALL_DIR to be used
const powershellPath = await io.which('powershell', true); const powershellPath = await io.which('powershell', true);
resultCode = await exec.exec( resultCode = await exec.exec(
`"${powershellPath}"`, `"${powershellPath}"`,
@ -50,7 +51,8 @@ export class DotnetCoreInstaller {
stdout: (data: Buffer) => { stdout: (data: Buffer) => {
output += data.toString(); output += data.toString();
} }
} },
env: process.env
} }
); );
} else { } else {
@ -69,12 +71,14 @@ export class DotnetCoreInstaller {
scriptArguments.concat(['--jsonfile', this.jsonfile]); scriptArguments.concat(['--jsonfile', this.jsonfile]);
} }
// process.env must be explicitly passed in for DOTNET_INSTALL_DIR to be used
resultCode = await exec.exec(`"${scriptPath}"`, scriptArguments, { resultCode = await exec.exec(`"${scriptPath}"`, scriptArguments, {
listeners: { listeners: {
stdout: (data: Buffer) => { stdout: (data: Buffer) => {
output += data.toString(); output += data.toString();
} }
} },
env: process.env
}); });
} }

View File

@ -33,7 +33,7 @@ export async function run() {
if (sourceUrl) { if (sourceUrl) {
auth.configAuthentication(sourceUrl, configFile); auth.configAuthentication(sourceUrl, configFile);
} }
// TODO: setup proxy from runner proxy config // TODO: setup proxy from runner proxy config
const matchersPath = path.join(__dirname, '..', '.github'); const matchersPath = path.join(__dirname, '..', '.github');
@ -44,5 +44,3 @@ export async function run() {
} }
run(); run();