Skip to content

Commit cef28c6

Browse files
authored
fix: propergate wallet install errors (#6)
1 parent 7eb03b8 commit cef28c6

File tree

4 files changed

+63
-79
lines changed

4 files changed

+63
-79
lines changed

src/flask/install.ts

Lines changed: 15 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import {
77
METAMASK_GITHUB_API,
88
RECOMMENDED_METAMASK_FLASK_VERSIONS
99
} from '../constants';
10-
import { logError, logInfo, logSuccess } from '../log';
10+
import { logInfo, logSuccess } from '../log';
1111
import { Asset } from '../types';
1212
import {
1313
compareVersion,
@@ -20,26 +20,22 @@ import {
2020
} from '../wallet/install';
2121

2222
export async function install(directory: string, version: string = DEFAULT_METAMASK_FLASK_VERSION): Promise<string> {
23-
try {
24-
const assetName = `${DEFAULT_METAMASK_FLASK_ASSET}-${version}-flask.0`;
25-
let destDir: string = `${directory}/${assetName}`;
26-
const exists = fileExists(destDir);
27-
if (exists) {
28-
logInfo(`MetaMask Flask version <v${version}> already exists in ${destDir}`);
29-
return destDir;
30-
}
31-
compareVersion(METAMASK_FLASK, version, RECOMMENDED_METAMASK_FLASK_VERSIONS);
32-
const release: any = await fetchGithubRelease(METAMASK_FLASK, version, METAMASK_GITHUB_API);
33-
const asset: Asset = findGithubAsset(assetName, release);
34-
createDirectory(directory);
35-
const fileName: string = await downloadAssetZipFile(asset, directory);
36-
destDir = extractZipContents(fileName);
37-
await enableMetaMaskAutomation(destDir);
38-
logSuccess(`Installed MetaMask Flask version <v${version}>\n${destDir}`);
23+
const assetName = `${DEFAULT_METAMASK_FLASK_ASSET}-${version}-flask.0`;
24+
let destDir: string = `${directory}/${assetName}`;
25+
const exists = fileExists(destDir);
26+
if (exists) {
27+
logInfo(`MetaMask Flask version <v${version}> already exists in ${destDir}`);
3928
return destDir;
40-
} catch (error: any) {
41-
logError(error.message);
4229
}
30+
compareVersion(METAMASK_FLASK, version, RECOMMENDED_METAMASK_FLASK_VERSIONS);
31+
const release: any = await fetchGithubRelease(METAMASK_FLASK, version, METAMASK_GITHUB_API);
32+
const asset: Asset = findGithubAsset(assetName, release);
33+
createDirectory(directory);
34+
const fileName: string = await downloadAssetZipFile(asset, directory);
35+
destDir = extractZipContents(fileName);
36+
await enableMetaMaskAutomation(destDir);
37+
logSuccess(`Installed MetaMask Flask version <v${version}>\n${destDir}`);
38+
return destDir;
4339
}
4440

4541
export async function enableMetaMaskAutomation(metaMaskPath: string): Promise<void> {

src/metamask/install.ts

Lines changed: 15 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import {
77
METAMASK_GITHUB_API,
88
RECOMMENDED_METAMASK_VERSIONS
99
} from '../constants';
10-
import { logError, logInfo, logSuccess } from '../log';
10+
import { logInfo, logSuccess } from '../log';
1111
import { Asset } from '../types';
1212
import {
1313
compareVersion,
@@ -20,26 +20,22 @@ import {
2020
} from '../wallet/install';
2121

2222
export async function install(directory: string, version: string = DEFAULT_METAMASK_VERSION): Promise<string> {
23-
try {
24-
const assetName = `${DEFAULT_METAMASK_ASSET}-${version}`;
25-
let destDir: string = `${directory}/${assetName}`;
26-
const exists = fileExists(destDir);
27-
if (exists) {
28-
logInfo(`MetaMask version <v${version}> already exists in ${destDir}`);
29-
return destDir;
30-
}
31-
compareVersion(METAMASK, version, RECOMMENDED_METAMASK_VERSIONS);
32-
const release: any = await fetchGithubRelease(METAMASK, version, METAMASK_GITHUB_API);
33-
const asset: Asset = findGithubAsset(assetName, release);
34-
createDirectory(directory);
35-
const fileName: string = await downloadAssetZipFile(asset, directory);
36-
destDir = extractZipContents(fileName);
37-
await enableMetaMaskAutomation(destDir);
38-
logSuccess(`Installed MetaMask version <v${version}>\n${destDir}`);
23+
const assetName = `${DEFAULT_METAMASK_ASSET}-${version}`;
24+
let destDir: string = `${directory}/${assetName}`;
25+
const exists = fileExists(destDir);
26+
if (exists) {
27+
logInfo(`MetaMask version <v${version}> already exists in ${destDir}`);
3928
return destDir;
40-
} catch (error: any) {
41-
logError(error.message);
4229
}
30+
compareVersion(METAMASK, version, RECOMMENDED_METAMASK_VERSIONS);
31+
const release: any = await fetchGithubRelease(METAMASK, version, METAMASK_GITHUB_API);
32+
const asset: Asset = findGithubAsset(assetName, release);
33+
createDirectory(directory);
34+
const fileName: string = await downloadAssetZipFile(asset, directory);
35+
destDir = extractZipContents(fileName);
36+
await enableMetaMaskAutomation(destDir);
37+
logSuccess(`Installed MetaMask version <v${version}>\n${destDir}`);
38+
return destDir;
4339
}
4440

4541
export async function enableMetaMaskAutomation(metaMaskPath: string): Promise<void> {

src/rainbow/install.ts

Lines changed: 18 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { DEFAULT_RAINBOW_VERSION, RAINBOW, RAINBOW_GITHUB_API, RECOMMENDED_RAINBOW_VERSIONS } from '../constants';
2-
import { logError, logInfo, logSuccess } from '../log';
2+
import { logInfo, logSuccess } from '../log';
33
import { Artifact } from '../types';
44
import {
55
checkEnvVariable,
@@ -15,27 +15,23 @@ import {
1515
} from '../wallet/install';
1616

1717
export async function install(directory: string, version: string = DEFAULT_RAINBOW_VERSION): Promise<string> {
18-
try {
19-
const artifactName = `rainbowbx-chrome-v${version}`;
20-
let destDir: string = `${directory}/${artifactName}`;
21-
const exists = fileExists(destDir);
22-
if (exists) {
23-
logInfo(`Rainbow version <v${version}> already exists in ${destDir}`);
24-
return destDir;
25-
}
26-
const workflowName = 'Publish to Chrome (Prod)';
27-
checkEnvVariable('GITHUB_TOKEN');
28-
compareVersion(RAINBOW, version, RECOMMENDED_RAINBOW_VERSIONS);
29-
await fetchGithubTags(RAINBOW, version, RAINBOW_GITHUB_API);
30-
const workflow = await fetchGithubWorkflow(workflowName, RAINBOW_GITHUB_API);
31-
const run = await fetchGithubRun(version, workflowName, workflow, RAINBOW_GITHUB_API);
32-
const artifact: Artifact = await fetchGithubArtifact(artifactName, run, RAINBOW_GITHUB_API);
33-
createDirectory(directory);
34-
const fileName: string = await downloadArtifactZipFile(artifact, directory);
35-
destDir = extractZipContents(fileName);
36-
logSuccess(`Installed Rainbow version <v${version}>\n${destDir}`);
18+
const artifactName = `rainbowbx-chrome-v${version}`;
19+
let destDir: string = `${directory}/${artifactName}`;
20+
const exists = fileExists(destDir);
21+
if (exists) {
22+
logInfo(`Rainbow version <v${version}> already exists in ${destDir}`);
3723
return destDir;
38-
} catch (error: any) {
39-
logError(error.message);
4024
}
25+
const workflowName = 'Publish to Chrome (Prod)';
26+
checkEnvVariable('GITHUB_TOKEN');
27+
compareVersion(RAINBOW, version, RECOMMENDED_RAINBOW_VERSIONS);
28+
await fetchGithubTags(RAINBOW, version, RAINBOW_GITHUB_API);
29+
const workflow = await fetchGithubWorkflow(workflowName, RAINBOW_GITHUB_API);
30+
const run = await fetchGithubRun(version, workflowName, workflow, RAINBOW_GITHUB_API);
31+
const artifact: Artifact = await fetchGithubArtifact(artifactName, run, RAINBOW_GITHUB_API);
32+
createDirectory(directory);
33+
const fileName: string = await downloadArtifactZipFile(artifact, directory);
34+
destDir = extractZipContents(fileName);
35+
logSuccess(`Installed Rainbow version <v${version}>\n${destDir}`);
36+
return destDir;
4137
}

src/zerion/install.ts

Lines changed: 15 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
ZERION_GITHUB_API,
66
RECOMMENDED_ZERION_VERSIONS
77
} from '../constants';
8-
import { logSuccess, logError, logInfo } from '../log';
8+
import { logSuccess, logInfo } from '../log';
99
import { Asset } from '../types';
1010
import {
1111
compareVersion,
@@ -19,24 +19,20 @@ import {
1919
} from '../wallet/install';
2020

2121
export async function install(directory: string, version: string = DEFAULT_ZERION_VERSION): Promise<string> {
22-
try {
23-
const assetName = `${DEFAULT_ZERION_ASSET}-v${version}`;
24-
let destDir: string = `${directory}/${assetName}`;
25-
const exists = fileExists(destDir);
26-
if (exists) {
27-
logInfo(`Zerion version <v${version}> already exists in ${destDir}`);
28-
return destDir;
29-
}
30-
compareVersion(ZERION, version, RECOMMENDED_ZERION_VERSIONS);
31-
const release: any = await fetchGithubRelease(ZERION, version, ZERION_GITHUB_API);
32-
const asset: Asset = findGithubAsset(assetName, release);
33-
createDirectory(directory);
34-
const fileName: string = await downloadAssetZipFile(asset, directory);
35-
destDir = extractZipContents(fileName);
36-
moveFiles(destDir);
37-
logSuccess(`Installed Zerion version <v${version}>\n${destDir}`);
22+
const assetName = `${DEFAULT_ZERION_ASSET}-v${version}`;
23+
let destDir: string = `${directory}/${assetName}`;
24+
const exists = fileExists(destDir);
25+
if (exists) {
26+
logInfo(`Zerion version <v${version}> already exists in ${destDir}`);
3827
return destDir;
39-
} catch (error: any) {
40-
logError(error.message);
4128
}
29+
compareVersion(ZERION, version, RECOMMENDED_ZERION_VERSIONS);
30+
const release: any = await fetchGithubRelease(ZERION, version, ZERION_GITHUB_API);
31+
const asset: Asset = findGithubAsset(assetName, release);
32+
createDirectory(directory);
33+
const fileName: string = await downloadAssetZipFile(asset, directory);
34+
destDir = extractZipContents(fileName);
35+
moveFiles(destDir);
36+
logSuccess(`Installed Zerion version <v${version}>\n${destDir}`);
37+
return destDir;
4238
}

0 commit comments

Comments
 (0)