@@ -29498,7 +29498,26 @@ class KnownGoodVersionResolver {
29498
29498
this.http = new httpm.HttpClient("setup-chrome");
29499
29499
this.platformString = platformString(platform);
29500
29500
}
29501
- resolve(version) {
29501
+ resolveBrowserOnly(version) {
29502
+ return __awaiter(this, void 0, void 0, function* () {
29503
+ var _a;
29504
+ const spec = (0, version_1.parse)(version);
29505
+ const knownGoodVersions = yield this.getKnownGoodVersions();
29506
+ for (const version of knownGoodVersions) {
29507
+ if (!spec.satisfies(version.version)) {
29508
+ continue;
29509
+ }
29510
+ const browser = (_a = version.downloads.chrome) === null || _a === void 0 ? void 0 : _a.find(({ platform }) => platform === this.platformString);
29511
+ if (browser) {
29512
+ return {
29513
+ version: version.version,
29514
+ browserDownloadURL: browser.url,
29515
+ };
29516
+ }
29517
+ }
29518
+ });
29519
+ }
29520
+ resolveBrowserAndDriver(version) {
29502
29521
return __awaiter(this, void 0, void 0, function* () {
29503
29522
var _a, _b;
29504
29523
const spec = (0, version_1.parse)(version);
@@ -29773,7 +29792,7 @@ const version_installer_1 = __nccwpck_require__(1712);
29773
29792
const hasErrorMessage = (e) => {
29774
29793
return typeof e === "object" && e !== null && "message" in e;
29775
29794
};
29776
- const getInstaller = (platform, version) => {
29795
+ const getInstaller = (platform, version, { resolveBrowserVersionOnly } ) => {
29777
29796
const spec = (0, version_1.parse)(version);
29778
29797
switch (spec.value.type) {
29779
29798
case "latest":
@@ -29791,7 +29810,9 @@ const getInstaller = (platform, version) => {
29791
29810
case "snapshot":
29792
29811
return new snapshot_installer_1.SnapshotInstaller(platform);
29793
29812
case "four-parts":
29794
- return new version_installer_1.KnownGoodVersionInstaller(platform);
29813
+ return new version_installer_1.KnownGoodVersionInstaller(platform, {
29814
+ resolveBrowserVersionOnly,
29815
+ });
29795
29816
}
29796
29817
};
29797
29818
const installBrowser = (installer, version) => __awaiter(void 0, void 0, void 0, function* () {
@@ -29864,7 +29885,10 @@ function run() {
29864
29885
yield (0, dependencies_1.installDependencies)(platform, { noSudo });
29865
29886
}
29866
29887
core.info(`Setup chrome ${version}`);
29867
- const installer = getInstaller(platform, version);
29888
+ const resolveBrowserVersionOnly = !flgInstallChromedriver;
29889
+ const installer = getInstaller(platform, version, {
29890
+ resolveBrowserVersionOnly,
29891
+ });
29868
29892
const browserBinPath = yield installBrowser(installer, version);
29869
29893
const actualBrowserVersion = yield testVersion(platform, browserBinPath);
29870
29894
core.addPath(node_path_1.default.dirname(browserBinPath));
@@ -30487,8 +30511,9 @@ const cache = __importStar(__nccwpck_require__(2540));
30487
30511
const chrome_for_testing_1 = __nccwpck_require__(3334);
30488
30512
const platform_1 = __nccwpck_require__(1493);
30489
30513
class KnownGoodVersionInstaller {
30490
- constructor(platform) {
30514
+ constructor(platform, { resolveBrowserVersionOnly } ) {
30491
30515
this.platform = platform;
30516
+ this.resolveBrowserVersionOnly = resolveBrowserVersionOnly;
30492
30517
this.versionResolver = new chrome_for_testing_1.KnownGoodVersionResolver(this.platform);
30493
30518
}
30494
30519
checkInstalledBrowser(version) {
@@ -30501,7 +30526,9 @@ class KnownGoodVersionInstaller {
30501
30526
}
30502
30527
downloadBrowser(version) {
30503
30528
return __awaiter(this, void 0, void 0, function* () {
30504
- const resolved = yield this.versionResolver.resolve(version);
30529
+ const resolved = this.resolveBrowserVersionOnly
30530
+ ? yield this.versionResolver.resolveBrowserOnly(version)
30531
+ : yield this.versionResolver.resolveBrowserAndDriver(version);
30505
30532
if (!resolved) {
30506
30533
throw new Error(`Version ${version} not found in known good versions`);
30507
30534
}
@@ -30512,7 +30539,9 @@ class KnownGoodVersionInstaller {
30512
30539
}
30513
30540
installBrowser(version, archive) {
30514
30541
return __awaiter(this, void 0, void 0, function* () {
30515
- const resolved = yield this.versionResolver.resolve(version);
30542
+ const resolved = this.resolveBrowserVersionOnly
30543
+ ? yield this.versionResolver.resolveBrowserOnly(version)
30544
+ : yield this.versionResolver.resolveBrowserAndDriver(version);
30516
30545
if (!resolved) {
30517
30546
throw new Error(`Version ${version} not found in known good versions`);
30518
30547
}
@@ -30543,7 +30572,10 @@ class KnownGoodVersionInstaller {
30543
30572
}
30544
30573
downloadDriver(version) {
30545
30574
return __awaiter(this, void 0, void 0, function* () {
30546
- const resolved = yield this.versionResolver.resolve(version);
30575
+ if (this.resolveBrowserVersionOnly) {
30576
+ throw new Error("Unexpectedly trying to download chromedriver");
30577
+ }
30578
+ const resolved = yield this.versionResolver.resolveBrowserAndDriver(version);
30547
30579
if (!resolved) {
30548
30580
throw new Error(`Version ${version} not found in known good versions`);
30549
30581
}
@@ -30554,7 +30586,10 @@ class KnownGoodVersionInstaller {
30554
30586
}
30555
30587
installDriver(version, archive) {
30556
30588
return __awaiter(this, void 0, void 0, function* () {
30557
- const resolved = yield this.versionResolver.resolve(version);
30589
+ if (this.resolveBrowserVersionOnly) {
30590
+ throw new Error("Unexpectedly trying to install chromedriver");
30591
+ }
30592
+ const resolved = yield this.versionResolver.resolveBrowserAndDriver(version);
30558
30593
if (!resolved) {
30559
30594
throw new Error(`Version ${version} not found in known good versions`);
30560
30595
}
0 commit comments