@actions/cache 1.0.5 → 1.0.9

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.
@@ -1,170 +1,170 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __asyncValues = (this && this.__asyncValues) || function (o) {
12
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
13
- var m = o[Symbol.asyncIterator], i;
14
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
15
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
16
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
17
- };
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
22
- result["default"] = mod;
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- const core = __importStar(require("@actions/core"));
27
- const exec = __importStar(require("@actions/exec"));
28
- const glob = __importStar(require("@actions/glob"));
29
- const io = __importStar(require("@actions/io"));
30
- const fs = __importStar(require("fs"));
31
- const path = __importStar(require("path"));
32
- const semver = __importStar(require("semver"));
33
- const util = __importStar(require("util"));
34
- const uuid_1 = require("uuid");
35
- const constants_1 = require("./constants");
36
- // From https://github.com/actions/toolkit/blob/main/packages/tool-cache/src/tool-cache.ts#L23
37
- function createTempDirectory() {
38
- return __awaiter(this, void 0, void 0, function* () {
39
- const IS_WINDOWS = process.platform === 'win32';
40
- let tempDirectory = process.env['RUNNER_TEMP'] || '';
41
- if (!tempDirectory) {
42
- let baseLocation;
43
- if (IS_WINDOWS) {
44
- // On Windows use the USERPROFILE env variable
45
- baseLocation = process.env['USERPROFILE'] || 'C:\\';
46
- }
47
- else {
48
- if (process.platform === 'darwin') {
49
- baseLocation = '/Users';
50
- }
51
- else {
52
- baseLocation = '/home';
53
- }
54
- }
55
- tempDirectory = path.join(baseLocation, 'actions', 'temp');
56
- }
57
- const dest = path.join(tempDirectory, uuid_1.v4());
58
- yield io.mkdirP(dest);
59
- return dest;
60
- });
61
- }
62
- exports.createTempDirectory = createTempDirectory;
63
- function getArchiveFileSizeIsBytes(filePath) {
64
- return fs.statSync(filePath).size;
65
- }
66
- exports.getArchiveFileSizeIsBytes = getArchiveFileSizeIsBytes;
67
- function resolvePaths(patterns) {
68
- var e_1, _a;
69
- var _b;
70
- return __awaiter(this, void 0, void 0, function* () {
71
- const paths = [];
72
- const workspace = (_b = process.env['GITHUB_WORKSPACE']) !== null && _b !== void 0 ? _b : process.cwd();
73
- const globber = yield glob.create(patterns.join('\n'), {
74
- implicitDescendants: false
75
- });
76
- try {
77
- for (var _c = __asyncValues(globber.globGenerator()), _d; _d = yield _c.next(), !_d.done;) {
78
- const file = _d.value;
79
- const relativeFile = path
80
- .relative(workspace, file)
81
- .replace(new RegExp(`\\${path.sep}`, 'g'), '/');
82
- core.debug(`Matched: ${relativeFile}`);
83
- // Paths are made relative so the tar entries are all relative to the root of the workspace.
84
- paths.push(`${relativeFile}`);
85
- }
86
- }
87
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
88
- finally {
89
- try {
90
- if (_d && !_d.done && (_a = _c.return)) yield _a.call(_c);
91
- }
92
- finally { if (e_1) throw e_1.error; }
93
- }
94
- return paths;
95
- });
96
- }
97
- exports.resolvePaths = resolvePaths;
98
- function unlinkFile(filePath) {
99
- return __awaiter(this, void 0, void 0, function* () {
100
- return util.promisify(fs.unlink)(filePath);
101
- });
102
- }
103
- exports.unlinkFile = unlinkFile;
104
- function getVersion(app) {
105
- return __awaiter(this, void 0, void 0, function* () {
106
- core.debug(`Checking ${app} --version`);
107
- let versionOutput = '';
108
- try {
109
- yield exec.exec(`${app} --version`, [], {
110
- ignoreReturnCode: true,
111
- silent: true,
112
- listeners: {
113
- stdout: (data) => (versionOutput += data.toString()),
114
- stderr: (data) => (versionOutput += data.toString())
115
- }
116
- });
117
- }
118
- catch (err) {
119
- core.debug(err.message);
120
- }
121
- versionOutput = versionOutput.trim();
122
- core.debug(versionOutput);
123
- return versionOutput;
124
- });
125
- }
126
- // Use zstandard if possible to maximize cache performance
127
- function getCompressionMethod() {
128
- return __awaiter(this, void 0, void 0, function* () {
129
- if (process.platform === 'win32' && !(yield isGnuTarInstalled())) {
130
- // Disable zstd due to bug https://github.com/actions/cache/issues/301
131
- return constants_1.CompressionMethod.Gzip;
132
- }
133
- const versionOutput = yield getVersion('zstd');
134
- const version = semver.clean(versionOutput);
135
- if (!versionOutput.toLowerCase().includes('zstd command line interface')) {
136
- // zstd is not installed
137
- return constants_1.CompressionMethod.Gzip;
138
- }
139
- else if (!version || semver.lt(version, 'v1.3.2')) {
140
- // zstd is installed but using a version earlier than v1.3.2
141
- // v1.3.2 is required to use the `--long` options in zstd
142
- return constants_1.CompressionMethod.ZstdWithoutLong;
143
- }
144
- else {
145
- return constants_1.CompressionMethod.Zstd;
146
- }
147
- });
148
- }
149
- exports.getCompressionMethod = getCompressionMethod;
150
- function getCacheFileName(compressionMethod) {
151
- return compressionMethod === constants_1.CompressionMethod.Gzip
152
- ? constants_1.CacheFilename.Gzip
153
- : constants_1.CacheFilename.Zstd;
154
- }
155
- exports.getCacheFileName = getCacheFileName;
156
- function isGnuTarInstalled() {
157
- return __awaiter(this, void 0, void 0, function* () {
158
- const versionOutput = yield getVersion('tar');
159
- return versionOutput.toLowerCase().includes('gnu tar');
160
- });
161
- }
162
- exports.isGnuTarInstalled = isGnuTarInstalled;
163
- function assertDefined(name, value) {
164
- if (value === undefined) {
165
- throw Error(`Expected ${name} but value was undefiend`);
166
- }
167
- return value;
168
- }
169
- exports.assertDefined = assertDefined;
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __asyncValues = (this && this.__asyncValues) || function (o) {
12
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
13
+ var m = o[Symbol.asyncIterator], i;
14
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
15
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
16
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
17
+ };
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
22
+ result["default"] = mod;
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ const core = __importStar(require("@actions/core"));
27
+ const exec = __importStar(require("@actions/exec"));
28
+ const glob = __importStar(require("@actions/glob"));
29
+ const io = __importStar(require("@actions/io"));
30
+ const fs = __importStar(require("fs"));
31
+ const path = __importStar(require("path"));
32
+ const semver = __importStar(require("semver"));
33
+ const util = __importStar(require("util"));
34
+ const uuid_1 = require("uuid");
35
+ const constants_1 = require("./constants");
36
+ // From https://github.com/actions/toolkit/blob/main/packages/tool-cache/src/tool-cache.ts#L23
37
+ function createTempDirectory() {
38
+ return __awaiter(this, void 0, void 0, function* () {
39
+ const IS_WINDOWS = process.platform === 'win32';
40
+ let tempDirectory = process.env['RUNNER_TEMP'] || '';
41
+ if (!tempDirectory) {
42
+ let baseLocation;
43
+ if (IS_WINDOWS) {
44
+ // On Windows use the USERPROFILE env variable
45
+ baseLocation = process.env['USERPROFILE'] || 'C:\\';
46
+ }
47
+ else {
48
+ if (process.platform === 'darwin') {
49
+ baseLocation = '/Users';
50
+ }
51
+ else {
52
+ baseLocation = '/home';
53
+ }
54
+ }
55
+ tempDirectory = path.join(baseLocation, 'actions', 'temp');
56
+ }
57
+ const dest = path.join(tempDirectory, uuid_1.v4());
58
+ yield io.mkdirP(dest);
59
+ return dest;
60
+ });
61
+ }
62
+ exports.createTempDirectory = createTempDirectory;
63
+ function getArchiveFileSizeInBytes(filePath) {
64
+ return fs.statSync(filePath).size;
65
+ }
66
+ exports.getArchiveFileSizeInBytes = getArchiveFileSizeInBytes;
67
+ function resolvePaths(patterns) {
68
+ var e_1, _a;
69
+ var _b;
70
+ return __awaiter(this, void 0, void 0, function* () {
71
+ const paths = [];
72
+ const workspace = (_b = process.env['GITHUB_WORKSPACE']) !== null && _b !== void 0 ? _b : process.cwd();
73
+ const globber = yield glob.create(patterns.join('\n'), {
74
+ implicitDescendants: false
75
+ });
76
+ try {
77
+ for (var _c = __asyncValues(globber.globGenerator()), _d; _d = yield _c.next(), !_d.done;) {
78
+ const file = _d.value;
79
+ const relativeFile = path
80
+ .relative(workspace, file)
81
+ .replace(new RegExp(`\\${path.sep}`, 'g'), '/');
82
+ core.debug(`Matched: ${relativeFile}`);
83
+ // Paths are made relative so the tar entries are all relative to the root of the workspace.
84
+ paths.push(`${relativeFile}`);
85
+ }
86
+ }
87
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
88
+ finally {
89
+ try {
90
+ if (_d && !_d.done && (_a = _c.return)) yield _a.call(_c);
91
+ }
92
+ finally { if (e_1) throw e_1.error; }
93
+ }
94
+ return paths;
95
+ });
96
+ }
97
+ exports.resolvePaths = resolvePaths;
98
+ function unlinkFile(filePath) {
99
+ return __awaiter(this, void 0, void 0, function* () {
100
+ return util.promisify(fs.unlink)(filePath);
101
+ });
102
+ }
103
+ exports.unlinkFile = unlinkFile;
104
+ function getVersion(app) {
105
+ return __awaiter(this, void 0, void 0, function* () {
106
+ core.debug(`Checking ${app} --version`);
107
+ let versionOutput = '';
108
+ try {
109
+ yield exec.exec(`${app} --version`, [], {
110
+ ignoreReturnCode: true,
111
+ silent: true,
112
+ listeners: {
113
+ stdout: (data) => (versionOutput += data.toString()),
114
+ stderr: (data) => (versionOutput += data.toString())
115
+ }
116
+ });
117
+ }
118
+ catch (err) {
119
+ core.debug(err.message);
120
+ }
121
+ versionOutput = versionOutput.trim();
122
+ core.debug(versionOutput);
123
+ return versionOutput;
124
+ });
125
+ }
126
+ // Use zstandard if possible to maximize cache performance
127
+ function getCompressionMethod() {
128
+ return __awaiter(this, void 0, void 0, function* () {
129
+ if (process.platform === 'win32' && !(yield isGnuTarInstalled())) {
130
+ // Disable zstd due to bug https://github.com/actions/cache/issues/301
131
+ return constants_1.CompressionMethod.Gzip;
132
+ }
133
+ const versionOutput = yield getVersion('zstd');
134
+ const version = semver.clean(versionOutput);
135
+ if (!versionOutput.toLowerCase().includes('zstd command line interface')) {
136
+ // zstd is not installed
137
+ return constants_1.CompressionMethod.Gzip;
138
+ }
139
+ else if (!version || semver.lt(version, 'v1.3.2')) {
140
+ // zstd is installed but using a version earlier than v1.3.2
141
+ // v1.3.2 is required to use the `--long` options in zstd
142
+ return constants_1.CompressionMethod.ZstdWithoutLong;
143
+ }
144
+ else {
145
+ return constants_1.CompressionMethod.Zstd;
146
+ }
147
+ });
148
+ }
149
+ exports.getCompressionMethod = getCompressionMethod;
150
+ function getCacheFileName(compressionMethod) {
151
+ return compressionMethod === constants_1.CompressionMethod.Gzip
152
+ ? constants_1.CacheFilename.Gzip
153
+ : constants_1.CacheFilename.Zstd;
154
+ }
155
+ exports.getCacheFileName = getCacheFileName;
156
+ function isGnuTarInstalled() {
157
+ return __awaiter(this, void 0, void 0, function* () {
158
+ const versionOutput = yield getVersion('tar');
159
+ return versionOutput.toLowerCase().includes('gnu tar');
160
+ });
161
+ }
162
+ exports.isGnuTarInstalled = isGnuTarInstalled;
163
+ function assertDefined(name, value) {
164
+ if (value === undefined) {
165
+ throw Error(`Expected ${name} but value was undefiend`);
166
+ }
167
+ return value;
168
+ }
169
+ exports.assertDefined = assertDefined;
170
170
  //# sourceMappingURL=cacheUtils.js.map
@@ -1,12 +1,12 @@
1
- export declare enum CacheFilename {
2
- Gzip = "cache.tgz",
3
- Zstd = "cache.tzst"
4
- }
5
- export declare enum CompressionMethod {
6
- Gzip = "gzip",
7
- ZstdWithoutLong = "zstd-without-long",
8
- Zstd = "zstd"
9
- }
10
- export declare const DefaultRetryAttempts = 2;
11
- export declare const DefaultRetryDelay = 5000;
12
- export declare const SocketTimeout = 5000;
1
+ export declare enum CacheFilename {
2
+ Gzip = "cache.tgz",
3
+ Zstd = "cache.tzst"
4
+ }
5
+ export declare enum CompressionMethod {
6
+ Gzip = "gzip",
7
+ ZstdWithoutLong = "zstd-without-long",
8
+ Zstd = "zstd"
9
+ }
10
+ export declare const DefaultRetryAttempts = 2;
11
+ export declare const DefaultRetryDelay = 5000;
12
+ export declare const SocketTimeout = 5000;
@@ -1,24 +1,24 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var CacheFilename;
4
- (function (CacheFilename) {
5
- CacheFilename["Gzip"] = "cache.tgz";
6
- CacheFilename["Zstd"] = "cache.tzst";
7
- })(CacheFilename = exports.CacheFilename || (exports.CacheFilename = {}));
8
- var CompressionMethod;
9
- (function (CompressionMethod) {
10
- CompressionMethod["Gzip"] = "gzip";
11
- // Long range mode was added to zstd in v1.3.2.
12
- // This enum is for earlier version of zstd that does not have --long support
13
- CompressionMethod["ZstdWithoutLong"] = "zstd-without-long";
14
- CompressionMethod["Zstd"] = "zstd";
15
- })(CompressionMethod = exports.CompressionMethod || (exports.CompressionMethod = {}));
16
- // The default number of retry attempts.
17
- exports.DefaultRetryAttempts = 2;
18
- // The default delay in milliseconds between retry attempts.
19
- exports.DefaultRetryDelay = 5000;
20
- // Socket timeout in milliseconds during download. If no traffic is received
21
- // over the socket during this period, the socket is destroyed and the download
22
- // is aborted.
23
- exports.SocketTimeout = 5000;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var CacheFilename;
4
+ (function (CacheFilename) {
5
+ CacheFilename["Gzip"] = "cache.tgz";
6
+ CacheFilename["Zstd"] = "cache.tzst";
7
+ })(CacheFilename = exports.CacheFilename || (exports.CacheFilename = {}));
8
+ var CompressionMethod;
9
+ (function (CompressionMethod) {
10
+ CompressionMethod["Gzip"] = "gzip";
11
+ // Long range mode was added to zstd in v1.3.2.
12
+ // This enum is for earlier version of zstd that does not have --long support
13
+ CompressionMethod["ZstdWithoutLong"] = "zstd-without-long";
14
+ CompressionMethod["Zstd"] = "zstd";
15
+ })(CompressionMethod = exports.CompressionMethod || (exports.CompressionMethod = {}));
16
+ // The default number of retry attempts.
17
+ exports.DefaultRetryAttempts = 2;
18
+ // The default delay in milliseconds between retry attempts.
19
+ exports.DefaultRetryDelay = 5000;
20
+ // Socket timeout in milliseconds during download. If no traffic is received
21
+ // over the socket during this period, the socket is destroyed and the download
22
+ // is aborted.
23
+ exports.SocketTimeout = 5000;
24
24
  //# sourceMappingURL=constants.js.map
@@ -1,74 +1,74 @@
1
- import { TransferProgressEvent } from '@azure/ms-rest-js';
2
- import { DownloadOptions } from '../options';
3
- /**
4
- * Class for tracking the download state and displaying stats.
5
- */
6
- export declare class DownloadProgress {
7
- contentLength: number;
8
- segmentIndex: number;
9
- segmentSize: number;
10
- segmentOffset: number;
11
- receivedBytes: number;
12
- startTime: number;
13
- displayedComplete: boolean;
14
- timeoutHandle?: ReturnType<typeof setTimeout>;
15
- constructor(contentLength: number);
16
- /**
17
- * Progress to the next segment. Only call this method when the previous segment
18
- * is complete.
19
- *
20
- * @param segmentSize the length of the next segment
21
- */
22
- nextSegment(segmentSize: number): void;
23
- /**
24
- * Sets the number of bytes received for the current segment.
25
- *
26
- * @param receivedBytes the number of bytes received
27
- */
28
- setReceivedBytes(receivedBytes: number): void;
29
- /**
30
- * Returns the total number of bytes transferred.
31
- */
32
- getTransferredBytes(): number;
33
- /**
34
- * Returns true if the download is complete.
35
- */
36
- isDone(): boolean;
37
- /**
38
- * Prints the current download stats. Once the download completes, this will print one
39
- * last line and then stop.
40
- */
41
- display(): void;
42
- /**
43
- * Returns a function used to handle TransferProgressEvents.
44
- */
45
- onProgress(): (progress: TransferProgressEvent) => void;
46
- /**
47
- * Starts the timer that displays the stats.
48
- *
49
- * @param delayInMs the delay between each write
50
- */
51
- startDisplayTimer(delayInMs?: number): void;
52
- /**
53
- * Stops the timer that displays the stats. As this typically indicates the download
54
- * is complete, this will display one last line, unless the last line has already
55
- * been written.
56
- */
57
- stopDisplayTimer(): void;
58
- }
59
- /**
60
- * Download the cache using the Actions toolkit http-client
61
- *
62
- * @param archiveLocation the URL for the cache
63
- * @param archivePath the local path where the cache is saved
64
- */
65
- export declare function downloadCacheHttpClient(archiveLocation: string, archivePath: string): Promise<void>;
66
- /**
67
- * Download the cache using the Azure Storage SDK. Only call this method if the
68
- * URL points to an Azure Storage endpoint.
69
- *
70
- * @param archiveLocation the URL for the cache
71
- * @param archivePath the local path where the cache is saved
72
- * @param options the download options with the defaults set
73
- */
74
- export declare function downloadCacheStorageSDK(archiveLocation: string, archivePath: string, options: DownloadOptions): Promise<void>;
1
+ import { TransferProgressEvent } from '@azure/ms-rest-js';
2
+ import { DownloadOptions } from '../options';
3
+ /**
4
+ * Class for tracking the download state and displaying stats.
5
+ */
6
+ export declare class DownloadProgress {
7
+ contentLength: number;
8
+ segmentIndex: number;
9
+ segmentSize: number;
10
+ segmentOffset: number;
11
+ receivedBytes: number;
12
+ startTime: number;
13
+ displayedComplete: boolean;
14
+ timeoutHandle?: ReturnType<typeof setTimeout>;
15
+ constructor(contentLength: number);
16
+ /**
17
+ * Progress to the next segment. Only call this method when the previous segment
18
+ * is complete.
19
+ *
20
+ * @param segmentSize the length of the next segment
21
+ */
22
+ nextSegment(segmentSize: number): void;
23
+ /**
24
+ * Sets the number of bytes received for the current segment.
25
+ *
26
+ * @param receivedBytes the number of bytes received
27
+ */
28
+ setReceivedBytes(receivedBytes: number): void;
29
+ /**
30
+ * Returns the total number of bytes transferred.
31
+ */
32
+ getTransferredBytes(): number;
33
+ /**
34
+ * Returns true if the download is complete.
35
+ */
36
+ isDone(): boolean;
37
+ /**
38
+ * Prints the current download stats. Once the download completes, this will print one
39
+ * last line and then stop.
40
+ */
41
+ display(): void;
42
+ /**
43
+ * Returns a function used to handle TransferProgressEvents.
44
+ */
45
+ onProgress(): (progress: TransferProgressEvent) => void;
46
+ /**
47
+ * Starts the timer that displays the stats.
48
+ *
49
+ * @param delayInMs the delay between each write
50
+ */
51
+ startDisplayTimer(delayInMs?: number): void;
52
+ /**
53
+ * Stops the timer that displays the stats. As this typically indicates the download
54
+ * is complete, this will display one last line, unless the last line has already
55
+ * been written.
56
+ */
57
+ stopDisplayTimer(): void;
58
+ }
59
+ /**
60
+ * Download the cache using the Actions toolkit http-client
61
+ *
62
+ * @param archiveLocation the URL for the cache
63
+ * @param archivePath the local path where the cache is saved
64
+ */
65
+ export declare function downloadCacheHttpClient(archiveLocation: string, archivePath: string): Promise<void>;
66
+ /**
67
+ * Download the cache using the Azure Storage SDK. Only call this method if the
68
+ * URL points to an Azure Storage endpoint.
69
+ *
70
+ * @param archiveLocation the URL for the cache
71
+ * @param archivePath the local path where the cache is saved
72
+ * @param options the download options with the defaults set
73
+ */
74
+ export declare function downloadCacheStorageSDK(archiveLocation: string, archivePath: string, options: DownloadOptions): Promise<void>;