diff --git a/package.json b/package.json index 9f7ec75..9e851de 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "typescript-action", "description": "Givve Automatic Deployment", - "version": "v0.0.4", + "version": "v0.0.5", "author": "PL Gutscheinsysteme GmbH", "private": true, "homepage": "https://github.com/actions/typescript-action", diff --git a/src/index.mts b/src/index.mts new file mode 100644 index 0000000..992d8b4 --- /dev/null +++ b/src/index.mts @@ -0,0 +1,7 @@ +/** + * The entrypoint for the action. + */ +import { run } from './main.mjs' + +// eslint-disable-next-line @typescript-eslint/no-floating-promises +run() diff --git a/src/main.mts b/src/main.mts new file mode 100644 index 0000000..b667a1c --- /dev/null +++ b/src/main.mts @@ -0,0 +1,32 @@ +import * as core from '@actions/core' +import { wait } from './wait.mjs' +import { createActionAuth } from '@octokit/auth-action' + +/** + * The main function for the action. + * @returns {Promise} Resolves when the action is complete. + */ +export async function run(): Promise { + try { + const commit: string = core.getInput('commit') + + // Debug logs are only output if the `ACTIONS_STEP_DEBUG` secret is true + core.debug(`${commit} needs to be deployed ...`) + + // Log the current timestamp, wait, then log the new timestamp + core.debug(new Date().toTimeString()) + await wait(10000) + core.debug(new Date().toTimeString()) + + const auth = createActionAuth() + const authentication = await auth() + + console.log(authentication) + + // Set outputs for other workflow steps to use + core.setOutput('time', new Date().toTimeString()) + } catch (error) { + // Fail the workflow run if an error occurs + if (error instanceof Error) core.setFailed(error.message) + } +} diff --git a/src/wait.mts b/src/wait.mts new file mode 100644 index 0000000..0ddf692 --- /dev/null +++ b/src/wait.mts @@ -0,0 +1,14 @@ +/** + * Wait for a number of milliseconds. + * @param milliseconds The number of milliseconds to wait. + * @returns {Promise} Resolves with 'done!' after the wait is over. + */ +export async function wait(milliseconds: number): Promise { + return new Promise(resolve => { + if (isNaN(milliseconds)) { + throw new Error('milliseconds not a number') + } + + setTimeout(() => resolve('done!'), milliseconds) + }) +}