@docker/actions-toolkit 0.1.0-beta.16 → 0.1.0-beta.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/lib/buildx/builder.d.ts +1 -0
- package/lib/buildx/builder.js +46 -0
- package/lib/buildx/builder.js.map +1 -1
- package/lib/buildx/buildx.js +2 -2
- package/lib/buildx/buildx.js.map +1 -1
- package/lib/buildx/install.js +2 -2
- package/lib/buildx/install.js.map +1 -1
- package/lib/docker/assets.d.ts +23 -0
- package/lib/docker/assets.js +339 -0
- package/lib/docker/assets.js.map +1 -0
- package/lib/{docker.js → docker/docker.js} +1 -1
- package/lib/docker/docker.js.map +1 -0
- package/lib/docker/install.d.ts +46 -0
- package/lib/docker/install.js +393 -0
- package/lib/docker/install.js.map +1 -0
- package/lib/git.d.ts +10 -1
- package/lib/git.js +74 -7
- package/lib/git.js.map +1 -1
- package/lib/types/git.d.ts +17 -0
- package/lib/types/git.js +18 -0
- package/lib/types/git.js.map +1 -0
- package/lib/util.d.ts +5 -0
- package/lib/util.js +30 -0
- package/lib/util.js.map +1 -1
- package/package.json +6 -2
- package/lib/docker.js.map +0 -1
- /package/lib/{docker.d.ts → docker/docker.d.ts} +0 -0
package/README.md
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
[](https://www.npmjs.com/package/@docker/actions-toolkit)
|
|
2
2
|
[](https://www.npmjs.com/package/@docker/actions-toolkit)
|
|
3
|
+
[](https://github.com/docker/actions-toolkit/actions?workflow=build)
|
|
3
4
|
[](https://github.com/docker/actions-toolkit/actions?workflow=test)
|
|
5
|
+
[](https://github.com/docker/actions-toolkit/actions?workflow=e2e)
|
|
4
6
|
[](https://codecov.io/gh/docker/actions-toolkit)
|
|
5
7
|
|
|
6
8
|
# Actions Toolkit
|
package/lib/buildx/builder.d.ts
CHANGED
|
@@ -21,6 +21,7 @@ export interface BuilderOpts {
|
|
|
21
21
|
export declare class Builder {
|
|
22
22
|
private readonly buildx;
|
|
23
23
|
constructor(opts?: BuilderOpts);
|
|
24
|
+
exists(name: string): Promise<boolean>;
|
|
24
25
|
inspect(name: string): Promise<BuilderInfo>;
|
|
25
26
|
static parseInspect(data: string): BuilderInfo;
|
|
26
27
|
}
|
package/lib/buildx/builder.js
CHANGED
|
@@ -14,6 +14,29 @@
|
|
|
14
14
|
* See the License for the specific language governing permissions and
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
20
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
21
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
22
|
+
}
|
|
23
|
+
Object.defineProperty(o, k2, desc);
|
|
24
|
+
}) : (function(o, m, k, k2) {
|
|
25
|
+
if (k2 === undefined) k2 = k;
|
|
26
|
+
o[k2] = m[k];
|
|
27
|
+
}));
|
|
28
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
29
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
30
|
+
}) : function(o, v) {
|
|
31
|
+
o["default"] = v;
|
|
32
|
+
});
|
|
33
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
17
40
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
18
41
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
19
42
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -25,12 +48,35 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
25
48
|
};
|
|
26
49
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
50
|
exports.Builder = void 0;
|
|
51
|
+
const core = __importStar(require("@actions/core"));
|
|
28
52
|
const buildx_1 = require("./buildx");
|
|
29
53
|
const exec_1 = require("../exec");
|
|
30
54
|
class Builder {
|
|
31
55
|
constructor(opts) {
|
|
32
56
|
this.buildx = (opts === null || opts === void 0 ? void 0 : opts.buildx) || new buildx_1.Buildx();
|
|
33
57
|
}
|
|
58
|
+
exists(name) {
|
|
59
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
60
|
+
const cmd = yield this.buildx.getCommand(['inspect', name]);
|
|
61
|
+
const ok = yield exec_1.Exec.getExecOutput(cmd.command, cmd.args, {
|
|
62
|
+
ignoreReturnCode: true,
|
|
63
|
+
silent: true
|
|
64
|
+
})
|
|
65
|
+
.then(res => {
|
|
66
|
+
if (res.stderr.length > 0 && res.exitCode != 0) {
|
|
67
|
+
core.debug(`Builder.exists cmd err: ${res.stderr.trim()}`);
|
|
68
|
+
return false;
|
|
69
|
+
}
|
|
70
|
+
return res.exitCode == 0;
|
|
71
|
+
})
|
|
72
|
+
.catch(error => {
|
|
73
|
+
core.debug(`Builder.exists error: ${error}`);
|
|
74
|
+
return false;
|
|
75
|
+
});
|
|
76
|
+
core.debug(`Builder.exists: ${ok}`);
|
|
77
|
+
return ok;
|
|
78
|
+
});
|
|
79
|
+
}
|
|
34
80
|
inspect(name) {
|
|
35
81
|
return __awaiter(this, void 0, void 0, function* () {
|
|
36
82
|
const cmd = yield this.buildx.getCommand(['inspect', name]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/buildx/builder.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/buildx/builder.ts"],"names":[],"mappings":"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"}
|
package/lib/buildx/buildx.js
CHANGED
|
@@ -55,7 +55,7 @@ const fs_1 = __importDefault(require("fs"));
|
|
|
55
55
|
const path_1 = __importDefault(require("path"));
|
|
56
56
|
const core = __importStar(require("@actions/core"));
|
|
57
57
|
const semver = __importStar(require("semver"));
|
|
58
|
-
const docker_1 = require("../docker");
|
|
58
|
+
const docker_1 = require("../docker/docker");
|
|
59
59
|
const exec_1 = require("../exec");
|
|
60
60
|
const inputs_1 = require("./inputs");
|
|
61
61
|
class Buildx {
|
|
@@ -97,7 +97,7 @@ class Buildx {
|
|
|
97
97
|
})
|
|
98
98
|
.then(res => {
|
|
99
99
|
if (res.stderr.length > 0 && res.exitCode != 0) {
|
|
100
|
-
core.debug(`Buildx.isAvailable cmd err: ${res.stderr}`);
|
|
100
|
+
core.debug(`Buildx.isAvailable cmd err: ${res.stderr.trim()}`);
|
|
101
101
|
return false;
|
|
102
102
|
}
|
|
103
103
|
return res.exitCode == 0;
|
package/lib/buildx/buildx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildx.js","sourceRoot":"","sources":["../../src/buildx/buildx.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,4CAAoB;AACpB,gDAAwB;AACxB,oDAAsC;AACtC,+CAAiC;AAEjC,
|
|
1
|
+
{"version":3,"file":"buildx.js","sourceRoot":"","sources":["../../src/buildx/buildx.ts"],"names":[],"mappings":"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"}
|
package/lib/buildx/install.js
CHANGED
|
@@ -62,7 +62,7 @@ const util = __importStar(require("util"));
|
|
|
62
62
|
const buildx_1 = require("./buildx");
|
|
63
63
|
const context_1 = require("../context");
|
|
64
64
|
const exec_1 = require("../exec");
|
|
65
|
-
const docker_1 = require("../docker");
|
|
65
|
+
const docker_1 = require("../docker/docker");
|
|
66
66
|
const git_1 = require("../git");
|
|
67
67
|
class Install {
|
|
68
68
|
constructor(opts) {
|
|
@@ -99,7 +99,7 @@ class Install {
|
|
|
99
99
|
vspec = ref;
|
|
100
100
|
}
|
|
101
101
|
else {
|
|
102
|
-
vspec = yield git_1.Git.
|
|
102
|
+
vspec = yield git_1.Git.remoteSha(repo, ref);
|
|
103
103
|
}
|
|
104
104
|
core.debug(`Install.build: tool version spec ${vspec}`);
|
|
105
105
|
let toolPath;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/buildx/install.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,4CAAoB;AACpB,4CAAoB;AACpB,gDAAwB;AACxB,oDAAsC;AACtC,4DAA8C;AAC9C,wDAA0C;AAC1C,+CAAiC;AACjC,2CAA6B;AAE7B,qCAAgC;AAChC,wCAAmC;AACnC,kCAA6B;AAC7B,
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/buildx/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2023 actions-toolkit authors
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
export declare const setupDockerLinuxSh: () => string;
|
|
17
|
+
export declare const setupDockerWinPs1: () => string;
|
|
18
|
+
export declare const dockerServiceLogsPs1: () => string;
|
|
19
|
+
export declare const colimaYaml: () => string;
|
|
20
|
+
export declare const setupDockerLinuxShData = "\n#!/usr/bin/env bash\n\nset -eu\n\n: \"${TOOLDIR=}\"\n: \"${RUNDIR=}\"\n: \"${DOCKER_HOST=}\"\n\nexport PATH=\"$TOOLDIR::$PATH\"\n\nif [ -z \"$DOCKER_HOST\" ]; then\n echo >&2 'error: DOCKER_HOST required'\n false\nfi\n\nif ! command -v dockerd &> /dev/null; then\n echo >&2 'error: dockerd missing from PATH'\n false\nfi\n\nmkdir -p \"$RUNDIR\"\n\n(\n echo \"Starting dockerd\"\n set -x\n exec dockerd \\\n --host=\"$DOCKER_HOST\" \\\n --exec-root=\"$RUNDIR/execroot\" \\\n --data-root=\"$RUNDIR/data\" \\\n --pidfile=\"$RUNDIR/docker.pid\" \\\n --userland-proxy=false \\\n 2>&1 | tee \"$RUNDIR/dockerd.log\"\n) &\n";
|
|
21
|
+
export declare const setupDockerWinPs1Data = "\n[CmdletBinding()]\nparam(\n [Parameter(Mandatory = $true)]\n [string]$ToolDir,\n\n [Parameter(Mandatory = $true)]\n [string]$RunDir,\n\n [Parameter(Mandatory = $true)]\n [string]$DockerHost)\n\n$pwver = (Get-ItemProperty -Path HKLM:\\SOFTWARE\\Microsoft\\PowerShell\\3\\PowerShellEngine -Name 'PowerShellVersion').PowerShellVersion\nWrite-Host \"PowerShell version: $pwver\"\n\n# Create run directory\nNew-Item -ItemType Directory \"$RunDir\" -ErrorAction SilentlyContinue | Out-Null\n\n# Remove existing service\nif (Get-Service docker -ErrorAction SilentlyContinue) {\n $dockerVersion = (docker version -f \"{{.Server.Version}}\")\n Write-Host \"Current installed Docker version: $dockerVersion\"\n # stop service\n Stop-Service -Force -Name docker\n Write-Host \"Service stopped\"\n # remove service\n sc.exe delete \"docker\"\n # removes event log entry. we could use \"Remove-EventLog -LogName -Source docker\"\n # but this cmd is not available atm\n $ErrorActionPreference = \"SilentlyContinue\"\n & reg delete \"HKLM\\SYSTEM\\CurrentControlSet\\Services\\EventLog\\Application\\docker\" /f 2>&1 | Out-Null\n $ErrorActionPreference = \"Stop\"\n Write-Host \"Service removed\"\n}\n\n$env:DOCKER_HOST = $DockerHost\nWrite-Host \"DOCKER_HOST: $env:DOCKER_HOST\"\n\nWrite-Host \"Creating service\"\nNew-Item -ItemType Directory \"$RunDir\\moby-root\" -ErrorAction SilentlyContinue | Out-Null\nNew-Item -ItemType Directory \"$RunDir\\moby-exec\" -ErrorAction SilentlyContinue | Out-Null\nStart-Process -Wait -NoNewWindow \"$ToolDir\\dockerd\" `\n -ArgumentList `\n \"--host=$DockerHost\", `\n \"--data-root=$RunDir\\moby-root\", `\n \"--exec-root=$RunDir\\moby-exec\", `\n \"--pidfile=$RunDir\\docker.pid\", `\n \"--register-service\"\nWrite-Host \"Starting service\"\nStart-Service -Name docker\nWrite-Host \"Service started successfully!\"\n\n$tries=20\nWrite-Host \"Waiting for Docker daemon to start...\"\nWhile ($true) {\n $ErrorActionPreference = \"SilentlyContinue\"\n & \"$ToolDir\\docker\" version | Out-Null\n $ErrorActionPreference = \"Stop\"\n If ($LastExitCode -eq 0) {\n break\n }\n $tries--\n If ($tries -le 0) {\n Throw \"Failed to get a response from Docker daemon\"\n }\n Write-Host -NoNewline \".\"\n Start-Sleep -Seconds 1\n}\nWrite-Host \"Docker daemon started successfully!\"\n";
|
|
22
|
+
export declare const dockerServiceLogsPs1Data = "\nGet-WinEvent -ea SilentlyContinue `\n -FilterHashtable @{ProviderName= \"docker\"; LogName = \"application\"} |\n Sort-Object @{Expression=\"TimeCreated\";Descending=$false} |\n ForEach-Object {\"$($_.TimeCreated.ToUniversalTime().ToString(\"o\")) [$($_.LevelDisplayName)] $($_.Message)\"}\n";
|
|
23
|
+
export declare const colimaYamlData = "\n# Number of CPUs to be allocated to the virtual machine.\n# Default: 2\ncpu: 2\n\n# Size of the disk in GiB to be allocated to the virtual machine.\n# NOTE: changing this has no effect after the virtual machine has been created.\n# Default: 60\ndisk: 60\n\n# Size of the memory in GiB to be allocated to the virtual machine.\n# Default: 2\nmemory: 2\n\n# Architecture of the virtual machine (x86_64, aarch64, host).\n# Default: host\narch: host\n\n# Container runtime to be used (docker, containerd).\n# Default: docker\nruntime: docker\n\n# Kubernetes configuration for the virtual machine.\nkubernetes:\n enabled: false\n\n# Auto-activate on the Host for client access.\n# Setting to true does the following on startup\n# - sets as active Docker context (for Docker runtime).\n# - sets as active Kubernetes context (if Kubernetes is enabled).\n# Default: true\nautoActivate: false\n\n# Network configurations for the virtual machine.\nnetwork:\n # Assign reachable IP address to the virtual machine.\n # NOTE: this is currently macOS only and ignored on Linux.\n # Default: false\n address: false\n\n # Custom DNS resolvers for the virtual machine.\n #\n # EXAMPLE\n # dns: [8.8.8.8, 1.1.1.1]\n #\n # Default: []\n dns: []\n\n # DNS hostnames to resolve to custom targets using the internal resolver.\n # This setting has no effect if a custom DNS resolver list is supplied above.\n # It does not configure the /etc/hosts files of any machine or container.\n # The value can be an IP address or another host.\n #\n # EXAMPLE\n # dnsHosts:\n # example.com: 1.2.3.4\n dnsHosts:\n host.docker.internal: host.lima.internal\n\n # Network driver to use (slirp, gvproxy), (requires vmType `qemu`)\n # - slirp is the default user mode networking provided by Qemu\n # - gvproxy is an alternative to VPNKit based on gVisor https://github.com/containers/gvisor-tap-vsock\n # Default: gvproxy\n driver: gvproxy\n\n# Forward the host's SSH agent to the virtual machine.\n# Default: false\nforwardAgent: false\n\n# Docker daemon configuration that maps directly to daemon.json.\n# https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-configuration-file.\n# NOTE: some settings may affect Colima's ability to start docker. e.g. `hosts`.\n#\n# EXAMPLE - disable buildkit\n# docker:\n# features:\n# buildkit: false\n#\n# EXAMPLE - add insecure registries\n# docker:\n# insecure-registries:\n# - myregistry.com:5000\n# - host.docker.internal:5000\n#\n# Colima default behaviour: buildkit enabled\n# Default: {}\ndocker: {}\n\n# Virtual Machine type (qemu, vz)\n# NOTE: this is macOS 13 only. For Linux and macOS <13.0, qemu is always used.\n#\n# vz is macOS virtualization framework and requires macOS 13\n#\n# Default: qemu\nvmType: qemu\n\n# Volume mount driver for the virtual machine (virtiofs, 9p, sshfs).\n#\n# virtiofs is limited to macOS and vmType `vz`. It is the fastest of the options.\n#\n# 9p is the recommended and the most stable option for vmType `qemu`.\n#\n# sshfs is faster than 9p but the least reliable of the options (when there are lots\n# of concurrent reads or writes).\n#\n# Default: virtiofs (for vz), sshfs (for qemu)\nmountType: 9p\n\n# The CPU type for the virtual machine (requires vmType `qemu`).\n# Options available for host emulation can be checked with: `qemu-system-$(arch) -cpu help`.\n# Instructions are also supported by appending to the cpu type e.g. \"qemu64,+ssse3\".\n# Default: host\ncpuType: host\n\n# For a more general purpose virtual machine, Ubuntu container is optionally provided\n# as a layer on the virtual machine.\n# The underlying virtual machine is still accessible via `colima ssh --layer=false` or running `colima` in\n# the Ubuntu session.\n#\n# Default: false\nlayer: false\n\n# Custom provision scripts for the virtual machine.\n# Provisioning scripts are executed on startup and therefore needs to be idempotent.\n#\n# EXAMPLE - script exected as root\n# provision:\n# - mode: system\n# script: apk add htop vim\n#\n# EXAMPLE - script exected as user\n# provision:\n# - mode: user\n# script: |\n# [ -f ~/.provision ] && exit 0;\n# echo provisioning as $USER...\n# touch ~/.provision\n#\n# Default: []\nprovision:\n - mode: system\n script: |\n mkdir -p /tmp/docker-bins\n cd /tmp/docker-bins\n wget -qO- \"https://download.docker.com/linux/static/{{dockerChannel}}/{{hostArch}}/docker-{{dockerVersion}}.tgz\" | tar xvz --strip 1\n mv -f /tmp/docker-bins/* /usr/bin/\n\n# Modify ~/.ssh/config automatically to include a SSH config for the virtual machine.\n# SSH config will still be generated in ~/.colima/ssh_config regardless.\n# Default: true\nsshConfig: false\n\n# Configure volume mounts for the virtual machine.\n# Colima mounts user's home directory by default to provide a familiar\n# user experience.\n#\n# EXAMPLE\n# mounts:\n# - location: ~/secrets\n# writable: false\n# - location: ~/projects\n# writable: true\n#\n# Colima default behaviour: $HOME and /tmp/colima are mounted as writable.\n# Default: []\nmounts: []\n\n# Environment variables for the virtual machine.\n#\n# EXAMPLE\n# env:\n# KEY: value\n# ANOTHER_KEY: another value\n#\n# Default: {}\nenv: {}\n";
|
|
@@ -0,0 +1,339 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright 2023 actions-toolkit authors
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
|
+
};
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
exports.colimaYamlData = exports.dockerServiceLogsPs1Data = exports.setupDockerWinPs1Data = exports.setupDockerLinuxShData = exports.colimaYaml = exports.dockerServiceLogsPs1 = exports.setupDockerWinPs1 = exports.setupDockerLinuxSh = void 0;
|
|
22
|
+
const fs_1 = __importDefault(require("fs"));
|
|
23
|
+
const context_1 = require("../context");
|
|
24
|
+
const setupDockerLinuxSh = () => {
|
|
25
|
+
return get('docker-setup-linux.sh', exports.setupDockerLinuxShData, '0755');
|
|
26
|
+
};
|
|
27
|
+
exports.setupDockerLinuxSh = setupDockerLinuxSh;
|
|
28
|
+
const setupDockerWinPs1 = () => {
|
|
29
|
+
return get('docker-setup-win.ps1', exports.setupDockerWinPs1Data);
|
|
30
|
+
};
|
|
31
|
+
exports.setupDockerWinPs1 = setupDockerWinPs1;
|
|
32
|
+
const dockerServiceLogsPs1 = () => {
|
|
33
|
+
return get('docker-service-logs.ps1', exports.dockerServiceLogsPs1Data);
|
|
34
|
+
};
|
|
35
|
+
exports.dockerServiceLogsPs1 = dockerServiceLogsPs1;
|
|
36
|
+
const colimaYaml = () => {
|
|
37
|
+
return get('colima.yaml', exports.colimaYamlData);
|
|
38
|
+
};
|
|
39
|
+
exports.colimaYaml = colimaYaml;
|
|
40
|
+
const get = (filename, data, mode) => {
|
|
41
|
+
const assetPath = context_1.Context.tmpName({
|
|
42
|
+
template: `docker-asset-XXXXXX-${filename}`,
|
|
43
|
+
tmpdir: context_1.Context.tmpDir()
|
|
44
|
+
});
|
|
45
|
+
fs_1.default.writeFileSync(assetPath, data);
|
|
46
|
+
if (mode) {
|
|
47
|
+
fs_1.default.chmodSync(assetPath, mode);
|
|
48
|
+
}
|
|
49
|
+
return assetPath;
|
|
50
|
+
};
|
|
51
|
+
exports.setupDockerLinuxShData = `
|
|
52
|
+
#!/usr/bin/env bash
|
|
53
|
+
|
|
54
|
+
set -eu
|
|
55
|
+
|
|
56
|
+
: "\${TOOLDIR=}"
|
|
57
|
+
: "\${RUNDIR=}"
|
|
58
|
+
: "\${DOCKER_HOST=}"
|
|
59
|
+
|
|
60
|
+
export PATH="$TOOLDIR::$PATH"
|
|
61
|
+
|
|
62
|
+
if [ -z "$DOCKER_HOST" ]; then
|
|
63
|
+
echo >&2 'error: DOCKER_HOST required'
|
|
64
|
+
false
|
|
65
|
+
fi
|
|
66
|
+
|
|
67
|
+
if ! command -v dockerd &> /dev/null; then
|
|
68
|
+
echo >&2 'error: dockerd missing from PATH'
|
|
69
|
+
false
|
|
70
|
+
fi
|
|
71
|
+
|
|
72
|
+
mkdir -p "$RUNDIR"
|
|
73
|
+
|
|
74
|
+
(
|
|
75
|
+
echo "Starting dockerd"
|
|
76
|
+
set -x
|
|
77
|
+
exec dockerd \\
|
|
78
|
+
--host="$DOCKER_HOST" \\
|
|
79
|
+
--exec-root="$RUNDIR/execroot" \\
|
|
80
|
+
--data-root="$RUNDIR/data" \\
|
|
81
|
+
--pidfile="$RUNDIR/docker.pid" \\
|
|
82
|
+
--userland-proxy=false \\
|
|
83
|
+
2>&1 | tee "$RUNDIR/dockerd.log"
|
|
84
|
+
) &
|
|
85
|
+
`;
|
|
86
|
+
exports.setupDockerWinPs1Data = `
|
|
87
|
+
[CmdletBinding()]
|
|
88
|
+
param(
|
|
89
|
+
[Parameter(Mandatory = $true)]
|
|
90
|
+
[string]$ToolDir,
|
|
91
|
+
|
|
92
|
+
[Parameter(Mandatory = $true)]
|
|
93
|
+
[string]$RunDir,
|
|
94
|
+
|
|
95
|
+
[Parameter(Mandatory = $true)]
|
|
96
|
+
[string]$DockerHost)
|
|
97
|
+
|
|
98
|
+
$pwver = (Get-ItemProperty -Path HKLM:\\SOFTWARE\\Microsoft\\PowerShell\\3\\PowerShellEngine -Name 'PowerShellVersion').PowerShellVersion
|
|
99
|
+
Write-Host "PowerShell version: $pwver"
|
|
100
|
+
|
|
101
|
+
# Create run directory
|
|
102
|
+
New-Item -ItemType Directory "$RunDir" -ErrorAction SilentlyContinue | Out-Null
|
|
103
|
+
|
|
104
|
+
# Remove existing service
|
|
105
|
+
if (Get-Service docker -ErrorAction SilentlyContinue) {
|
|
106
|
+
$dockerVersion = (docker version -f "{{.Server.Version}}")
|
|
107
|
+
Write-Host "Current installed Docker version: $dockerVersion"
|
|
108
|
+
# stop service
|
|
109
|
+
Stop-Service -Force -Name docker
|
|
110
|
+
Write-Host "Service stopped"
|
|
111
|
+
# remove service
|
|
112
|
+
sc.exe delete "docker"
|
|
113
|
+
# removes event log entry. we could use "Remove-EventLog -LogName -Source docker"
|
|
114
|
+
# but this cmd is not available atm
|
|
115
|
+
$ErrorActionPreference = "SilentlyContinue"
|
|
116
|
+
& reg delete "HKLM\\SYSTEM\\CurrentControlSet\\Services\\EventLog\\Application\\docker" /f 2>&1 | Out-Null
|
|
117
|
+
$ErrorActionPreference = "Stop"
|
|
118
|
+
Write-Host "Service removed"
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
$env:DOCKER_HOST = $DockerHost
|
|
122
|
+
Write-Host "DOCKER_HOST: $env:DOCKER_HOST"
|
|
123
|
+
|
|
124
|
+
Write-Host "Creating service"
|
|
125
|
+
New-Item -ItemType Directory "$RunDir\\moby-root" -ErrorAction SilentlyContinue | Out-Null
|
|
126
|
+
New-Item -ItemType Directory "$RunDir\\moby-exec" -ErrorAction SilentlyContinue | Out-Null
|
|
127
|
+
Start-Process -Wait -NoNewWindow "$ToolDir\\dockerd" \`
|
|
128
|
+
-ArgumentList \`
|
|
129
|
+
"--host=$DockerHost", \`
|
|
130
|
+
"--data-root=$RunDir\\moby-root", \`
|
|
131
|
+
"--exec-root=$RunDir\\moby-exec", \`
|
|
132
|
+
"--pidfile=$RunDir\\docker.pid", \`
|
|
133
|
+
"--register-service"
|
|
134
|
+
Write-Host "Starting service"
|
|
135
|
+
Start-Service -Name docker
|
|
136
|
+
Write-Host "Service started successfully!"
|
|
137
|
+
|
|
138
|
+
$tries=20
|
|
139
|
+
Write-Host "Waiting for Docker daemon to start..."
|
|
140
|
+
While ($true) {
|
|
141
|
+
$ErrorActionPreference = "SilentlyContinue"
|
|
142
|
+
& "$ToolDir\\docker" version | Out-Null
|
|
143
|
+
$ErrorActionPreference = "Stop"
|
|
144
|
+
If ($LastExitCode -eq 0) {
|
|
145
|
+
break
|
|
146
|
+
}
|
|
147
|
+
$tries--
|
|
148
|
+
If ($tries -le 0) {
|
|
149
|
+
Throw "Failed to get a response from Docker daemon"
|
|
150
|
+
}
|
|
151
|
+
Write-Host -NoNewline "."
|
|
152
|
+
Start-Sleep -Seconds 1
|
|
153
|
+
}
|
|
154
|
+
Write-Host "Docker daemon started successfully!"
|
|
155
|
+
`;
|
|
156
|
+
exports.dockerServiceLogsPs1Data = `
|
|
157
|
+
Get-WinEvent -ea SilentlyContinue \`
|
|
158
|
+
-FilterHashtable @{ProviderName= "docker"; LogName = "application"} |
|
|
159
|
+
Sort-Object @{Expression="TimeCreated";Descending=$false} |
|
|
160
|
+
ForEach-Object {"$($_.TimeCreated.ToUniversalTime().ToString("o")) [$($_.LevelDisplayName)] $($_.Message)"}
|
|
161
|
+
`;
|
|
162
|
+
exports.colimaYamlData = `
|
|
163
|
+
# Number of CPUs to be allocated to the virtual machine.
|
|
164
|
+
# Default: 2
|
|
165
|
+
cpu: 2
|
|
166
|
+
|
|
167
|
+
# Size of the disk in GiB to be allocated to the virtual machine.
|
|
168
|
+
# NOTE: changing this has no effect after the virtual machine has been created.
|
|
169
|
+
# Default: 60
|
|
170
|
+
disk: 60
|
|
171
|
+
|
|
172
|
+
# Size of the memory in GiB to be allocated to the virtual machine.
|
|
173
|
+
# Default: 2
|
|
174
|
+
memory: 2
|
|
175
|
+
|
|
176
|
+
# Architecture of the virtual machine (x86_64, aarch64, host).
|
|
177
|
+
# Default: host
|
|
178
|
+
arch: host
|
|
179
|
+
|
|
180
|
+
# Container runtime to be used (docker, containerd).
|
|
181
|
+
# Default: docker
|
|
182
|
+
runtime: docker
|
|
183
|
+
|
|
184
|
+
# Kubernetes configuration for the virtual machine.
|
|
185
|
+
kubernetes:
|
|
186
|
+
enabled: false
|
|
187
|
+
|
|
188
|
+
# Auto-activate on the Host for client access.
|
|
189
|
+
# Setting to true does the following on startup
|
|
190
|
+
# - sets as active Docker context (for Docker runtime).
|
|
191
|
+
# - sets as active Kubernetes context (if Kubernetes is enabled).
|
|
192
|
+
# Default: true
|
|
193
|
+
autoActivate: false
|
|
194
|
+
|
|
195
|
+
# Network configurations for the virtual machine.
|
|
196
|
+
network:
|
|
197
|
+
# Assign reachable IP address to the virtual machine.
|
|
198
|
+
# NOTE: this is currently macOS only and ignored on Linux.
|
|
199
|
+
# Default: false
|
|
200
|
+
address: false
|
|
201
|
+
|
|
202
|
+
# Custom DNS resolvers for the virtual machine.
|
|
203
|
+
#
|
|
204
|
+
# EXAMPLE
|
|
205
|
+
# dns: [8.8.8.8, 1.1.1.1]
|
|
206
|
+
#
|
|
207
|
+
# Default: []
|
|
208
|
+
dns: []
|
|
209
|
+
|
|
210
|
+
# DNS hostnames to resolve to custom targets using the internal resolver.
|
|
211
|
+
# This setting has no effect if a custom DNS resolver list is supplied above.
|
|
212
|
+
# It does not configure the /etc/hosts files of any machine or container.
|
|
213
|
+
# The value can be an IP address or another host.
|
|
214
|
+
#
|
|
215
|
+
# EXAMPLE
|
|
216
|
+
# dnsHosts:
|
|
217
|
+
# example.com: 1.2.3.4
|
|
218
|
+
dnsHosts:
|
|
219
|
+
host.docker.internal: host.lima.internal
|
|
220
|
+
|
|
221
|
+
# Network driver to use (slirp, gvproxy), (requires vmType \`qemu\`)
|
|
222
|
+
# - slirp is the default user mode networking provided by Qemu
|
|
223
|
+
# - gvproxy is an alternative to VPNKit based on gVisor https://github.com/containers/gvisor-tap-vsock
|
|
224
|
+
# Default: gvproxy
|
|
225
|
+
driver: gvproxy
|
|
226
|
+
|
|
227
|
+
# Forward the host's SSH agent to the virtual machine.
|
|
228
|
+
# Default: false
|
|
229
|
+
forwardAgent: false
|
|
230
|
+
|
|
231
|
+
# Docker daemon configuration that maps directly to daemon.json.
|
|
232
|
+
# https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-configuration-file.
|
|
233
|
+
# NOTE: some settings may affect Colima's ability to start docker. e.g. \`hosts\`.
|
|
234
|
+
#
|
|
235
|
+
# EXAMPLE - disable buildkit
|
|
236
|
+
# docker:
|
|
237
|
+
# features:
|
|
238
|
+
# buildkit: false
|
|
239
|
+
#
|
|
240
|
+
# EXAMPLE - add insecure registries
|
|
241
|
+
# docker:
|
|
242
|
+
# insecure-registries:
|
|
243
|
+
# - myregistry.com:5000
|
|
244
|
+
# - host.docker.internal:5000
|
|
245
|
+
#
|
|
246
|
+
# Colima default behaviour: buildkit enabled
|
|
247
|
+
# Default: {}
|
|
248
|
+
docker: {}
|
|
249
|
+
|
|
250
|
+
# Virtual Machine type (qemu, vz)
|
|
251
|
+
# NOTE: this is macOS 13 only. For Linux and macOS <13.0, qemu is always used.
|
|
252
|
+
#
|
|
253
|
+
# vz is macOS virtualization framework and requires macOS 13
|
|
254
|
+
#
|
|
255
|
+
# Default: qemu
|
|
256
|
+
vmType: qemu
|
|
257
|
+
|
|
258
|
+
# Volume mount driver for the virtual machine (virtiofs, 9p, sshfs).
|
|
259
|
+
#
|
|
260
|
+
# virtiofs is limited to macOS and vmType \`vz\`. It is the fastest of the options.
|
|
261
|
+
#
|
|
262
|
+
# 9p is the recommended and the most stable option for vmType \`qemu\`.
|
|
263
|
+
#
|
|
264
|
+
# sshfs is faster than 9p but the least reliable of the options (when there are lots
|
|
265
|
+
# of concurrent reads or writes).
|
|
266
|
+
#
|
|
267
|
+
# Default: virtiofs (for vz), sshfs (for qemu)
|
|
268
|
+
mountType: 9p
|
|
269
|
+
|
|
270
|
+
# The CPU type for the virtual machine (requires vmType \`qemu\`).
|
|
271
|
+
# Options available for host emulation can be checked with: \`qemu-system-$(arch) -cpu help\`.
|
|
272
|
+
# Instructions are also supported by appending to the cpu type e.g. "qemu64,+ssse3".
|
|
273
|
+
# Default: host
|
|
274
|
+
cpuType: host
|
|
275
|
+
|
|
276
|
+
# For a more general purpose virtual machine, Ubuntu container is optionally provided
|
|
277
|
+
# as a layer on the virtual machine.
|
|
278
|
+
# The underlying virtual machine is still accessible via \`colima ssh --layer=false\` or running \`colima\` in
|
|
279
|
+
# the Ubuntu session.
|
|
280
|
+
#
|
|
281
|
+
# Default: false
|
|
282
|
+
layer: false
|
|
283
|
+
|
|
284
|
+
# Custom provision scripts for the virtual machine.
|
|
285
|
+
# Provisioning scripts are executed on startup and therefore needs to be idempotent.
|
|
286
|
+
#
|
|
287
|
+
# EXAMPLE - script exected as root
|
|
288
|
+
# provision:
|
|
289
|
+
# - mode: system
|
|
290
|
+
# script: apk add htop vim
|
|
291
|
+
#
|
|
292
|
+
# EXAMPLE - script exected as user
|
|
293
|
+
# provision:
|
|
294
|
+
# - mode: user
|
|
295
|
+
# script: |
|
|
296
|
+
# [ -f ~/.provision ] && exit 0;
|
|
297
|
+
# echo provisioning as $USER...
|
|
298
|
+
# touch ~/.provision
|
|
299
|
+
#
|
|
300
|
+
# Default: []
|
|
301
|
+
provision:
|
|
302
|
+
- mode: system
|
|
303
|
+
script: |
|
|
304
|
+
mkdir -p /tmp/docker-bins
|
|
305
|
+
cd /tmp/docker-bins
|
|
306
|
+
wget -qO- "https://download.docker.com/linux/static/{{dockerChannel}}/{{hostArch}}/docker-{{dockerVersion}}.tgz" | tar xvz --strip 1
|
|
307
|
+
mv -f /tmp/docker-bins/* /usr/bin/
|
|
308
|
+
|
|
309
|
+
# Modify ~/.ssh/config automatically to include a SSH config for the virtual machine.
|
|
310
|
+
# SSH config will still be generated in ~/.colima/ssh_config regardless.
|
|
311
|
+
# Default: true
|
|
312
|
+
sshConfig: false
|
|
313
|
+
|
|
314
|
+
# Configure volume mounts for the virtual machine.
|
|
315
|
+
# Colima mounts user's home directory by default to provide a familiar
|
|
316
|
+
# user experience.
|
|
317
|
+
#
|
|
318
|
+
# EXAMPLE
|
|
319
|
+
# mounts:
|
|
320
|
+
# - location: ~/secrets
|
|
321
|
+
# writable: false
|
|
322
|
+
# - location: ~/projects
|
|
323
|
+
# writable: true
|
|
324
|
+
#
|
|
325
|
+
# Colima default behaviour: $HOME and /tmp/colima are mounted as writable.
|
|
326
|
+
# Default: []
|
|
327
|
+
mounts: []
|
|
328
|
+
|
|
329
|
+
# Environment variables for the virtual machine.
|
|
330
|
+
#
|
|
331
|
+
# EXAMPLE
|
|
332
|
+
# env:
|
|
333
|
+
# KEY: value
|
|
334
|
+
# ANOTHER_KEY: another value
|
|
335
|
+
#
|
|
336
|
+
# Default: {}
|
|
337
|
+
env: {}
|
|
338
|
+
`;
|
|
339
|
+
//# sourceMappingURL=assets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/docker/assets.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;AAEH,4CAAoB;AACpB,wCAAmC;AAE5B,MAAM,kBAAkB,GAAG,GAAW,EAAE;IAC7C,OAAO,GAAG,CAAC,uBAAuB,EAAE,8BAAsB,EAAE,MAAM,CAAC,CAAC;AACtE,CAAC,CAAC;AAFW,QAAA,kBAAkB,sBAE7B;AAEK,MAAM,iBAAiB,GAAG,GAAW,EAAE;IAC5C,OAAO,GAAG,CAAC,sBAAsB,EAAE,6BAAqB,CAAC,CAAC;AAC5D,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B;AAEK,MAAM,oBAAoB,GAAG,GAAW,EAAE;IAC/C,OAAO,GAAG,CAAC,yBAAyB,EAAE,gCAAwB,CAAC,CAAC;AAClE,CAAC,CAAC;AAFW,QAAA,oBAAoB,wBAE/B;AAEK,MAAM,UAAU,GAAG,GAAW,EAAE;IACrC,OAAO,GAAG,CAAC,aAAa,EAAE,sBAAc,CAAC,CAAC;AAC5C,CAAC,CAAC;AAFW,QAAA,UAAU,cAErB;AAEF,MAAM,GAAG,GAAG,CAAC,QAAgB,EAAE,IAAY,EAAE,IAAa,EAAU,EAAE;IACpE,MAAM,SAAS,GAAG,iBAAO,CAAC,OAAO,CAAC;QAChC,QAAQ,EAAE,uBAAuB,QAAQ,EAAE;QAC3C,MAAM,EAAE,iBAAO,CAAC,MAAM,EAAE;KACzB,CAAC,CAAC;IACH,YAAE,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAClC,IAAI,IAAI,EAAE;QACR,YAAE,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;KAC/B;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEW,QAAA,sBAAsB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkCrC,CAAC;AAEW,QAAA,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqEpC,CAAC;AAEW,QAAA,wBAAwB,GAAG;;;;;CAKvC,CAAC;AAEW,QAAA,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgL7B,CAAC"}
|
|
@@ -55,7 +55,7 @@ const os_1 = __importDefault(require("os"));
|
|
|
55
55
|
const path_1 = __importDefault(require("path"));
|
|
56
56
|
const core = __importStar(require("@actions/core"));
|
|
57
57
|
const io = __importStar(require("@actions/io"));
|
|
58
|
-
const exec_1 = require("
|
|
58
|
+
const exec_1 = require("../exec");
|
|
59
59
|
class Docker {
|
|
60
60
|
static get configDir() {
|
|
61
61
|
return process.env.DOCKER_CONFIG || path_1.default.join(os_1.default.homedir(), '.docker');
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../../src/docker/docker.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,4CAAoB;AACpB,gDAAwB;AACxB,oDAAsC;AACtC,gDAAkC;AAClC,kCAA6B;AAE7B,MAAa,MAAM;IACjB,MAAM,KAAK,SAAS;QAClB,OAAO,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,cAAI,CAAC,IAAI,CAAC,YAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;IACzE,CAAC;IAEM,MAAM,CAAO,WAAW;;YAC7B,OAAO,MAAM,EAAE;iBACZ,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;iBACrB,IAAI,CAAC,GAAG,CAAC,EAAE;gBACV,IAAI,CAAC,KAAK,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAC;gBAC5C,OAAO,IAAI,CAAC;YACd,CAAC,CAAC;iBACD,KAAK,CAAC,KAAK,CAAC,EAAE;gBACb,IAAI,CAAC,KAAK,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAC;gBACjD,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,CAAC;QACP,CAAC;KAAA;IAEM,MAAM,CAAO,OAAO,CAAC,IAAa;;YACvC,MAAM,IAAI,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;YAC7D,IAAI,IAAI,EAAE;gBACR,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACjB;YACD,OAAO,MAAM,WAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE;gBAC9C,gBAAgB,EAAE,IAAI;gBACtB,MAAM,EAAE,IAAI;aACb,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gBACZ,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,IAAI,CAAC,EAAE;oBAC9C,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;iBAC7B;gBACD,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;QACL,CAAC;KAAA;IAEM,MAAM,CAAO,YAAY;;YAC9B,MAAM,WAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QACzC,CAAC;KAAA;IAEM,MAAM,CAAO,SAAS;;YAC3B,MAAM,WAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACtC,CAAC;KAAA;CACF;AAzCD,wBAyCC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2023 actions-toolkit authors
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import { GitHubRelease } from '../types/github';
|
|
17
|
+
export interface InstallOpts {
|
|
18
|
+
version?: string;
|
|
19
|
+
channel?: string;
|
|
20
|
+
runDir: string;
|
|
21
|
+
contextName?: string;
|
|
22
|
+
}
|
|
23
|
+
export declare class Install {
|
|
24
|
+
private readonly runDir;
|
|
25
|
+
private readonly version;
|
|
26
|
+
private readonly channel;
|
|
27
|
+
private readonly contextName;
|
|
28
|
+
private _version;
|
|
29
|
+
private _toolDir;
|
|
30
|
+
constructor(opts: InstallOpts);
|
|
31
|
+
get toolDir(): string;
|
|
32
|
+
download(): Promise<string>;
|
|
33
|
+
install(): Promise<void>;
|
|
34
|
+
private installDarwin;
|
|
35
|
+
private installLinux;
|
|
36
|
+
private installWindows;
|
|
37
|
+
tearDown(): Promise<void>;
|
|
38
|
+
private tearDownDarwin;
|
|
39
|
+
private tearDownLinux;
|
|
40
|
+
private tearDownWindows;
|
|
41
|
+
private downloadURL;
|
|
42
|
+
private static platformOS;
|
|
43
|
+
private static platformArch;
|
|
44
|
+
private static colimaInstalled;
|
|
45
|
+
static getRelease(version: string): Promise<GitHubRelease>;
|
|
46
|
+
}
|