处理内部签名文件地址

This commit is contained in:
SongJun
2026-07-22 08:43:48 -04:00
parent 7c8bad58f2
commit b84b9d8e3f
3 changed files with 60 additions and 18 deletions

21
upload/dist/index.js vendored
View File

@@ -2998,7 +2998,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.getConcurrency = exports.getGitHubWorkspaceDir = exports.isGhes = exports.getResultsServiceUrl = exports.getRuntimeToken = exports.getUploadChunkSize = void 0;
exports.getConcurrency = exports.getGitHubWorkspaceDir = exports.isGhes = exports.normalizeDockerBridgeUrl = exports.getResultsServiceUrl = exports.getRuntimeToken = exports.getUploadChunkSize = void 0;
const os_1 = __importDefault(__nccwpck_require__(22037));
// Used for controlling the highWaterMark value of the zip that is being streamed
// The same value is used as the chunk size that is use during upload to blob storage
@@ -3019,20 +3019,23 @@ function getResultsServiceUrl() {
if (!resultsUrl) {
throw new Error('Unable to get the ACTIONS_RESULTS_URL env variable');
}
const serviceUrl = new URL(resultsUrl);
if (serviceUrl.protocol === 'https:' && isDockerBridgeIPv4(serviceUrl.hostname)) {
serviceUrl.protocol = 'http:';
}
return serviceUrl.origin;
return new URL(normalizeDockerBridgeUrl(resultsUrl)).origin;
}
exports.getResultsServiceUrl = getResultsServiceUrl;
function normalizeDockerBridgeUrl(rawUrl) {
const serviceUrl = new URL(rawUrl);
if (serviceUrl.protocol === 'https:' && isDockerBridgeIPv4(serviceUrl.hostname)) {
return `http:${rawUrl.slice('https:'.length)}`;
}
return rawUrl;
}
exports.normalizeDockerBridgeUrl = normalizeDockerBridgeUrl;
function isDockerBridgeIPv4(hostname) {
const octets = hostname.split('.').map(Number);
return (octets.length === 4 &&
octets.every(octet => Number.isInteger(octet) && octet >= 0 && octet <= 255) &&
octets[0] === 172 &&
octets[1] >= 16 &&
octets[1] <= 31);
octets[1] === 19);
}
function isGhes() {
return false;
@@ -3307,7 +3310,7 @@ function uploadZipToBlobStorage(authenticatedUploadURL, zipUploadStream) {
let uploadByteCount = 0;
const maxConcurrency = (0, config_1.getConcurrency)();
const bufferSize = (0, config_1.getUploadChunkSize)();
const blobClient = new storage_blob_1.BlobClient(authenticatedUploadURL);
const blobClient = new storage_blob_1.BlobClient((0, config_1.normalizeDockerBridgeUrl)(authenticatedUploadURL));
const blockBlobClient = blobClient.getBlockBlobClient();
core.debug(`Uploading artifact zip to blob storage with maxConcurrency: ${maxConcurrency}, bufferSize: ${bufferSize}`);
const uploadCallback = (progress) => {