diff --git a/docs/guides/supported-systems.md b/docs/guides/supported-systems.md
index 6fcfc2f90..7e10239d6 100644
--- a/docs/guides/supported-systems.md
+++ b/docs/guides/supported-systems.md
@@ -126,7 +126,7 @@ Default version is `6`
(uses mongodb's `ubuntu` release)
Lowest supported Distribution version is `17`
-Highest version is `20`
+Highest version is `21`
Default version is `20`
### Suse
diff --git a/packages/mongodb-memory-server-core/src/util/MongoBinaryDownloadUrl.ts b/packages/mongodb-memory-server-core/src/util/MongoBinaryDownloadUrl.ts
index b36f9c2c5..7aa04d532 100644
--- a/packages/mongodb-memory-server-core/src/util/MongoBinaryDownloadUrl.ts
+++ b/packages/mongodb-memory-server-core/src/util/MongoBinaryDownloadUrl.ts
@@ -469,12 +469,14 @@ export class MongoBinaryDownloadUrl implements MongoBinaryDownloadUrlOpts {
18: '16.04',
19: '18.04',
20: '20.04',
+ 21: '22.04',
};
ubuntuOS = {
os: 'linux',
dist: 'ubuntu',
release:
+ // TODO: next-minor: change default mint release to 21
mintToUbuntuRelease[parseInt(os.release.split('.')[0])] || mintToUbuntuRelease[20],
};
}
diff --git a/packages/mongodb-memory-server-core/src/util/__tests__/MongoBinaryDownloadUrl.test.ts b/packages/mongodb-memory-server-core/src/util/__tests__/MongoBinaryDownloadUrl.test.ts
index 8dcc2d977..f6ad5c8cd 100644
--- a/packages/mongodb-memory-server-core/src/util/__tests__/MongoBinaryDownloadUrl.test.ts
+++ b/packages/mongodb-memory-server-core/src/util/__tests__/MongoBinaryDownloadUrl.test.ts
@@ -901,7 +901,7 @@ describe('MongoBinaryDownloadUrl', () => {
downloadUrl = new MongoBinaryDownloadUrl({
platform: 'linux',
arch: 'x64',
- version: '4.0.25',
+ version: '0.0.0',
os: {
os: 'linux',
dist: 'Linux Mint',
@@ -912,14 +912,16 @@ describe('MongoBinaryDownloadUrl', () => {
});
it('should default to Mint Version 20, if version cannot be found in lookup table', async () => {
- (downloadUrl.os as LinuxOS).release = '16';
+ (downloadUrl.os as LinuxOS).release = '16'; // out-of-range version
+ downloadUrl.version = '6.0.4';
expect(await downloadUrl.getDownloadUrl()).toBe(
- 'https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1804-4.0.25.tgz'
+ 'https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2004-6.0.4.tgz'
);
});
it('should return a archive name for Linux Mint 17', async () => {
(downloadUrl.os as LinuxOS).release = '17';
+ downloadUrl.version = '4.0.25';
expect(await downloadUrl.getDownloadUrl()).toBe(
'https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1404-4.0.25.tgz'
);
@@ -927,6 +929,7 @@ describe('MongoBinaryDownloadUrl', () => {
it('should return a archive name for Linux Mint 18', async () => {
(downloadUrl.os as LinuxOS).release = '18';
+ downloadUrl.version = '4.0.25';
expect(await downloadUrl.getDownloadUrl()).toBe(
'https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1604-4.0.25.tgz'
);
@@ -934,6 +937,7 @@ describe('MongoBinaryDownloadUrl', () => {
it('should return a archive name for Linux Mint 19', async () => {
(downloadUrl.os as LinuxOS).release = '19';
+ downloadUrl.version = '4.0.25';
expect(await downloadUrl.getDownloadUrl()).toBe(
'https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1804-4.0.25.tgz'
);
@@ -941,8 +945,17 @@ describe('MongoBinaryDownloadUrl', () => {
it('should return a archive name for Linux Mint 20', async () => {
(downloadUrl.os as LinuxOS).release = '20';
+ downloadUrl.version = '6.0.4';
expect(await downloadUrl.getDownloadUrl()).toBe(
- 'https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1804-4.0.25.tgz'
+ 'https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2004-6.0.4.tgz'
+ );
+ });
+
+ it('should return a archive name for Linux Mint 21', async () => {
+ (downloadUrl.os as LinuxOS).release = '21';
+ downloadUrl.version = '6.0.4';
+ expect(await downloadUrl.getDownloadUrl()).toBe(
+ 'https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2204-6.0.4.tgz'
);
});
});