mirror of
				https://kkgithub.com/actions/setup-node.git
				synced 2025-11-01 03:01:53 +08:00 
			
		
		
		
	Compare commits
	
		
			24 Commits
		
	
	
		
			v1.4.1
			...
			servicing/
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| f1f314fca9 | |||
| 108628bcbd | |||
| eb416799cf | |||
| 5f10e344c2 | |||
| 40e244d750 | |||
| c8711b5525 | |||
| d5ae932ee7 | |||
| 56899e050a | |||
| 4bb8c45053 | |||
| a251a519bf | |||
| 44c9c18728 | |||
| e715d9a456 | |||
| b1f2e78536 | |||
| 55897e37f3 | |||
| 46903d1fb1 | |||
| 28505ad4d3 | |||
| 2d53d29868 | |||
| 1e163ded31 | |||
| ffde538781 | |||
| 339aa41a8d | |||
| 641e88986e | |||
| e99a7e62b2 | |||
| 0dc69b3a71 | |||
| 52eb8a7524 | 
							
								
								
									
										8
									
								
								.github/workflows/workflow.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										8
									
								
								.github/workflows/workflow.yml
									
									
									
									
										vendored
									
									
								
							| @ -28,7 +28,13 @@ jobs: | ||||
|         run: __tests__/verify-no-unstaged-changes.sh | ||||
|  | ||||
|   test: | ||||
|     runs-on: ubuntu-latest | ||||
|     runs-on: ${{ matrix.operating-system }} | ||||
|     strategy: | ||||
|       matrix: | ||||
|         operating-system: [ubuntu-latest, windows-latest] | ||||
|     defaults: | ||||
|       run: | ||||
|         shell: bash | ||||
|     steps: | ||||
|       - uses: actions/checkout@v2 | ||||
|       - name: Clear tool cache | ||||
|  | ||||
							
								
								
									
										76
									
								
								CONDUCT
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										76
									
								
								CONDUCT
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,76 @@ | ||||
| # Contributor Covenant Code of Conduct | ||||
|  | ||||
| ## Our Pledge | ||||
|  | ||||
| In the interest of fostering an open and welcoming environment, we as | ||||
| contributors and maintainers pledge to make participation in our project and | ||||
| our community a harassment-free experience for everyone, regardless of age, body | ||||
| size, disability, ethnicity, sex characteristics, gender identity and expression, | ||||
| level of experience, education, socio-economic status, nationality, personal | ||||
| appearance, race, religion, or sexual identity and orientation. | ||||
|  | ||||
| ## Our Standards | ||||
|  | ||||
| Examples of behavior that contributes to creating a positive environment | ||||
| include: | ||||
|  | ||||
| * Using welcoming and inclusive language | ||||
| * Being respectful of differing viewpoints and experiences | ||||
| * Gracefully accepting constructive criticism | ||||
| * Focusing on what is best for the community | ||||
| * Showing empathy towards other community members | ||||
|  | ||||
| Examples of unacceptable behavior by participants include: | ||||
|  | ||||
| * The use of sexualized language or imagery and unwelcome sexual attention or | ||||
|   advances | ||||
| * Trolling, insulting/derogatory comments, and personal or political attacks | ||||
| * Public or private harassment | ||||
| * Publishing others' private information, such as a physical or electronic | ||||
|   address, without explicit permission | ||||
| * Other conduct which could reasonably be considered inappropriate in a | ||||
|   professional setting | ||||
|  | ||||
| ## Our Responsibilities | ||||
|  | ||||
| Project maintainers are responsible for clarifying the standards of acceptable | ||||
| behavior and are expected to take appropriate and fair corrective action in | ||||
| response to any instances of unacceptable behavior. | ||||
|  | ||||
| Project maintainers have the right and responsibility to remove, edit, or | ||||
| reject comments, commits, code, wiki edits, issues, and other contributions | ||||
| that are not aligned to this Code of Conduct, or to ban temporarily or | ||||
| permanently any contributor for other behaviors that they deem inappropriate, | ||||
| threatening, offensive, or harmful. | ||||
|  | ||||
| ## Scope | ||||
|  | ||||
| This Code of Conduct applies within all project spaces, and it also applies when | ||||
| an individual is representing the project or its community in public spaces. | ||||
| Examples of representing a project or community include using an official | ||||
| project e-mail address, posting via an official social media account, or acting | ||||
| as an appointed representative at an online or offline event. Representation of | ||||
| a project may be further defined and clarified by project maintainers. | ||||
|  | ||||
| ## Enforcement | ||||
|  | ||||
| Instances of abusive, harassing, or otherwise unacceptable behavior may be | ||||
| reported by contacting the project team at opensource@github.com. All | ||||
| complaints will be reviewed and investigated and will result in a response that | ||||
| is deemed necessary and appropriate to the circumstances. The project team is | ||||
| obligated to maintain confidentiality with regard to the reporter of an incident. | ||||
| Further details of specific enforcement policies may be posted separately. | ||||
|  | ||||
| Project maintainers who do not follow or enforce the Code of Conduct in good | ||||
| faith may face temporary or permanent repercussions as determined by other | ||||
| members of the project's leadership. | ||||
|  | ||||
| ## Attribution | ||||
|  | ||||
| This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, | ||||
| available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html | ||||
|  | ||||
| [homepage]: https://www.contributor-covenant.org | ||||
|  | ||||
| For answers to common questions about this code of conduct, see | ||||
| https://www.contributor-covenant.org/faq | ||||
| @ -1,4 +1,4 @@ | ||||
| # setup-node | ||||
| # setup-node servicing v1 | ||||
|  | ||||
| <p align="left"> | ||||
|   <a href="https://github.com/actions/setup-node"><img alt="GitHub Actions status" src="https://github.com/actions/setup-node/workflows/Main%20workflow/badge.svg"></a> | ||||
| @ -108,3 +108,7 @@ The scripts and documentation in this project are released under the [MIT Licens | ||||
| # Contributions | ||||
|  | ||||
| Contributions are welcome!  See [Contributor's Guide](docs/contributors.md) | ||||
|  | ||||
| ## Code of Conduct | ||||
|  | ||||
| :wave: Be nice.  See [our code of conduct](CONDUCT) | ||||
|  | ||||
							
								
								
									
										130
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										130
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							| @ -2883,6 +2883,32 @@ const windowsRelease = release => { | ||||
| module.exports = windowsRelease; | ||||
|  | ||||
|  | ||||
| /***/ }), | ||||
|  | ||||
| /***/ 82: | ||||
| /***/ (function(__unusedmodule, exports) { | ||||
|  | ||||
| "use strict"; | ||||
|  | ||||
| // We use any as a valid input type | ||||
| /* eslint-disable @typescript-eslint/no-explicit-any */ | ||||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||||
| /** | ||||
|  * Sanitizes an input into a string so it can be passed into issueCommand safely | ||||
|  * @param input input to sanitize into a string | ||||
|  */ | ||||
| function toCommandValue(input) { | ||||
|     if (input === null || input === undefined) { | ||||
|         return ''; | ||||
|     } | ||||
|     else if (typeof input === 'string' || input instanceof String) { | ||||
|         return input; | ||||
|     } | ||||
|     return JSON.stringify(input); | ||||
| } | ||||
| exports.toCommandValue = toCommandValue; | ||||
| //# sourceMappingURL=utils.js.map | ||||
|  | ||||
| /***/ }), | ||||
|  | ||||
| /***/ 87: | ||||
| @ -2892,6 +2918,42 @@ module.exports = require("os"); | ||||
|  | ||||
| /***/ }), | ||||
|  | ||||
| /***/ 102: | ||||
| /***/ (function(__unusedmodule, exports, __webpack_require__) { | ||||
|  | ||||
| "use strict"; | ||||
|  | ||||
| // For internal use, subject to change. | ||||
| var __importStar = (this && this.__importStar) || function (mod) { | ||||
|     if (mod && mod.__esModule) return mod; | ||||
|     var result = {}; | ||||
|     if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; | ||||
|     result["default"] = mod; | ||||
|     return result; | ||||
| }; | ||||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||||
| // We use any as a valid input type | ||||
| /* eslint-disable @typescript-eslint/no-explicit-any */ | ||||
| const fs = __importStar(__webpack_require__(747)); | ||||
| const os = __importStar(__webpack_require__(87)); | ||||
| const utils_1 = __webpack_require__(82); | ||||
| function issueCommand(command, message) { | ||||
|     const filePath = process.env[`GITHUB_${command}`]; | ||||
|     if (!filePath) { | ||||
|         throw new Error(`Unable to find environment variable for file command ${command}`); | ||||
|     } | ||||
|     if (!fs.existsSync(filePath)) { | ||||
|         throw new Error(`Missing file at path: ${filePath}`); | ||||
|     } | ||||
|     fs.appendFileSync(filePath, `${utils_1.toCommandValue(message)}${os.EOL}`, { | ||||
|         encoding: 'utf8' | ||||
|     }); | ||||
| } | ||||
| exports.issueCommand = issueCommand; | ||||
| //# sourceMappingURL=file-command.js.map | ||||
|  | ||||
| /***/ }), | ||||
|  | ||||
| /***/ 118: | ||||
| /***/ (function(module, __unusedexports, __webpack_require__) { | ||||
|  | ||||
| @ -7596,6 +7658,7 @@ var __importStar = (this && this.__importStar) || function (mod) { | ||||
| }; | ||||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||||
| const os = __importStar(__webpack_require__(87)); | ||||
| const utils_1 = __webpack_require__(82); | ||||
| /** | ||||
|  * Commands | ||||
|  * | ||||
| @ -7650,13 +7713,13 @@ class Command { | ||||
|     } | ||||
| } | ||||
| function escapeData(s) { | ||||
|     return (s || '') | ||||
|     return utils_1.toCommandValue(s) | ||||
|         .replace(/%/g, '%25') | ||||
|         .replace(/\r/g, '%0D') | ||||
|         .replace(/\n/g, '%0A'); | ||||
| } | ||||
| function escapeProperty(s) { | ||||
|     return (s || '') | ||||
|     return utils_1.toCommandValue(s) | ||||
|         .replace(/%/g, '%25') | ||||
|         .replace(/\r/g, '%0D') | ||||
|         .replace(/\n/g, '%0A') | ||||
| @ -9581,6 +9644,8 @@ var __importStar = (this && this.__importStar) || function (mod) { | ||||
| }; | ||||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||||
| const command_1 = __webpack_require__(431); | ||||
| const file_command_1 = __webpack_require__(102); | ||||
| const utils_1 = __webpack_require__(82); | ||||
| const os = __importStar(__webpack_require__(87)); | ||||
| const path = __importStar(__webpack_require__(622)); | ||||
| /** | ||||
| @ -9603,11 +9668,21 @@ var ExitCode; | ||||
| /** | ||||
|  * Sets env variable for this action and future actions in the job | ||||
|  * @param name the name of the variable to set | ||||
|  * @param val the value of the variable | ||||
|  * @param val the value of the variable. Non-string values will be converted to a string via JSON.stringify | ||||
|  */ | ||||
| // eslint-disable-next-line @typescript-eslint/no-explicit-any | ||||
| function exportVariable(name, val) { | ||||
|     process.env[name] = val; | ||||
|     command_1.issueCommand('set-env', { name }, val); | ||||
|     const convertedVal = utils_1.toCommandValue(val); | ||||
|     process.env[name] = convertedVal; | ||||
|     const filePath = process.env['GITHUB_ENV'] || ''; | ||||
|     if (filePath) { | ||||
|         const delimiter = '_GitHubActionsFileCommandDelimeter_'; | ||||
|         const commandValue = `${name}<<${delimiter}${os.EOL}${convertedVal}${os.EOL}${delimiter}`; | ||||
|         file_command_1.issueCommand('ENV', commandValue); | ||||
|     } | ||||
|     else { | ||||
|         command_1.issueCommand('set-env', { name }, convertedVal); | ||||
|     } | ||||
| } | ||||
| exports.exportVariable = exportVariable; | ||||
| /** | ||||
| @ -9623,7 +9698,13 @@ exports.setSecret = setSecret; | ||||
|  * @param inputPath | ||||
|  */ | ||||
| function addPath(inputPath) { | ||||
|     command_1.issueCommand('add-path', {}, inputPath); | ||||
|     const filePath = process.env['GITHUB_PATH'] || ''; | ||||
|     if (filePath) { | ||||
|         file_command_1.issueCommand('PATH', inputPath); | ||||
|     } | ||||
|     else { | ||||
|         command_1.issueCommand('add-path', {}, inputPath); | ||||
|     } | ||||
|     process.env['PATH'] = `${inputPath}${path.delimiter}${process.env['PATH']}`; | ||||
| } | ||||
| exports.addPath = addPath; | ||||
| @ -9646,12 +9727,22 @@ exports.getInput = getInput; | ||||
|  * Sets the value of an output. | ||||
|  * | ||||
|  * @param     name     name of the output to set | ||||
|  * @param     value    value to store | ||||
|  * @param     value    value to store. Non-string values will be converted to a string via JSON.stringify | ||||
|  */ | ||||
| // eslint-disable-next-line @typescript-eslint/no-explicit-any | ||||
| function setOutput(name, value) { | ||||
|     command_1.issueCommand('set-output', { name }, value); | ||||
| } | ||||
| exports.setOutput = setOutput; | ||||
| /** | ||||
|  * Enables or disables the echoing of commands into stdout for the rest of the step. | ||||
|  * Echoing is disabled by default if ACTIONS_STEP_DEBUG is not set. | ||||
|  * | ||||
|  */ | ||||
| function setCommandEcho(enabled) { | ||||
|     command_1.issue('echo', enabled ? 'on' : 'off'); | ||||
| } | ||||
| exports.setCommandEcho = setCommandEcho; | ||||
| //----------------------------------------------------------------------- | ||||
| // Results | ||||
| //----------------------------------------------------------------------- | ||||
| @ -9668,6 +9759,13 @@ exports.setFailed = setFailed; | ||||
| //----------------------------------------------------------------------- | ||||
| // Logging Commands | ||||
| //----------------------------------------------------------------------- | ||||
| /** | ||||
|  * Gets whether Actions Step Debug is on or not | ||||
|  */ | ||||
| function isDebug() { | ||||
|     return process.env['RUNNER_DEBUG'] === '1'; | ||||
| } | ||||
| exports.isDebug = isDebug; | ||||
| /** | ||||
|  * Writes debug message to user log | ||||
|  * @param message debug message | ||||
| @ -9678,18 +9776,18 @@ function debug(message) { | ||||
| exports.debug = debug; | ||||
| /** | ||||
|  * Adds an error issue | ||||
|  * @param message error issue message | ||||
|  * @param message error issue message. Errors will be converted to string via toString() | ||||
|  */ | ||||
| function error(message) { | ||||
|     command_1.issue('error', message); | ||||
|     command_1.issue('error', message instanceof Error ? message.toString() : message); | ||||
| } | ||||
| exports.error = error; | ||||
| /** | ||||
|  * Adds an warning issue | ||||
|  * @param message warning issue message | ||||
|  * @param message warning issue message. Errors will be converted to string via toString() | ||||
|  */ | ||||
| function warning(message) { | ||||
|     command_1.issue('warning', message); | ||||
|     command_1.issue('warning', message instanceof Error ? message.toString() : message); | ||||
| } | ||||
| exports.warning = warning; | ||||
| /** | ||||
| @ -9747,8 +9845,9 @@ exports.group = group; | ||||
|  * Saves state for current action, the state can only be retrieved by this action's post job execution. | ||||
|  * | ||||
|  * @param     name     name of the state to store | ||||
|  * @param     value    value to store | ||||
|  * @param     value    value to store. Non-string values will be converted to a string via JSON.stringify | ||||
|  */ | ||||
| // eslint-disable-next-line @typescript-eslint/no-explicit-any | ||||
| function saveState(name, value) { | ||||
|     command_1.issueCommand('save-state', { name }, value); | ||||
| } | ||||
| @ -15201,6 +15300,7 @@ var __importStar = (this && this.__importStar) || function (mod) { | ||||
| }; | ||||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||||
| const core = __importStar(__webpack_require__(470)); | ||||
| const exec = __importStar(__webpack_require__(986)); | ||||
| const installer = __importStar(__webpack_require__(749)); | ||||
| const auth = __importStar(__webpack_require__(202)); | ||||
| const path = __importStar(__webpack_require__(622)); | ||||
| @ -15218,6 +15318,12 @@ function run() { | ||||
|             if (version) { | ||||
|                 yield installer.getNode(version); | ||||
|             } | ||||
|             // Output version of node and npm that are being used | ||||
|             yield exec.exec('node', ['--version']); | ||||
|             // Older versions of Node don't include npm, so don't let this call fail | ||||
|             yield exec.exec('npm', ['--version'], { | ||||
|                 ignoreReturnCode: true | ||||
|             }); | ||||
|             const registryUrl = core.getInput('registry-url'); | ||||
|             const alwaysAuth = core.getInput('always-auth'); | ||||
|             if (registryUrl) { | ||||
|  | ||||
							
								
								
									
										1278
									
								
								dist/licenses.txt
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1278
									
								
								dist/licenses.txt
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										6
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										6
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @ -5,9 +5,9 @@ | ||||
|   "requires": true, | ||||
|   "dependencies": { | ||||
|     "@actions/core": { | ||||
|       "version": "1.2.2", | ||||
|       "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.2.2.tgz", | ||||
|       "integrity": "sha512-IbCx7oefq+Gi6FWbSs2Fnw8VkEI6Y4gvjrYprY3RV//ksq/KPMlClOerJ4jRosyal6zkUIc8R9fS/cpRMlGClg==" | ||||
|       "version": "1.2.6", | ||||
|       "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.2.6.tgz", | ||||
|       "integrity": "sha512-ZQYitnqiyBc3D+k7LsgSBmMDVkOVidaagDG7j3fOym77jNunWRuYx7VSHa9GNfFZh+zh61xsCjRj4JxMZlDqTA==" | ||||
|     }, | ||||
|     "@actions/exec": { | ||||
|       "version": "1.0.3", | ||||
|  | ||||
| @ -23,7 +23,8 @@ | ||||
|   "author": "GitHub", | ||||
|   "license": "MIT", | ||||
|   "dependencies": { | ||||
|     "@actions/core": "^1.2.2", | ||||
|     "@actions/core": "^1.2.6", | ||||
|     "@actions/exec": "^1.0.3", | ||||
|     "@actions/github": "^1.1.0", | ||||
|     "@actions/http-client": "^1.0.6", | ||||
|     "@actions/io": "^1.0.2", | ||||
|  | ||||
| @ -1,4 +1,6 @@ | ||||
| import * as core from '@actions/core'; | ||||
| import * as exec from '@actions/exec'; | ||||
| import * as io from '@actions/io'; | ||||
| import * as installer from './installer'; | ||||
| import * as auth from './authutil'; | ||||
| import * as path from 'path'; | ||||
| @ -17,6 +19,14 @@ async function run() { | ||||
|       await installer.getNode(version); | ||||
|     } | ||||
|  | ||||
|     // Output version of node and npm that are being used | ||||
|     await exec.exec('node', ['--version']); | ||||
|  | ||||
|     // Older versions of Node don't include npm, so don't let this call fail | ||||
|     await exec.exec('npm', ['--version'], { | ||||
|       ignoreReturnCode: true | ||||
|     }); | ||||
|  | ||||
|     const registryUrl: string = core.getInput('registry-url'); | ||||
|     const alwaysAuth: string = core.getInput('always-auth'); | ||||
|     if (registryUrl) { | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	