@rharkor/caching-for-turbo 2.1.0 → 2.1.2
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 +20 -60
- package/dist/cli/index.js +290 -75
- package/dist/cli/index.js.map +1 -1
- package/dist/setup/index.js +165 -24
- package/dist/setup/index.js.map +1 -1
- package/package.json +2 -62
- package/.env.example +0 -10
- package/action.yml +0 -61
package/dist/cli/index.js
CHANGED
|
@@ -11242,6 +11242,7 @@ var ChecksumType = {
|
|
|
11242
11242
|
};
|
|
11243
11243
|
var ServerSideEncryption = {
|
|
11244
11244
|
AES256: "AES256",
|
|
11245
|
+
aws_fsx: "aws:fsx",
|
|
11245
11246
|
aws_kms: "aws:kms",
|
|
11246
11247
|
aws_kms_dsse: "aws:kms:dsse"
|
|
11247
11248
|
};
|
|
@@ -11276,6 +11277,7 @@ var ObjectLockMode = {
|
|
|
11276
11277
|
var StorageClass = {
|
|
11277
11278
|
DEEP_ARCHIVE: "DEEP_ARCHIVE",
|
|
11278
11279
|
EXPRESS_ONEZONE: "EXPRESS_ONEZONE",
|
|
11280
|
+
FSX_OPENZFS: "FSX_OPENZFS",
|
|
11279
11281
|
GLACIER: "GLACIER",
|
|
11280
11282
|
GLACIER_IR: "GLACIER_IR",
|
|
11281
11283
|
INTELLIGENT_TIERING: "INTELLIGENT_TIERING",
|
|
@@ -11680,6 +11682,7 @@ var EncodingType = {
|
|
|
11680
11682
|
var ObjectStorageClass = {
|
|
11681
11683
|
DEEP_ARCHIVE: "DEEP_ARCHIVE",
|
|
11682
11684
|
EXPRESS_ONEZONE: "EXPRESS_ONEZONE",
|
|
11685
|
+
FSX_OPENZFS: "FSX_OPENZFS",
|
|
11683
11686
|
GLACIER: "GLACIER",
|
|
11684
11687
|
GLACIER_IR: "GLACIER_IR",
|
|
11685
11688
|
INTELLIGENT_TIERING: "INTELLIGENT_TIERING",
|
|
@@ -16043,7 +16046,7 @@ var de_SelectObjectContentEventStream = /* @__PURE__ */ __name((output, context)
|
|
|
16043
16046
|
End: await de_EndEvent_event(event["End"], context)
|
|
16044
16047
|
};
|
|
16045
16048
|
}
|
|
16046
|
-
return { $unknown:
|
|
16049
|
+
return { $unknown: event };
|
|
16047
16050
|
});
|
|
16048
16051
|
}, "de_SelectObjectContentEventStream");
|
|
16049
16052
|
var de_ContinuationEvent_event = /* @__PURE__ */ __name(async (output, context) => {
|
|
@@ -79117,10 +79120,42 @@ var NumericValue = class {
|
|
|
79117
79120
|
constructor(string, type) {
|
|
79118
79121
|
this.string = string;
|
|
79119
79122
|
this.type = type;
|
|
79123
|
+
let dot = 0;
|
|
79124
|
+
for (let i = 0; i < string.length; ++i) {
|
|
79125
|
+
const char = string.charCodeAt(i);
|
|
79126
|
+
if (i === 0 && char === 45) {
|
|
79127
|
+
continue;
|
|
79128
|
+
}
|
|
79129
|
+
if (char === 46) {
|
|
79130
|
+
if (dot) {
|
|
79131
|
+
throw new Error("@smithy/core/serde - NumericValue must contain at most one decimal point.");
|
|
79132
|
+
}
|
|
79133
|
+
dot = 1;
|
|
79134
|
+
continue;
|
|
79135
|
+
}
|
|
79136
|
+
if (char < 48 || char > 57) {
|
|
79137
|
+
throw new Error(
|
|
79138
|
+
`@smithy/core/serde - NumericValue must only contain [0-9], at most one decimal point ".", and an optional negation prefix "-".`
|
|
79139
|
+
);
|
|
79140
|
+
}
|
|
79141
|
+
}
|
|
79142
|
+
}
|
|
79143
|
+
toString() {
|
|
79144
|
+
return this.string;
|
|
79145
|
+
}
|
|
79146
|
+
[Symbol.hasInstance](object) {
|
|
79147
|
+
if (!object || typeof object !== "object") {
|
|
79148
|
+
return false;
|
|
79149
|
+
}
|
|
79150
|
+
const _nv = object;
|
|
79151
|
+
if (typeof _nv.string === "string" && typeof _nv.type === "string" && _nv.constructor?.name === "NumericValue") {
|
|
79152
|
+
return true;
|
|
79153
|
+
}
|
|
79154
|
+
return false;
|
|
79120
79155
|
}
|
|
79121
79156
|
};
|
|
79122
|
-
function nv(
|
|
79123
|
-
return new NumericValue(
|
|
79157
|
+
function nv(input) {
|
|
79158
|
+
return new NumericValue(String(input), "bigDecimal");
|
|
79124
79159
|
}
|
|
79125
79160
|
// Annotate the CommonJS export names for ESM import in node:
|
|
79126
79161
|
0 && (0);
|
|
@@ -81004,6 +81039,7 @@ __export(src_exports, {
|
|
|
81004
81039
|
getEndpointFromInstructions: () => getEndpointFromInstructions,
|
|
81005
81040
|
getEndpointPlugin: () => getEndpointPlugin,
|
|
81006
81041
|
resolveEndpointConfig: () => resolveEndpointConfig,
|
|
81042
|
+
resolveEndpointRequiredConfig: () => resolveEndpointRequiredConfig,
|
|
81007
81043
|
resolveParams: () => resolveParams,
|
|
81008
81044
|
toEndpointV1: () => toEndpointV1
|
|
81009
81045
|
});
|
|
@@ -81244,6 +81280,19 @@ var resolveEndpointConfig = /* @__PURE__ */ __name((input) => {
|
|
|
81244
81280
|
};
|
|
81245
81281
|
return resolvedConfig;
|
|
81246
81282
|
}, "resolveEndpointConfig");
|
|
81283
|
+
|
|
81284
|
+
// src/resolveEndpointRequiredConfig.ts
|
|
81285
|
+
var resolveEndpointRequiredConfig = /* @__PURE__ */ __name((input) => {
|
|
81286
|
+
const { endpoint } = input;
|
|
81287
|
+
if (endpoint === void 0) {
|
|
81288
|
+
input.endpoint = async () => {
|
|
81289
|
+
throw new Error(
|
|
81290
|
+
"@smithy/middleware-endpoint: (default endpointRuleSet) endpoint is not set - you must configure an endpoint."
|
|
81291
|
+
);
|
|
81292
|
+
};
|
|
81293
|
+
}
|
|
81294
|
+
return input;
|
|
81295
|
+
}, "resolveEndpointRequiredConfig");
|
|
81247
81296
|
// Annotate the CommonJS export names for ESM import in node:
|
|
81248
81297
|
|
|
81249
81298
|
0 && (0);
|
|
@@ -84324,6 +84373,7 @@ var THROTTLING_ERROR_CODES = [
|
|
|
84324
84373
|
var TRANSIENT_ERROR_CODES = ["TimeoutError", "RequestTimeout", "RequestTimeoutException"];
|
|
84325
84374
|
var TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504];
|
|
84326
84375
|
var NODEJS_TIMEOUT_ERROR_CODES = ["ECONNRESET", "ECONNREFUSED", "EPIPE", "ETIMEDOUT"];
|
|
84376
|
+
var NODEJS_NETWORK_ERROR_CODES = ["EHOSTUNREACH", "ENETUNREACH", "ENOTFOUND"];
|
|
84327
84377
|
|
|
84328
84378
|
// src/index.ts
|
|
84329
84379
|
var isRetryableByTrait = /* @__PURE__ */ __name((error) => error.$retryable !== void 0, "isRetryableByTrait");
|
|
@@ -84349,7 +84399,7 @@ var isBrowserNetworkError = /* @__PURE__ */ __name((error) => {
|
|
|
84349
84399
|
return errorMessages.has(error.message);
|
|
84350
84400
|
}, "isBrowserNetworkError");
|
|
84351
84401
|
var isThrottlingError = /* @__PURE__ */ __name((error) => error.$metadata?.httpStatusCode === 429 || THROTTLING_ERROR_CODES.includes(error.name) || error.$retryable?.throttling == true, "isThrottlingError");
|
|
84352
|
-
var isTransientError = /* @__PURE__ */ __name((error, depth = 0) => isClockSkewCorrectedError(error) || TRANSIENT_ERROR_CODES.includes(error.name) || NODEJS_TIMEOUT_ERROR_CODES.includes(error?.code || "") || TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0) || isBrowserNetworkError(error) || error.cause !== void 0 && depth <= 10 && isTransientError(error.cause, depth + 1), "isTransientError");
|
|
84402
|
+
var isTransientError = /* @__PURE__ */ __name((error, depth = 0) => isClockSkewCorrectedError(error) || TRANSIENT_ERROR_CODES.includes(error.name) || NODEJS_TIMEOUT_ERROR_CODES.includes(error?.code || "") || NODEJS_NETWORK_ERROR_CODES.includes(error?.code || "") || TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0) || isBrowserNetworkError(error) || error.cause !== void 0 && depth <= 10 && isTransientError(error.cause, depth + 1), "isTransientError");
|
|
84353
84403
|
var isServerError = /* @__PURE__ */ __name((error) => {
|
|
84354
84404
|
if (error.$metadata?.httpStatusCode !== void 0) {
|
|
84355
84405
|
const statusCode = error.$metadata.httpStatusCode;
|
|
@@ -88701,15 +88751,24 @@ var validateWaiterOptions = /* @__PURE__ */ __name((options) => {
|
|
|
88701
88751
|
}, "validateWaiterOptions");
|
|
88702
88752
|
|
|
88703
88753
|
// src/createWaiter.ts
|
|
88704
|
-
var abortTimeout = /* @__PURE__ */ __name(
|
|
88705
|
-
|
|
88706
|
-
|
|
88754
|
+
var abortTimeout = /* @__PURE__ */ __name((abortSignal) => {
|
|
88755
|
+
let onAbort;
|
|
88756
|
+
const promise = new Promise((resolve) => {
|
|
88757
|
+
onAbort = /* @__PURE__ */ __name(() => resolve({ state: "ABORTED" /* ABORTED */ }), "onAbort");
|
|
88707
88758
|
if (typeof abortSignal.addEventListener === "function") {
|
|
88708
88759
|
abortSignal.addEventListener("abort", onAbort);
|
|
88709
88760
|
} else {
|
|
88710
88761
|
abortSignal.onabort = onAbort;
|
|
88711
88762
|
}
|
|
88712
88763
|
});
|
|
88764
|
+
return {
|
|
88765
|
+
clearListener() {
|
|
88766
|
+
if (typeof abortSignal.removeEventListener === "function") {
|
|
88767
|
+
abortSignal.removeEventListener("abort", onAbort);
|
|
88768
|
+
}
|
|
88769
|
+
},
|
|
88770
|
+
aborted: promise
|
|
88771
|
+
};
|
|
88713
88772
|
}, "abortTimeout");
|
|
88714
88773
|
var createWaiter = /* @__PURE__ */ __name(async (options, input, acceptorChecks) => {
|
|
88715
88774
|
const params = {
|
|
@@ -88718,13 +88777,23 @@ var createWaiter = /* @__PURE__ */ __name(async (options, input, acceptorChecks)
|
|
|
88718
88777
|
};
|
|
88719
88778
|
validateWaiterOptions(params);
|
|
88720
88779
|
const exitConditions = [runPolling(params, input, acceptorChecks)];
|
|
88721
|
-
|
|
88722
|
-
exitConditions.push(abortTimeout(options.abortController.signal));
|
|
88723
|
-
}
|
|
88780
|
+
const finalize = [];
|
|
88724
88781
|
if (options.abortSignal) {
|
|
88725
|
-
|
|
88782
|
+
const { aborted, clearListener } = abortTimeout(options.abortSignal);
|
|
88783
|
+
finalize.push(clearListener);
|
|
88784
|
+
exitConditions.push(aborted);
|
|
88785
|
+
}
|
|
88786
|
+
if (options.abortController?.signal) {
|
|
88787
|
+
const { aborted, clearListener } = abortTimeout(options.abortController.signal);
|
|
88788
|
+
finalize.push(clearListener);
|
|
88789
|
+
exitConditions.push(aborted);
|
|
88726
88790
|
}
|
|
88727
|
-
return Promise.race(exitConditions)
|
|
88791
|
+
return Promise.race(exitConditions).then((result) => {
|
|
88792
|
+
for (const fn of finalize) {
|
|
88793
|
+
fn();
|
|
88794
|
+
}
|
|
88795
|
+
return result;
|
|
88796
|
+
});
|
|
88728
88797
|
}, "createWaiter");
|
|
88729
88798
|
// Annotate the CommonJS export names for ESM import in node:
|
|
88730
88799
|
|
|
@@ -97382,10 +97451,11 @@ function parse (src) {
|
|
|
97382
97451
|
}
|
|
97383
97452
|
|
|
97384
97453
|
function _parseVault (options) {
|
|
97385
|
-
|
|
97454
|
+
options = options || {}
|
|
97386
97455
|
|
|
97387
|
-
|
|
97388
|
-
|
|
97456
|
+
const vaultPath = _vaultPath(options)
|
|
97457
|
+
options.path = vaultPath // parse .env.vault
|
|
97458
|
+
const result = DotenvModule.configDotenv(options)
|
|
97389
97459
|
if (!result.parsed) {
|
|
97390
97460
|
const err = new Error(`MISSING_DATA: Cannot parse ${vaultPath} for an unknown reason`)
|
|
97391
97461
|
err.code = 'MISSING_DATA'
|
|
@@ -97431,6 +97501,10 @@ function _debug (message) {
|
|
|
97431
97501
|
console.log(`[dotenv@${version}][DEBUG] ${message}`)
|
|
97432
97502
|
}
|
|
97433
97503
|
|
|
97504
|
+
function _log (message) {
|
|
97505
|
+
console.log(`[dotenv@${version}] ${message}`)
|
|
97506
|
+
}
|
|
97507
|
+
|
|
97434
97508
|
function _dotenvKey (options) {
|
|
97435
97509
|
// prioritize developer directly setting options.DOTENV_KEY
|
|
97436
97510
|
if (options && options.DOTENV_KEY && options.DOTENV_KEY.length > 0) {
|
|
@@ -97519,8 +97593,10 @@ function _resolveHome (envPath) {
|
|
|
97519
97593
|
|
|
97520
97594
|
function _configVault (options) {
|
|
97521
97595
|
const debug = Boolean(options && options.debug)
|
|
97522
|
-
|
|
97523
|
-
|
|
97596
|
+
const quiet = options && 'quiet' in options ? options.quiet : true
|
|
97597
|
+
|
|
97598
|
+
if (debug || !quiet) {
|
|
97599
|
+
_log('Loading env from encrypted .env.vault')
|
|
97524
97600
|
}
|
|
97525
97601
|
|
|
97526
97602
|
const parsed = DotenvModule._parseVault(options)
|
|
@@ -97539,6 +97615,7 @@ function configDotenv (options) {
|
|
|
97539
97615
|
const dotenvPath = path.resolve(process.cwd(), '.env')
|
|
97540
97616
|
let encoding = 'utf8'
|
|
97541
97617
|
const debug = Boolean(options && options.debug)
|
|
97618
|
+
const quiet = options && 'quiet' in options ? options.quiet : true
|
|
97542
97619
|
|
|
97543
97620
|
if (options && options.encoding) {
|
|
97544
97621
|
encoding = options.encoding
|
|
@@ -97585,6 +97662,24 @@ function configDotenv (options) {
|
|
|
97585
97662
|
|
|
97586
97663
|
DotenvModule.populate(processEnv, parsedAll, options)
|
|
97587
97664
|
|
|
97665
|
+
if (debug || !quiet) {
|
|
97666
|
+
const keysCount = Object.keys(parsedAll).length
|
|
97667
|
+
const shortPaths = []
|
|
97668
|
+
for (const filePath of optionPaths) {
|
|
97669
|
+
try {
|
|
97670
|
+
const relative = path.relative(process.cwd(), filePath)
|
|
97671
|
+
shortPaths.push(relative)
|
|
97672
|
+
} catch (e) {
|
|
97673
|
+
if (debug) {
|
|
97674
|
+
_debug(`Failed to load ${filePath} ${e.message}`)
|
|
97675
|
+
}
|
|
97676
|
+
lastError = e
|
|
97677
|
+
}
|
|
97678
|
+
}
|
|
97679
|
+
|
|
97680
|
+
_log(`injecting env (${keysCount}) from ${shortPaths.join(',')}`)
|
|
97681
|
+
}
|
|
97682
|
+
|
|
97588
97683
|
if (lastError) {
|
|
97589
97684
|
return { parsed: parsedAll, error: lastError }
|
|
97590
97685
|
} else {
|
|
@@ -200858,21 +200953,21 @@ module.exports = /*#__PURE__*/JSON.parse('{"name":"@actions/cache","version":"4.
|
|
|
200858
200953
|
/***/ 27413:
|
|
200859
200954
|
/***/ ((module) => {
|
|
200860
200955
|
|
|
200861
|
-
module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/client-s3","description":"AWS SDK for JavaScript S3 Client for Node.js, Browser and React Native","version":"3.
|
|
200956
|
+
module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/client-s3","description":"AWS SDK for JavaScript S3 Client for Node.js, Browser and React Native","version":"3.839.0","scripts":{"build":"concurrently \'yarn:build:cjs\' \'yarn:build:es\' \'yarn:build:types\'","build:cjs":"node ../../scripts/compilation/inline client-s3","build:es":"tsc -p tsconfig.es.json","build:include:deps":"lerna run --scope $npm_package_name --include-dependencies build","build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4","clean":"rimraf ./dist-* && rimraf *.tsbuildinfo","extract:docs":"api-extractor run --local","generate:client":"node ../../scripts/generate-clients/single-service --solo s3","test":"yarn g:vitest run","test:browser":"node ./test/browser-build/esbuild && yarn g:vitest run -c vitest.config.browser.ts","test:browser:watch":"node ./test/browser-build/esbuild && yarn g:vitest watch -c vitest.config.browser.ts","test:e2e":"yarn g:vitest run -c vitest.config.e2e.ts && yarn test:browser","test:e2e:watch":"yarn g:vitest watch -c vitest.config.e2e.ts","test:integration":"yarn g:vitest run -c vitest.config.integ.ts","test:integration:watch":"yarn g:vitest watch -c vitest.config.integ.ts","test:watch":"yarn g:vitest watch"},"main":"./dist-cjs/index.js","types":"./dist-types/index.d.ts","module":"./dist-es/index.js","sideEffects":false,"dependencies":{"@aws-crypto/sha1-browser":"5.2.0","@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"3.839.0","@aws-sdk/credential-provider-node":"3.839.0","@aws-sdk/middleware-bucket-endpoint":"3.830.0","@aws-sdk/middleware-expect-continue":"3.821.0","@aws-sdk/middleware-flexible-checksums":"3.839.0","@aws-sdk/middleware-host-header":"3.821.0","@aws-sdk/middleware-location-constraint":"3.821.0","@aws-sdk/middleware-logger":"3.821.0","@aws-sdk/middleware-recursion-detection":"3.821.0","@aws-sdk/middleware-sdk-s3":"3.839.0","@aws-sdk/middleware-ssec":"3.821.0","@aws-sdk/middleware-user-agent":"3.839.0","@aws-sdk/region-config-resolver":"3.821.0","@aws-sdk/signature-v4-multi-region":"3.839.0","@aws-sdk/types":"3.821.0","@aws-sdk/util-endpoints":"3.828.0","@aws-sdk/util-user-agent-browser":"3.821.0","@aws-sdk/util-user-agent-node":"3.839.0","@aws-sdk/xml-builder":"3.821.0","@smithy/config-resolver":"^4.1.4","@smithy/core":"^3.6.0","@smithy/eventstream-serde-browser":"^4.0.4","@smithy/eventstream-serde-config-resolver":"^4.1.2","@smithy/eventstream-serde-node":"^4.0.4","@smithy/fetch-http-handler":"^5.0.4","@smithy/hash-blob-browser":"^4.0.4","@smithy/hash-node":"^4.0.4","@smithy/hash-stream-node":"^4.0.4","@smithy/invalid-dependency":"^4.0.4","@smithy/md5-js":"^4.0.4","@smithy/middleware-content-length":"^4.0.4","@smithy/middleware-endpoint":"^4.1.13","@smithy/middleware-retry":"^4.1.14","@smithy/middleware-serde":"^4.0.8","@smithy/middleware-stack":"^4.0.4","@smithy/node-config-provider":"^4.1.3","@smithy/node-http-handler":"^4.0.6","@smithy/protocol-http":"^5.1.2","@smithy/smithy-client":"^4.4.5","@smithy/types":"^4.3.1","@smithy/url-parser":"^4.0.4","@smithy/util-base64":"^4.0.0","@smithy/util-body-length-browser":"^4.0.0","@smithy/util-body-length-node":"^4.0.0","@smithy/util-defaults-mode-browser":"^4.0.21","@smithy/util-defaults-mode-node":"^4.0.21","@smithy/util-endpoints":"^3.0.6","@smithy/util-middleware":"^4.0.4","@smithy/util-retry":"^4.0.6","@smithy/util-stream":"^4.2.2","@smithy/util-utf8":"^4.0.0","@smithy/util-waiter":"^4.0.6","@types/uuid":"^9.0.1","tslib":"^2.6.2","uuid":"^9.0.1"},"devDependencies":{"@aws-sdk/signature-v4-crt":"3.839.0","@tsconfig/node18":"18.2.4","@types/node":"^18.19.69","concurrently":"7.0.0","downlevel-dts":"0.10.1","rimraf":"3.0.2","typescript":"~5.8.3"},"engines":{"node":">=18.0.0"},"typesVersions":{"<4.0":{"dist-types/*":["dist-types/ts3.4/*"]}},"files":["dist-*/**"],"author":{"name":"AWS SDK for JavaScript Team","url":"https://aws.amazon.com/javascript/"},"license":"Apache-2.0","browser":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.browser"},"react-native":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.native"},"homepage":"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-s3","repository":{"type":"git","url":"https://github.com/aws/aws-sdk-js-v3.git","directory":"clients/client-s3"}}');
|
|
200862
200957
|
|
|
200863
200958
|
/***/ }),
|
|
200864
200959
|
|
|
200865
200960
|
/***/ 45188:
|
|
200866
200961
|
/***/ ((module) => {
|
|
200867
200962
|
|
|
200868
|
-
module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/client-sso","description":"AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native","version":"3.
|
|
200963
|
+
module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/client-sso","description":"AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native","version":"3.839.0","scripts":{"build":"concurrently \'yarn:build:cjs\' \'yarn:build:es\' \'yarn:build:types\'","build:cjs":"node ../../scripts/compilation/inline client-sso","build:es":"tsc -p tsconfig.es.json","build:include:deps":"lerna run --scope $npm_package_name --include-dependencies build","build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4","clean":"rimraf ./dist-* && rimraf *.tsbuildinfo","extract:docs":"api-extractor run --local","generate:client":"node ../../scripts/generate-clients/single-service --solo sso"},"main":"./dist-cjs/index.js","types":"./dist-types/index.d.ts","module":"./dist-es/index.js","sideEffects":false,"dependencies":{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"3.839.0","@aws-sdk/middleware-host-header":"3.821.0","@aws-sdk/middleware-logger":"3.821.0","@aws-sdk/middleware-recursion-detection":"3.821.0","@aws-sdk/middleware-user-agent":"3.839.0","@aws-sdk/region-config-resolver":"3.821.0","@aws-sdk/types":"3.821.0","@aws-sdk/util-endpoints":"3.828.0","@aws-sdk/util-user-agent-browser":"3.821.0","@aws-sdk/util-user-agent-node":"3.839.0","@smithy/config-resolver":"^4.1.4","@smithy/core":"^3.6.0","@smithy/fetch-http-handler":"^5.0.4","@smithy/hash-node":"^4.0.4","@smithy/invalid-dependency":"^4.0.4","@smithy/middleware-content-length":"^4.0.4","@smithy/middleware-endpoint":"^4.1.13","@smithy/middleware-retry":"^4.1.14","@smithy/middleware-serde":"^4.0.8","@smithy/middleware-stack":"^4.0.4","@smithy/node-config-provider":"^4.1.3","@smithy/node-http-handler":"^4.0.6","@smithy/protocol-http":"^5.1.2","@smithy/smithy-client":"^4.4.5","@smithy/types":"^4.3.1","@smithy/url-parser":"^4.0.4","@smithy/util-base64":"^4.0.0","@smithy/util-body-length-browser":"^4.0.0","@smithy/util-body-length-node":"^4.0.0","@smithy/util-defaults-mode-browser":"^4.0.21","@smithy/util-defaults-mode-node":"^4.0.21","@smithy/util-endpoints":"^3.0.6","@smithy/util-middleware":"^4.0.4","@smithy/util-retry":"^4.0.6","@smithy/util-utf8":"^4.0.0","tslib":"^2.6.2"},"devDependencies":{"@tsconfig/node18":"18.2.4","@types/node":"^18.19.69","concurrently":"7.0.0","downlevel-dts":"0.10.1","rimraf":"3.0.2","typescript":"~5.8.3"},"engines":{"node":">=18.0.0"},"typesVersions":{"<4.0":{"dist-types/*":["dist-types/ts3.4/*"]}},"files":["dist-*/**"],"author":{"name":"AWS SDK for JavaScript Team","url":"https://aws.amazon.com/javascript/"},"license":"Apache-2.0","browser":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.browser"},"react-native":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.native"},"homepage":"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso","repository":{"type":"git","url":"https://github.com/aws/aws-sdk-js-v3.git","directory":"clients/client-sso"}}');
|
|
200869
200964
|
|
|
200870
200965
|
/***/ }),
|
|
200871
200966
|
|
|
200872
200967
|
/***/ 39955:
|
|
200873
200968
|
/***/ ((module) => {
|
|
200874
200969
|
|
|
200875
|
-
module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/nested-clients","version":"3.
|
|
200970
|
+
module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/nested-clients","version":"3.839.0","description":"Nested clients for AWS SDK packages.","main":"./dist-cjs/index.js","module":"./dist-es/index.js","types":"./dist-types/index.d.ts","scripts":{"build":"yarn lint && concurrently \'yarn:build:cjs\' \'yarn:build:es\' \'yarn:build:types\'","build:cjs":"node ../../scripts/compilation/inline nested-clients","build:es":"tsc -p tsconfig.es.json","build:include:deps":"lerna run --scope $npm_package_name --include-dependencies build","build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4","clean":"rimraf ./dist-* && rimraf *.tsbuildinfo","lint":"node ../../scripts/validation/submodules-linter.js --pkg nested-clients","test":"yarn g:vitest run","test:watch":"yarn g:vitest watch"},"engines":{"node":">=18.0.0"},"author":{"name":"AWS SDK for JavaScript Team","url":"https://aws.amazon.com/javascript/"},"license":"Apache-2.0","dependencies":{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"3.839.0","@aws-sdk/middleware-host-header":"3.821.0","@aws-sdk/middleware-logger":"3.821.0","@aws-sdk/middleware-recursion-detection":"3.821.0","@aws-sdk/middleware-user-agent":"3.839.0","@aws-sdk/region-config-resolver":"3.821.0","@aws-sdk/types":"3.821.0","@aws-sdk/util-endpoints":"3.828.0","@aws-sdk/util-user-agent-browser":"3.821.0","@aws-sdk/util-user-agent-node":"3.839.0","@smithy/config-resolver":"^4.1.4","@smithy/core":"^3.6.0","@smithy/fetch-http-handler":"^5.0.4","@smithy/hash-node":"^4.0.4","@smithy/invalid-dependency":"^4.0.4","@smithy/middleware-content-length":"^4.0.4","@smithy/middleware-endpoint":"^4.1.13","@smithy/middleware-retry":"^4.1.14","@smithy/middleware-serde":"^4.0.8","@smithy/middleware-stack":"^4.0.4","@smithy/node-config-provider":"^4.1.3","@smithy/node-http-handler":"^4.0.6","@smithy/protocol-http":"^5.1.2","@smithy/smithy-client":"^4.4.5","@smithy/types":"^4.3.1","@smithy/url-parser":"^4.0.4","@smithy/util-base64":"^4.0.0","@smithy/util-body-length-browser":"^4.0.0","@smithy/util-body-length-node":"^4.0.0","@smithy/util-defaults-mode-browser":"^4.0.21","@smithy/util-defaults-mode-node":"^4.0.21","@smithy/util-endpoints":"^3.0.6","@smithy/util-middleware":"^4.0.4","@smithy/util-retry":"^4.0.6","@smithy/util-utf8":"^4.0.0","tslib":"^2.6.2"},"devDependencies":{"concurrently":"7.0.0","downlevel-dts":"0.10.1","rimraf":"3.0.2","typescript":"~5.8.3"},"typesVersions":{"<4.0":{"dist-types/*":["dist-types/ts3.4/*"]}},"files":["./sso-oidc.d.ts","./sso-oidc.js","./sts.d.ts","./sts.js","dist-*/**"],"browser":{"./dist-es/submodules/sso-oidc/runtimeConfig":"./dist-es/submodules/sso-oidc/runtimeConfig.browser","./dist-es/submodules/sts/runtimeConfig":"./dist-es/submodules/sts/runtimeConfig.browser"},"react-native":{},"homepage":"https://github.com/aws/aws-sdk-js-v3/tree/main/packages/nested-clients","repository":{"type":"git","url":"https://github.com/aws/aws-sdk-js-v3.git","directory":"packages/nested-clients"},"exports":{"./sso-oidc":{"types":"./dist-types/submodules/sso-oidc/index.d.ts","module":"./dist-es/submodules/sso-oidc/index.js","node":"./dist-cjs/submodules/sso-oidc/index.js","import":"./dist-es/submodules/sso-oidc/index.js","require":"./dist-cjs/submodules/sso-oidc/index.js"},"./sts":{"types":"./dist-types/submodules/sts/index.d.ts","module":"./dist-es/submodules/sts/index.js","node":"./dist-cjs/submodules/sts/index.js","import":"./dist-es/submodules/sts/index.js","require":"./dist-cjs/submodules/sts/index.js"}}}');
|
|
200876
200971
|
|
|
200877
200972
|
/***/ }),
|
|
200878
200973
|
|
|
@@ -200907,7 +201002,7 @@ module.exports = /*#__PURE__*/JSON.parse('{"$schema":"http://json-schema.org/dra
|
|
|
200907
201002
|
/***/ 80056:
|
|
200908
201003
|
/***/ ((module) => {
|
|
200909
201004
|
|
|
200910
|
-
module.exports = /*#__PURE__*/JSON.parse('{"name":"dotenv","version":"16.
|
|
201005
|
+
module.exports = /*#__PURE__*/JSON.parse('{"name":"dotenv","version":"16.6.1","description":"Loads environment variables from .env file","main":"lib/main.js","types":"lib/main.d.ts","exports":{".":{"types":"./lib/main.d.ts","require":"./lib/main.js","default":"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},"scripts":{"dts-check":"tsc --project tests/types/tsconfig.json","lint":"standard","pretest":"npm run lint && npm run dts-check","test":"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov","prerelease":"npm test","release":"standard-version"},"repository":{"type":"git","url":"git://github.com/motdotla/dotenv.git"},"homepage":"https://github.com/motdotla/dotenv#readme","funding":"https://dotenvx.com","keywords":["dotenv","env",".env","environment","variables","config","settings"],"readmeFilename":"README.md","license":"BSD-2-Clause","devDependencies":{"@types/node":"^18.11.3","decache":"^4.6.2","sinon":"^14.0.1","standard":"^17.0.0","standard-version":"^9.5.0","tap":"^19.2.0","typescript":"^4.8.4"},"engines":{"node":">=12"},"browser":{"fs":false}}');
|
|
200911
201006
|
|
|
200912
201007
|
/***/ }),
|
|
200913
201008
|
|
|
@@ -201614,7 +201709,7 @@ var lib_storage_dist_cjs = __nccwpck_require__(22358);
|
|
|
201614
201709
|
|
|
201615
201710
|
|
|
201616
201711
|
// Helper function to get input value, prioritizing environment variables for local development
|
|
201617
|
-
const s3_getInput = (name,
|
|
201712
|
+
const s3_getInput = (name, envNames) => {
|
|
201618
201713
|
// In GitHub Actions context, try core.getInput first
|
|
201619
201714
|
if (process.env.GITHUB_ACTIONS === 'true') {
|
|
201620
201715
|
const coreInput = core_core.getInput(name);
|
|
@@ -201622,16 +201717,35 @@ const s3_getInput = (name, envName) => {
|
|
|
201622
201717
|
return coreInput;
|
|
201623
201718
|
}
|
|
201624
201719
|
// Fall back to environment variable
|
|
201625
|
-
const
|
|
201626
|
-
|
|
201720
|
+
const envVars = envNames || [name.toUpperCase().replace(/-/g, '_')];
|
|
201721
|
+
for (const envVar of envVars) {
|
|
201722
|
+
if (process.env[envVar]) {
|
|
201723
|
+
return process.env[envVar];
|
|
201724
|
+
}
|
|
201725
|
+
}
|
|
201726
|
+
return undefined;
|
|
201627
201727
|
};
|
|
201628
201728
|
const getS3Provider = () => {
|
|
201629
|
-
const s3AccessKeyId = s3_getInput('s3-access-key-id',
|
|
201630
|
-
|
|
201631
|
-
|
|
201632
|
-
|
|
201633
|
-
const
|
|
201634
|
-
|
|
201729
|
+
const s3AccessKeyId = s3_getInput('s3-access-key-id', [
|
|
201730
|
+
'AWS_ACCESS_KEY_ID',
|
|
201731
|
+
'S3_ACCESS_KEY_ID'
|
|
201732
|
+
]);
|
|
201733
|
+
const s3SecretAccessKey = s3_getInput('s3-secret-access-key', [
|
|
201734
|
+
'AWS_SECRET_ACCESS_KEY',
|
|
201735
|
+
'S3_SECRET_ACCESS_KEY'
|
|
201736
|
+
]);
|
|
201737
|
+
const s3Bucket = s3_getInput('s3-bucket', ['S3_BUCKET']);
|
|
201738
|
+
const s3Region = s3_getInput('s3-region', [
|
|
201739
|
+
'AWS_REGION',
|
|
201740
|
+
'AWS_DEFAULT_REGION',
|
|
201741
|
+
'S3_REGION'
|
|
201742
|
+
]);
|
|
201743
|
+
const s3Endpoint = s3_getInput('s3-endpoint', [
|
|
201744
|
+
'AWS_ENDPOINT_URL_S3',
|
|
201745
|
+
'AWS_ENDPOINT_URL',
|
|
201746
|
+
'S3_ENDPOINT'
|
|
201747
|
+
]) || 'https://s3.amazonaws.com';
|
|
201748
|
+
const s3Prefix = s3_getInput('s3-prefix', ['S3_PREFIX']) || 'turbogha/';
|
|
201635
201749
|
if (!s3AccessKeyId || !s3SecretAccessKey || !s3Bucket || !s3Region) {
|
|
201636
201750
|
throw new Error('S3 provider requires s3-access-key-id, s3-secret-access-key, s3-bucket, and s3-region. Set these as environment variables or GitHub Actions inputs.');
|
|
201637
201751
|
}
|
|
@@ -201972,11 +202086,14 @@ async function cleanup(ctx) {
|
|
|
201972
202086
|
}
|
|
201973
202087
|
}
|
|
201974
202088
|
|
|
202089
|
+
// EXTERNAL MODULE: external "stream"
|
|
202090
|
+
var external_stream_ = __nccwpck_require__(2203);
|
|
201975
202091
|
;// CONCATENATED MODULE: ./src/lib/server/index.ts
|
|
201976
202092
|
|
|
201977
202093
|
|
|
201978
202094
|
|
|
201979
202095
|
|
|
202096
|
+
|
|
201980
202097
|
async function server() {
|
|
201981
202098
|
//* Create the server
|
|
201982
202099
|
const fastify = fastify_default()({
|
|
@@ -201986,6 +202103,56 @@ async function server() {
|
|
|
201986
202103
|
fastify.get('/', async () => {
|
|
201987
202104
|
return { ok: true };
|
|
201988
202105
|
});
|
|
202106
|
+
//? Ping endpoint to test cache provider functionality
|
|
202107
|
+
fastify.get('/ping', async (request) => {
|
|
202108
|
+
request.log.info('Ping endpoint called - testing cache provider functionality');
|
|
202109
|
+
try {
|
|
202110
|
+
const tests = [];
|
|
202111
|
+
const provider = getProvider();
|
|
202112
|
+
const testHash = 'ping-test-file';
|
|
202113
|
+
const testContent = 'This is a test file for ping functionality';
|
|
202114
|
+
// Create a readable stream from the test content
|
|
202115
|
+
const testStream = new external_stream_.Readable();
|
|
202116
|
+
testStream.push(testContent);
|
|
202117
|
+
testStream.push(null); // End the stream
|
|
202118
|
+
// Test 1: Upload a test file
|
|
202119
|
+
request.log.info('Testing cache upload...');
|
|
202120
|
+
await provider.save(request, testHash, 'ping-test', testStream);
|
|
202121
|
+
request.log.info('Cache upload test successful');
|
|
202122
|
+
tests.push('upload');
|
|
202123
|
+
// Test 2: Retrieve the test file
|
|
202124
|
+
request.log.info('Testing cache retrieval...');
|
|
202125
|
+
const result = await provider.get(request, testHash);
|
|
202126
|
+
if (!result) {
|
|
202127
|
+
throw new Error('Failed to retrieve test file from cache');
|
|
202128
|
+
}
|
|
202129
|
+
request.log.info('Cache retrieval test successful');
|
|
202130
|
+
tests.push('retrieve');
|
|
202131
|
+
// Test 3: Delete the test file (only if supported)
|
|
202132
|
+
try {
|
|
202133
|
+
request.log.info('Testing cache deletion...');
|
|
202134
|
+
await provider.delete(testHash);
|
|
202135
|
+
request.log.info('Cache deletion test successful');
|
|
202136
|
+
tests.push('delete');
|
|
202137
|
+
}
|
|
202138
|
+
catch (deleteError) {
|
|
202139
|
+
request.log.info(`Cache deletion not supported or failed: ${deleteError}`);
|
|
202140
|
+
// Don't fail the ping test if deletion is not supported
|
|
202141
|
+
}
|
|
202142
|
+
return {
|
|
202143
|
+
ok: true,
|
|
202144
|
+
message: 'Cache provider functionality test completed successfully',
|
|
202145
|
+
tests
|
|
202146
|
+
};
|
|
202147
|
+
}
|
|
202148
|
+
catch (error) {
|
|
202149
|
+
request.log.error(`Ping test failed: ${error}`);
|
|
202150
|
+
return {
|
|
202151
|
+
ok: false,
|
|
202152
|
+
error: error instanceof Error ? error.message : String(error)
|
|
202153
|
+
};
|
|
202154
|
+
}
|
|
202155
|
+
});
|
|
201989
202156
|
//? Shut down the server
|
|
201990
202157
|
const shutdown = async (ctx) => {
|
|
201991
202158
|
//* Handle cleanup
|
|
@@ -202041,8 +202208,30 @@ async function server() {
|
|
|
202041
202208
|
|
|
202042
202209
|
|
|
202043
202210
|
const ping = async () => {
|
|
202044
|
-
|
|
202045
|
-
|
|
202211
|
+
try {
|
|
202212
|
+
const controller = new AbortController();
|
|
202213
|
+
const timeoutId = setTimeout(() => {
|
|
202214
|
+
core_core.error('Cache provider test timed out');
|
|
202215
|
+
controller.abort();
|
|
202216
|
+
}, 15000);
|
|
202217
|
+
const response = await fetch(`http://localhost:${serverPort}/ping`, {
|
|
202218
|
+
signal: controller.signal
|
|
202219
|
+
});
|
|
202220
|
+
clearTimeout(timeoutId);
|
|
202221
|
+
const result = await response.json();
|
|
202222
|
+
if (result.ok) {
|
|
202223
|
+
core_core.success('Cache provider functionality test completed successfully');
|
|
202224
|
+
core_core.info(`Tests performed: ${result.tests.join(', ')}`);
|
|
202225
|
+
}
|
|
202226
|
+
else {
|
|
202227
|
+
core_core.error(`Cache provider test failed: ${result.error}`);
|
|
202228
|
+
throw new Error(result.error);
|
|
202229
|
+
}
|
|
202230
|
+
}
|
|
202231
|
+
catch (error) {
|
|
202232
|
+
core_core.error(`Failed to test cache provider: ${error}`);
|
|
202233
|
+
throw error;
|
|
202234
|
+
}
|
|
202046
202235
|
};
|
|
202047
202236
|
|
|
202048
202237
|
// EXTERNAL MODULE: external "fs/promises"
|
|
@@ -202063,72 +202252,98 @@ const package_namespaceObject = {"rE":"2.0.0"};
|
|
|
202063
202252
|
const cli_main = async () => {
|
|
202064
202253
|
await logger.init();
|
|
202065
202254
|
const args = process.argv.slice(2);
|
|
202066
|
-
|
|
202067
|
-
|
|
202255
|
+
const command = args[0];
|
|
202256
|
+
const help = `
|
|
202068
202257
|
Turborepo GitHub Actions Cache Server
|
|
202069
202258
|
|
|
202070
202259
|
Usage:
|
|
202071
|
-
turbogha [options]
|
|
202260
|
+
turbogha <command> [options]
|
|
202072
202261
|
|
|
202073
|
-
|
|
202074
|
-
|
|
202075
|
-
--
|
|
202076
|
-
|
|
202077
|
-
|
|
202078
|
-
|
|
202262
|
+
Commands:
|
|
202263
|
+
start Start the cache server (default: background mode)
|
|
202264
|
+
start --foreground Start the cache server in foreground mode
|
|
202265
|
+
kill Kill the running server
|
|
202266
|
+
ping Ping the server to check if it's running
|
|
202267
|
+
help Show this help message
|
|
202268
|
+
version Show version
|
|
202079
202269
|
|
|
202080
202270
|
Environment Variables:
|
|
202081
202271
|
The following environment variables are supported for S3 configuration:
|
|
202082
|
-
-
|
|
202083
|
-
-
|
|
202272
|
+
- AWS_ACCESS_KEY_ID: AWS S3 access key ID
|
|
202273
|
+
- AWS_SECRET_ACCESS_KEY: AWS S3 secret access key
|
|
202274
|
+
- AWS_REGION: AWS S3 region
|
|
202275
|
+
- AWS_ENDPOINT_URL_S3: S3 endpoint (default: https://s3.amazonaws.com)
|
|
202084
202276
|
- S3_BUCKET: AWS S3 bucket name
|
|
202085
|
-
- S3_REGION: AWS S3 region
|
|
202086
|
-
- S3_ENDPOINT: S3 endpoint (default: https://s3.amazonaws.com)
|
|
202087
202277
|
- S3_PREFIX: Prefix for S3 objects (default: turbogha/)
|
|
202088
202278
|
- PROVIDER: Cache provider (github or s3)
|
|
202089
202279
|
|
|
202090
202280
|
Examples:
|
|
202091
|
-
#
|
|
202092
|
-
turbogha
|
|
202281
|
+
# Start server in background and export environment variables
|
|
202282
|
+
turbogha start
|
|
202093
202283
|
|
|
202094
|
-
#
|
|
202095
|
-
turbogha --
|
|
202284
|
+
# Start server in foreground mode
|
|
202285
|
+
turbogha start --foreground
|
|
202096
202286
|
|
|
202097
202287
|
# Ping the server
|
|
202098
|
-
turbogha
|
|
202288
|
+
turbogha ping
|
|
202289
|
+
|
|
202290
|
+
# Kill the server
|
|
202291
|
+
turbogha kill
|
|
202099
202292
|
|
|
202100
202293
|
# With S3 configuration
|
|
202101
|
-
|
|
202102
|
-
|
|
202294
|
+
AWS_ACCESS_KEY_ID=your-key AWS_SECRET_ACCESS_KEY=your-secret S3_BUCKET=your-bucket AWS_REGION=us-east-1 turbogha start
|
|
202295
|
+
`;
|
|
202296
|
+
if (!command ||
|
|
202297
|
+
command === '--help' ||
|
|
202298
|
+
command === '-h' ||
|
|
202299
|
+
command === 'help') {
|
|
202300
|
+
console.log(help);
|
|
202103
202301
|
process.exit(0);
|
|
202104
202302
|
}
|
|
202105
|
-
if (
|
|
202303
|
+
if (command === '--version' || command === '-v' || command === 'version') {
|
|
202106
202304
|
console.log(package_namespaceObject.rE);
|
|
202107
202305
|
process.exit(0);
|
|
202108
202306
|
}
|
|
202307
|
+
const startForeground = async () => {
|
|
202308
|
+
// Empty log file
|
|
202309
|
+
await (0,promises_.writeFile)(serverLogFile, '', { flag: 'w' });
|
|
202310
|
+
// Run server in foreground mode
|
|
202311
|
+
console.log('Starting Turborepo cache server in foreground mode...');
|
|
202312
|
+
await server();
|
|
202313
|
+
};
|
|
202314
|
+
if (command === '--server') {
|
|
202315
|
+
await startForeground();
|
|
202316
|
+
return;
|
|
202317
|
+
}
|
|
202109
202318
|
try {
|
|
202110
|
-
|
|
202111
|
-
|
|
202112
|
-
|
|
202113
|
-
|
|
202114
|
-
|
|
202115
|
-
|
|
202116
|
-
|
|
202117
|
-
|
|
202118
|
-
|
|
202119
|
-
|
|
202120
|
-
|
|
202121
|
-
|
|
202122
|
-
|
|
202123
|
-
|
|
202124
|
-
|
|
202125
|
-
|
|
202126
|
-
|
|
202127
|
-
|
|
202128
|
-
|
|
202129
|
-
|
|
202130
|
-
|
|
202131
|
-
|
|
202319
|
+
switch (command) {
|
|
202320
|
+
case 'ping':
|
|
202321
|
+
await ping();
|
|
202322
|
+
break;
|
|
202323
|
+
case 'kill':
|
|
202324
|
+
await killServer();
|
|
202325
|
+
break;
|
|
202326
|
+
case 'start': {
|
|
202327
|
+
const isForeground = args.includes('--foreground');
|
|
202328
|
+
if (isForeground) {
|
|
202329
|
+
await startForeground();
|
|
202330
|
+
}
|
|
202331
|
+
else {
|
|
202332
|
+
// Run server in background mode and export environment variables
|
|
202333
|
+
console.log('Starting Turborepo cache server...');
|
|
202334
|
+
// Empty log file
|
|
202335
|
+
await (0,promises_.writeFile)(serverLogFile, '', { flag: 'w' });
|
|
202336
|
+
await launchServer();
|
|
202337
|
+
console.log('\nServer is running! You can now use Turbo with remote caching.');
|
|
202338
|
+
console.log('\nTo stop the server, run:');
|
|
202339
|
+
console.log('turbogha kill');
|
|
202340
|
+
}
|
|
202341
|
+
break;
|
|
202342
|
+
}
|
|
202343
|
+
default:
|
|
202344
|
+
console.error(`Unknown command: ${command}`);
|
|
202345
|
+
console.log(help);
|
|
202346
|
+
process.exit(1);
|
|
202132
202347
|
}
|
|
202133
202348
|
}
|
|
202134
202349
|
catch (error) {
|