diff --git a/src/index.ts b/src/index.ts index 20f156b9..45241fbd 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,12 +1,17 @@ +import { group, notice, setFailed } from '@actions/core'; import { Input } from './input'; import { Renovate } from './renovate'; -import { setFailed } from '@actions/core'; async function run(): Promise { try { const input = new Input(); const renovate = new Renovate(input); + await group('Check Renovate version', async () => { + const version = await renovate.runDockerContainerForVersion(); + notice(version, { title: 'Renovate CLI version' }); + }); + await renovate.runDockerContainer(); } catch (error) { console.error(error); diff --git a/src/renovate.ts b/src/renovate.ts index 09c1b2c5..419ce53d 100644 --- a/src/renovate.ts +++ b/src/renovate.ts @@ -1,6 +1,6 @@ +import { exec, getExecOutput } from '@actions/exec'; import { Docker } from './docker'; import { Input } from './input'; -import { exec } from '@actions/exec'; import fs from 'node:fs/promises'; import path from 'node:path'; @@ -14,6 +14,17 @@ export class Renovate { this.docker = new Docker(input); } + async runDockerContainerForVersion(): Promise { + const command = `docker run -t --rm ${this.docker.image()} --version`; + + const { exitCode, stdout } = await getExecOutput(command); + if (exitCode !== 0) { + new Error(`'docker run' failed with exit code ${exitCode}.`); + } + + return stdout.trim(); + } + async runDockerContainer(): Promise { await this.validateArguments();