mirror of
				https://github.com/actions/cache.git
				synced 2025-11-01 04:28:39 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			42 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import { Inputs } from "../constants";
 | |
| 
 | |
| // See: https://github.com/actions/toolkit/blob/master/packages/core/src/core.ts#L67
 | |
| function getInputName(name: string): string {
 | |
|     return `INPUT_${name.replace(/ /g, "_").toUpperCase()}`;
 | |
| }
 | |
| 
 | |
| export function setInput(name: string, value: string): void {
 | |
|     process.env[getInputName(name)] = value;
 | |
| }
 | |
| 
 | |
| interface CacheInput {
 | |
|     path: string;
 | |
|     key: string;
 | |
|     restoreKeys?: string[];
 | |
|     enableCrossOsArchive?: boolean;
 | |
|     dryRun?: string;
 | |
| }
 | |
| 
 | |
| export function setInputs(input: CacheInput): void {
 | |
|     setInput(Inputs.Path, input.path);
 | |
|     setInput(Inputs.Key, input.key);
 | |
|     setInput(Inputs.DryRun, "false");
 | |
|     input.restoreKeys &&
 | |
|         setInput(Inputs.RestoreKeys, input.restoreKeys.join("\n"));
 | |
|     input.enableCrossOsArchive !== undefined &&
 | |
|         setInput(
 | |
|             Inputs.EnableCrossOsArchive,
 | |
|             input.enableCrossOsArchive.toString()
 | |
|         );
 | |
|     input.dryRun && setInput(Inputs.DryRun, input.dryRun);
 | |
| }
 | |
| 
 | |
| export function clearInputs(): void {
 | |
|     delete process.env[getInputName(Inputs.Path)];
 | |
|     delete process.env[getInputName(Inputs.Key)];
 | |
|     delete process.env[getInputName(Inputs.RestoreKeys)];
 | |
|     delete process.env[getInputName(Inputs.DryRun)];
 | |
|     delete process.env[getInputName(Inputs.UploadChunkSize)];
 | |
|     delete process.env[getInputName(Inputs.EnableCrossOsArchive)];
 | |
| }
 | 
