@@ -29498,7 +29498,26 @@ class KnownGoodVersionResolver {
2949829498 this.http = new httpm.HttpClient("setup-chrome");
2949929499 this.platformString = platformString(platform);
2950029500 }
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) {
2950229521 return __awaiter(this, void 0, void 0, function* () {
2950329522 var _a, _b;
2950429523 const spec = (0, version_1.parse)(version);
@@ -29773,7 +29792,7 @@ const version_installer_1 = __nccwpck_require__(1712);
2977329792const hasErrorMessage = (e) => {
2977429793 return typeof e === "object" && e !== null && "message" in e;
2977529794};
29776- const getInstaller = (platform, version) => {
29795+ const getInstaller = (platform, version, { resolveBrowserVersionOnly } ) => {
2977729796 const spec = (0, version_1.parse)(version);
2977829797 switch (spec.value.type) {
2977929798 case "latest":
@@ -29791,7 +29810,9 @@ const getInstaller = (platform, version) => {
2979129810 case "snapshot":
2979229811 return new snapshot_installer_1.SnapshotInstaller(platform);
2979329812 case "four-parts":
29794- return new version_installer_1.KnownGoodVersionInstaller(platform);
29813+ return new version_installer_1.KnownGoodVersionInstaller(platform, {
29814+ resolveBrowserVersionOnly,
29815+ });
2979529816 }
2979629817};
2979729818const installBrowser = (installer, version) => __awaiter(void 0, void 0, void 0, function* () {
@@ -29864,7 +29885,10 @@ function run() {
2986429885 yield (0, dependencies_1.installDependencies)(platform, { noSudo });
2986529886 }
2986629887 core.info(`Setup chrome ${version}`);
29867- const installer = getInstaller(platform, version);
29888+ const resolveBrowserVersionOnly = !flgInstallChromedriver;
29889+ const installer = getInstaller(platform, version, {
29890+ resolveBrowserVersionOnly,
29891+ });
2986829892 const browserBinPath = yield installBrowser(installer, version);
2986929893 const actualBrowserVersion = yield testVersion(platform, browserBinPath);
2987029894 core.addPath(node_path_1.default.dirname(browserBinPath));
@@ -30487,8 +30511,9 @@ const cache = __importStar(__nccwpck_require__(2540));
3048730511const chrome_for_testing_1 = __nccwpck_require__(3334);
3048830512const platform_1 = __nccwpck_require__(1493);
3048930513class KnownGoodVersionInstaller {
30490- constructor(platform) {
30514+ constructor(platform, { resolveBrowserVersionOnly } ) {
3049130515 this.platform = platform;
30516+ this.resolveBrowserVersionOnly = resolveBrowserVersionOnly;
3049230517 this.versionResolver = new chrome_for_testing_1.KnownGoodVersionResolver(this.platform);
3049330518 }
3049430519 checkInstalledBrowser(version) {
@@ -30501,7 +30526,9 @@ class KnownGoodVersionInstaller {
3050130526 }
3050230527 downloadBrowser(version) {
3050330528 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);
3050530532 if (!resolved) {
3050630533 throw new Error(`Version ${version} not found in known good versions`);
3050730534 }
@@ -30512,7 +30539,9 @@ class KnownGoodVersionInstaller {
3051230539 }
3051330540 installBrowser(version, archive) {
3051430541 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);
3051630545 if (!resolved) {
3051730546 throw new Error(`Version ${version} not found in known good versions`);
3051830547 }
@@ -30543,7 +30572,10 @@ class KnownGoodVersionInstaller {
3054330572 }
3054430573 downloadDriver(version) {
3054530574 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);
3054730579 if (!resolved) {
3054830580 throw new Error(`Version ${version} not found in known good versions`);
3054930581 }
@@ -30554,7 +30586,10 @@ class KnownGoodVersionInstaller {
3055430586 }
3055530587 installDriver(version, archive) {
3055630588 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);
3055830593 if (!resolved) {
3055930594 throw new Error(`Version ${version} not found in known good versions`);
3056030595 }
0 commit comments