Skip to content

Commit

Permalink
fix(DownloadUrl): added Mint download url (thanks to @StepanYurtsiv)
Browse files Browse the repository at this point in the history
Related #38
  • Loading branch information
nodkz committed Jan 13, 2018
1 parent b15a789 commit 75fa143
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 7 deletions.
25 changes: 18 additions & 7 deletions src/util/MongoBinaryDownloadUrl.js
Expand Up @@ -4,8 +4,8 @@
import getos from 'getos';

type OS = {
release: string,
dist: string,
release?: string,
};

const DOWNLOAD_URI = 'https://downloads.mongodb.org';
Expand Down Expand Up @@ -79,6 +79,8 @@ export default class MongoBinaryDownloadUrl {
return this.getFedoraVersionString(os);
} else if (/debian/i.test(os.dist)) {
return this.getDebianVersionString(os);
} else if (/mint/i.test(os.dist)) {
return this.getMintVersionString(os);
}
throw new Error(`Cannot determine version string for ${JSON.stringify(os)}`);
}
Expand Down Expand Up @@ -109,12 +111,15 @@ export default class MongoBinaryDownloadUrl {

getRhelVersionString(os: OS): string {
let name: string = 'rhel';
if (/^7/.test(os.release)) {
name += '70';
} else if (/^6/.test(os.release)) {
name += '62';
} else if (/^5/.test(os.release)) {
name += '55';
const { release } = os;
if (release) {
if (/^7/.test(release)) {
name += '70';
} else if (/^6/.test(release)) {
name += '62';
} else if (/^5/.test(release)) {
name += '55';
}
}
return name;
}
Expand All @@ -124,6 +129,12 @@ export default class MongoBinaryDownloadUrl {
return 'ubuntu1404';
}

// eslint-disable-next-line no-unused-vars
getMintVersionString(os: OS): string {
// unfortunately getos doesn't return version for Mint
return 'ubuntu1404';
}

getSuseVersionString(os: any): string {
const [release]: [string | null] = os.release.match(/(^11|^12)/) || [null];

Expand Down
12 changes: 12 additions & 0 deletions src/util/__tests__/MongoBinaryDownloadUrl-test.js
Expand Up @@ -142,4 +142,16 @@ describe('MongoBinaryDownloadUrl', () => {
).toBe('debian81');
});
});

describe('getMintVersionString', () => {
const downloadUrl = new MongoBinaryDownloadUrl({
platform: 'linux',
arch: 'x64',
version: '3.4.4',
});

it('should return an archive name for Linux Mint', () => {
expect(downloadUrl.getMintVersionString({ dist: 'Linux Mint' })).toBe('ubuntu1404');
});
});
});

0 comments on commit 75fa143

Please sign in to comment.