Skip to content

Commit

Permalink
Merge pull request #154 from crazy-max/docker-install-stop
Browse files Browse the repository at this point in the history
docker(install): stop docker daemon gracefully on linux
  • Loading branch information
crazy-max authored Aug 26, 2023
2 parents 6a8f167 + a72977c commit c674e72
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 2 deletions.
1 change: 1 addition & 0 deletions src/docker/assets.ts
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ mkdir -p "$RUNDIR"
echo "Starting dockerd"
set -x
exec dockerd \\
--debug \\
--host="$DOCKER_HOST" \\
--exec-root="$RUNDIR/execroot" \\
--data-root="$RUNDIR/data" \\
Expand Down
8 changes: 6 additions & 2 deletions src/docker/install.ts
Original file line number Diff line number Diff line change
Expand Up @@ -311,13 +311,17 @@ export class Install {
core.info(fs.readFileSync(path.join(this.runDir, 'dockerd.log'), {encoding: 'utf8'}));
});
await core.group('Stopping Docker daemon', async () => {
await Exec.exec('sudo', ['kill', fs.readFileSync(path.join(this.runDir, 'docker.pid')).toString().trim()]);
await Exec.exec('sudo', ['kill', '-s', 'SIGTERM', fs.readFileSync(path.join(this.runDir, 'docker.pid')).toString().trim()]);
await Util.sleep(5);
});
await core.group('Removing Docker context', async () => {
await Exec.exec('docker', ['context', 'rm', '-f', this.contextName]);
});
await core.group(`Cleaning up runDir`, async () => {
await Exec.exec('sudo', ['rm', '-rf', this.runDir]);
await Exec.exec('sudo', ['rm', '-rf', this.runDir], {
ignoreReturnCode: true,
failOnStdErr: false
});
});
}

Expand Down
4 changes: 4 additions & 0 deletions src/util.ts
Original file line number Diff line number Diff line change
Expand Up @@ -133,4 +133,8 @@ export class Util {
}
return str.substring(0, index);
}

public static sleep(seconds: number) {
return new Promise(resolve => setTimeout(resolve, seconds * 1000));
}
}

0 comments on commit c674e72

Please sign in to comment.