mirror of
				https://github.com/actions/setup-java.git
				synced 2025-11-04 00:44:20 +00:00 
			
		
		
		
	created separate util module
This commit is contained in:
		
							parent
							
								
									1ecbe18c8b
								
							
						
					
					
						commit
						5e3159d960
					
				@ -17,18 +17,19 @@ jest.mock('@actions/exec', () => {
 | 
			
		||||
  };
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
const tempDir = path.join(__dirname, 'runner', 'temp');
 | 
			
		||||
process.env['RUNNER_TEMP'] = tempDir;
 | 
			
		||||
 | 
			
		||||
import * as auth from '../src/auth';
 | 
			
		||||
 | 
			
		||||
const m2Dir = path.join(__dirname, auth.M2_DIR);
 | 
			
		||||
const settingsFile = path.join(m2Dir, auth.SETTINGS_FILE);
 | 
			
		||||
const tempDir = path.join(__dirname, 'runner', 'temp');
 | 
			
		||||
const privateKeyFile = path.join(tempDir, auth.PRIVATE_KEY_FILE);
 | 
			
		||||
 | 
			
		||||
process.env['RUNNER_TEMP'] = tempDir;
 | 
			
		||||
 | 
			
		||||
describe('auth tests', () => {
 | 
			
		||||
  beforeEach(async () => {
 | 
			
		||||
    await io.rmRF(m2Dir);
 | 
			
		||||
    await io.mkdirP(tempDir);
 | 
			
		||||
  }, 300000);
 | 
			
		||||
 | 
			
		||||
  afterAll(async () => {
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										56
									
								
								__tests__/util.test.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								__tests__/util.test.ts
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,56 @@
 | 
			
		||||
import path = require('path');
 | 
			
		||||
 | 
			
		||||
const env = process.env;
 | 
			
		||||
 | 
			
		||||
describe('util tests', () => {
 | 
			
		||||
  beforeEach(() => {
 | 
			
		||||
    process.env = Object.assign({}, env);
 | 
			
		||||
    Object.defineProperty(process, 'platform', {value: 'linux'});
 | 
			
		||||
  });
 | 
			
		||||
 | 
			
		||||
  describe('getTempDir', () => {
 | 
			
		||||
    it('gets temp dir using env', () => {
 | 
			
		||||
      process.env['RUNNER_TEMP'] = 'defaulttmp'
 | 
			
		||||
      const util = require('../src/util');
 | 
			
		||||
 | 
			
		||||
      const tempDir = util.getTempDir();
 | 
			
		||||
 | 
			
		||||
      expect(tempDir).toEqual(process.env['RUNNER_TEMP']);
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    it('gets temp dir for windows using userprofile', () => {
 | 
			
		||||
      Object.defineProperty(process, 'platform', {value: 'win32'});
 | 
			
		||||
      process.env['USERPROFILE'] = 'winusertmp';
 | 
			
		||||
      const util = require('../src/util');
 | 
			
		||||
 | 
			
		||||
      const tempDir = util.getTempDir();
 | 
			
		||||
 | 
			
		||||
      expect(tempDir).toEqual(path.join(process.env['USERPROFILE'], 'actions', 'temp'));
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    it('gets temp dir for windows using c drive', () => {
 | 
			
		||||
      Object.defineProperty(process, 'platform', {value: 'win32'});
 | 
			
		||||
      const util = require('../src/util');
 | 
			
		||||
 | 
			
		||||
      const tempDir = util.getTempDir();
 | 
			
		||||
 | 
			
		||||
      expect(tempDir).toEqual(path.join('C:\\', 'actions', 'temp'));
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    it('gets temp dir for mac', () => {
 | 
			
		||||
      Object.defineProperty(process, 'platform', {value: 'darwin'});
 | 
			
		||||
      const util = require('../src/util');
 | 
			
		||||
 | 
			
		||||
      const tempDir = util.getTempDir();
 | 
			
		||||
 | 
			
		||||
      expect(tempDir).toEqual(path.join('/Users', 'actions', 'temp'));
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    it('gets temp dir for linux', () => {
 | 
			
		||||
      const util = require('../src/util');
 | 
			
		||||
      const tempDir = util.getTempDir();
 | 
			
		||||
 | 
			
		||||
      expect(tempDir).toEqual(path.join('/home', 'actions', 'temp'));
 | 
			
		||||
    });
 | 
			
		||||
  });
 | 
			
		||||
});
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								dist/index.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								dist/index.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											Binary file not shown.
										
									
								
							@ -4,9 +4,10 @@ import * as path from 'path';
 | 
			
		||||
import * as core from '@actions/core';
 | 
			
		||||
import * as io from '@actions/io';
 | 
			
		||||
import * as exec from '@actions/exec';
 | 
			
		||||
import * as util from './util';
 | 
			
		||||
 | 
			
		||||
export const M2_DIR = '.m2';
 | 
			
		||||
export const TEMP_DIR = process.env['RUNNER_TEMP'] || '';
 | 
			
		||||
export const TEMP_DIR = util.getTempDir();
 | 
			
		||||
export const SETTINGS_FILE = 'settings.xml';
 | 
			
		||||
export const PRIVATE_KEY_FILE = 'private-key.asc';
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,3 @@
 | 
			
		||||
let tempDirectory = process.env['RUNNER_TEMP'] || '';
 | 
			
		||||
 | 
			
		||||
import * as core from '@actions/core';
 | 
			
		||||
import * as io from '@actions/io';
 | 
			
		||||
import * as exec from '@actions/exec';
 | 
			
		||||
@ -8,23 +6,10 @@ import * as tc from '@actions/tool-cache';
 | 
			
		||||
import * as fs from 'fs';
 | 
			
		||||
import * as path from 'path';
 | 
			
		||||
import * as semver from 'semver';
 | 
			
		||||
import * as util from './util';
 | 
			
		||||
 | 
			
		||||
const IS_WINDOWS = process.platform === 'win32';
 | 
			
		||||
 | 
			
		||||
if (!tempDirectory) {
 | 
			
		||||
  let baseLocation;
 | 
			
		||||
  if (IS_WINDOWS) {
 | 
			
		||||
    // On windows use the USERPROFILE env variable
 | 
			
		||||
    baseLocation = process.env['USERPROFILE'] || 'C:\\';
 | 
			
		||||
  } else {
 | 
			
		||||
    if (process.platform === 'darwin') {
 | 
			
		||||
      baseLocation = '/Users';
 | 
			
		||||
    } else {
 | 
			
		||||
      baseLocation = '/home';
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  tempDirectory = path.join(baseLocation, 'actions', 'temp');
 | 
			
		||||
}
 | 
			
		||||
const tempDirectory = util.getTempDir();
 | 
			
		||||
const IS_WINDOWS = util.isWindows();
 | 
			
		||||
 | 
			
		||||
export async function getJava(
 | 
			
		||||
  version: string,
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										24
									
								
								src/util.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								src/util.ts
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,24 @@
 | 
			
		||||
import * as path from 'path';
 | 
			
		||||
 | 
			
		||||
export function getTempDir() {
 | 
			
		||||
  let tempDirectory = process.env.RUNNER_TEMP;
 | 
			
		||||
  if (tempDirectory === undefined) {
 | 
			
		||||
    let baseLocation;
 | 
			
		||||
    if (isWindows()) {
 | 
			
		||||
      // On windows use the USERPROFILE env variable
 | 
			
		||||
      baseLocation = (process.env['USERPROFILE']) ? process.env['USERPROFILE'] : 'C:\\';
 | 
			
		||||
    } else {
 | 
			
		||||
      if (process.platform === 'darwin') {
 | 
			
		||||
        baseLocation = '/Users';
 | 
			
		||||
      } else {
 | 
			
		||||
        baseLocation = '/home';
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
    tempDirectory = path.join(baseLocation, 'actions', 'temp');
 | 
			
		||||
  }
 | 
			
		||||
  return tempDirectory;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function isWindows() {
 | 
			
		||||
  return (process.platform === 'win32');
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user