github-pages-deploy-action/src/execute.ts

29 lines
742 B
TypeScript
Raw Normal View History

2020-03-05 21:19:45 +08:00
import {exec} from '@actions/exec'
2020-01-12 09:26:08 +08:00
2020-03-05 21:19:45 +08:00
let output: string
2020-01-12 09:26:08 +08:00
/** Wrapper around the GitHub toolkit exec command which returns the output.
* Also allows you to easily toggle the current working directory.
* @param cmd = The command to execute.
* @param cwd - The current working directory.
* @returns - The output from the command.
2020-01-12 09:26:08 +08:00
*/
export async function execute(cmd: string, cwd: string): Promise<any> {
2020-03-05 21:19:45 +08:00
output = ''
2020-01-12 09:26:08 +08:00
await exec(cmd, [], {
// Silences the input unless the INPUT_DEBUG flag is set.
silent: process.env.DEBUG_DEPLOY_ACTION ? false : true,
2020-01-12 09:26:08 +08:00
cwd,
listeners: {
stdout
2020-01-12 09:26:08 +08:00
}
2020-03-05 21:19:45 +08:00
})
2020-01-12 09:26:08 +08:00
2020-03-05 21:19:45 +08:00
return Promise.resolve(output)
2020-01-12 09:26:08 +08:00
}
2020-03-07 11:36:56 +08:00
export function stdout(data: any): string | void {
2020-03-05 21:19:45 +08:00
output += data.toString().trim()
}