| | import coreLib from '@actions/core' |
| |
|
| | const timeInstances = new Map() |
| |
|
| | |
| | export function debugTimeStart(core: typeof coreLib, instanceName: string) { |
| | if (timeInstances.has(instanceName)) { |
| | core.warning(`instanceName: ${instanceName} has already been used for a debug instance.`) |
| | return |
| | } |
| |
|
| | timeInstances.set(instanceName, new Date()) |
| | } |
| |
|
| | |
| | export function debugTimeEnd(core: typeof coreLib, instanceName: string) { |
| | if (!timeInstances.has(instanceName)) { |
| | core.warning( |
| | `Invalid instanceName: ${instanceName} in debugTimeEnd. Did you call debugTimeStart first with the same instanceName?`, |
| | ) |
| | return |
| | } |
| | const startTime = timeInstances.get(instanceName) |
| | const ms = new Date().getTime() - startTime.getTime() |
| | const seconds = ms / 1000 |
| | const minutes = seconds / 60 |
| | let display = `${ms.toFixed(1)} ms` |
| | if (minutes > 1) { |
| | display = `${minutes.toFixed(1)} minutes` |
| | } else if (seconds > 1) { |
| | display = `${seconds.toFixed(1)} seconds` |
| | } |
| | core.debug(`Completed ${instanceName} in ${display}`) |
| | } |
| |
|