| 
									
										
										
										
											2019-11-06 13:41:45 -05:00
										 |  |  | import { Inputs } from "../constants"; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // See: https://github.com/actions/toolkit/blob/master/packages/core/src/core.ts#L67
 | 
					
						
							| 
									
										
										
										
											2019-10-30 14:48:49 -04:00
										 |  |  | function getInputName(name: string): string { | 
					
						
							|  |  |  |     return `INPUT_${name.replace(/ /g, "_").toUpperCase()}`; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export function setInput(name: string, value: string) { | 
					
						
							|  |  |  |     process.env[getInputName(name)] = value; | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2019-11-06 13:41:45 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | interface CacheInput { | 
					
						
							|  |  |  |     path: string; | 
					
						
							|  |  |  |     key: string; | 
					
						
							|  |  |  |     restoreKeys?: string[]; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export function setInputs(input: CacheInput) { | 
					
						
							|  |  |  |     setInput(Inputs.Path, input.path); | 
					
						
							|  |  |  |     setInput(Inputs.Key, input.key); | 
					
						
							|  |  |  |     input.restoreKeys && | 
					
						
							|  |  |  |         setInput(Inputs.RestoreKeys, input.restoreKeys.join("\n")); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export function clearInputs() { | 
					
						
							|  |  |  |     delete process.env[getInputName(Inputs.Path)]; | 
					
						
							|  |  |  |     delete process.env[getInputName(Inputs.Key)]; | 
					
						
							|  |  |  |     delete process.env[getInputName(Inputs.RestoreKeys)]; | 
					
						
							|  |  |  | } |