mirror of
https://github.com/docker/setup-docker-action.git
synced 2025-06-18 09:17:12 +02:00
tear down post step
This commit is contained in:
22
src/main.ts
22
src/main.ts
@ -1,17 +1,21 @@
|
||||
import * as context from './context';
|
||||
import os from 'os';
|
||||
import path from 'path';
|
||||
import * as uuid from 'uuid';
|
||||
import * as core from '@actions/core';
|
||||
import * as actionsToolkit from '@docker/actions-toolkit';
|
||||
|
||||
import {Install} from '../../../docker_org/actions/docker-actions-toolkit/lib/docker/install';
|
||||
import {Context} from '../../../docker_org/actions/docker-actions-toolkit/lib/context';
|
||||
import {Docker} from '../../../docker_org/actions/docker-actions-toolkit/lib/docker/docker';
|
||||
|
||||
import * as context from './context';
|
||||
import * as stateHelper from './state-helper';
|
||||
|
||||
actionsToolkit.run(
|
||||
// main
|
||||
async () => {
|
||||
const input: context.Inputs = context.getInputs();
|
||||
const install = new Install();
|
||||
|
||||
const install = new Install();
|
||||
let toolDir;
|
||||
if (!(await Docker.isAvailable()) || input.version) {
|
||||
await core.group(`Download docker`, async () => {
|
||||
@ -19,12 +23,22 @@ actionsToolkit.run(
|
||||
});
|
||||
}
|
||||
if (toolDir) {
|
||||
await install.install(toolDir, Context.tmpDir(), input.version);
|
||||
const runDir = path.join(os.homedir(), `setup-docker-action-${uuid.v4()}`);
|
||||
stateHelper.setRunDir(runDir);
|
||||
await install.install(toolDir, runDir, input.version);
|
||||
}
|
||||
|
||||
await core.group(`Docker info`, async () => {
|
||||
await Docker.printVersion();
|
||||
await Docker.printInfo();
|
||||
});
|
||||
},
|
||||
// post
|
||||
async () => {
|
||||
if (stateHelper.runDir.length == 0) {
|
||||
return;
|
||||
}
|
||||
const install = new Install();
|
||||
await install.tearDown(stateHelper.runDir);
|
||||
}
|
||||
);
|
||||
|
7
src/state-helper.ts
Normal file
7
src/state-helper.ts
Normal file
@ -0,0 +1,7 @@
|
||||
import * as core from '@actions/core';
|
||||
|
||||
export const runDir = process.env['STATE_rundir'] || '';
|
||||
|
||||
export function setRunDir(runDir: string) {
|
||||
core.saveState('rundir', runDir);
|
||||
}
|
Reference in New Issue
Block a user