Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Global install fails on Amazon Linux 2 #525

Closed
restfulhead opened this issue Aug 5, 2021 · 17 comments
Closed

Global install fails on Amazon Linux 2 #525

restfulhead opened this issue Aug 5, 2021 · 17 comments
Labels
bug Module: Version-String Generation This problem is because of the Version-String Generation (MongoBinaryDownloadUrl)

Comments

@restfulhead
Copy link

restfulhead commented Aug 5, 2021

Versions

  • NodeJS: 14.17.4
  • mongodb-memory-server-*: 7.3.4
  • system: Amazon Linux 2
  • package: mongo-memory-server-global

What is the Problem?

Installation of the mongodb dist fails with

Mongodb-Memory-Server* checking MongoDB binaries
Mongodb-Memory-Server* failed to find an binary:
 Status Code is 403 (MongoDB's 404)
This means that the requested version-platform combination doesn't exist
  Used Url: "https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel-4.0.25.tgz"

When looking up the URL on https://www.mongodb.org/dl/linux I think it should be linux/mongodb-linux-x86_64-amazon2-4.0.25.tgz. Maybe linux/mongodb-linux-x86_64-rhel70-4.0.25.tgz would also work. Note that rhel seems to no longer exist, but rhel70 does. I guess we could open another issue for that.

I've tried setting the download URL via export MONGOMS_DOWNLOAD_URL=https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-amazon2-v3.6-latest.tgz. This makes the download succeed, but the package is placed with a weird name and subsequent commands fail:

Mongodb-Memory-Server* checking MongoDB binaries
Mongodb-Memory-Server* found binary: "/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25"
npm WARN saveError ENOENT: no such file or directory, open '/package.json'
npm WARN enoent ENOENT: no such file or directory, open '/package.json'

Specifying the download url and version leads to a similar result:

export MONGOMS_DOWNLOAD_URL=https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-amazon2-v3.6-latest.tgz
export MONGOMS_VERSION=v3.6-latest
Mongodb-Memory-Server* checking MongoDB binaries
Mongodb-Memory-Server* found binary: "/root/.cache/mongodb-binaries/mongod-x64-amzn"-v3.6-latest"
npm WARN saveError ENOENT: no such file or directory, open '/package.json'
npm WARN enoent ENOENT: no such file or directory, open '/package.json'

This is how the ~/.cache/mongodb-binaries/ looks after running the above:

-rwxr-xr-x 1 root root 60297256 Aug  5 20:34 mongod-x64-amzn"-4.0.25
-rwxr-xr-x 1 root root 60297256 Aug  5 20:36 mongod-x64-amzn"-v3.6-latest

I've also tried setting MONGOMS_ARCH=linux-x86_64-amazon2. This does not seem to change anything.

Code Example

Start a container with Amazon Linux 2, for example:

docker run -it amazoncorretto:8 /bin/bash

Then from inside the container

yum install -y gcc-c++ make 
curl -sL https://rpm.nodesource.com/setup_14.x | bash - 
yum install -y nodejs
npm install mongodb-memory-server-global@7.3.4

Do you know why it happenes?

no

@restfulhead restfulhead added the bug label Aug 5, 2021
@hasezoey
Copy link
Collaborator

hasezoey commented Aug 5, 2021

to keep track when trying to tackle this late, because this issue seems to have multiple sub-issues, here are all that i found:


could you maybe provide debug logs for both when not using and using DOWNLOAD_URL (or any other config option)?

(and because i am not familiar with amazon's environment, could you also maybe provide a way for me to test it locally if possible?)

@hasezoey hasezoey added the Module: Version-String Generation This problem is because of the Version-String Generation (MongoBinaryDownloadUrl) label Aug 5, 2021
@hasezoey
Copy link
Collaborator

hasezoey commented Aug 5, 2021

btw, in your code block for Specifying the download url and version leads to a similar result:, on the first line there seems to be an extra character (as stray "`"), is this how you executed it or an extra from writing this issue?

@restfulhead
Copy link
Author

Thanks for the quick response.

Earlier I was able to use Docker (see steps under Code Example above), but now I'm seeing a 403 - Forbidden error when accessing the AWS yum repository. Maybe there's some rate limiting happening. I'll try again tomorrow.

@restfulhead
Copy link
Author

restfulhead commented Aug 6, 2021

Ok, today I was able to use Docker again to reproduce the issue.

Here's the debug output without specifying the download URL
MongoMS:ResolveConfig findPackageJson: Found package.json at "/node_modules/mongodb-memory-server-global/package.json" +0ms
Mongodb-Memory-Server* checking MongoDB binaries
  MongoMS:MongoBinary getPath +0ms
  MongoMS:DryMongoBinary generateOptions +0ms
  MongoMS:utils tryReleaseFile: "/etc/upstream-release/lsb-release" does not exist +0ms
  MongoMS:getos getLinuxInformation: Using etcOsRelease +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +6ms
  MongoMS:DryMongoBinary generatePaths +1ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +1ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25'
}  +1ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +4ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25" +0ms
  MongoMS:MongoBinary getPath: MongoBinary options: {
  "version": "4.0.25",
  "downloadDir": "/root/.cache/mongodb-binaries",
  "os": {
    "os": "linux",
    "dist": "amzn\"",
    "release": "2",
    "id_like": "centos rhel fedora\""
  },
  "arch": "x64",
  "systemBinary": "",
  "platform": "linux",
  "checkMD5": false
} +16ms
  MongoMS:DryMongoBinary locateBinary: Trying to locate Binary for version "4.0.25" +2ms
  MongoMS:DryMongoBinary generateOptions +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +1ms
  MongoMS:DryMongoBinary generatePaths +0ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25'
}  +0ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +1ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25" +0ms
  MongoMS:DryMongoBinary locateBinary: running generateDownloadPath +1ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +0ms
  MongoMS:DryMongoBinary generatePaths +0ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25'
}  +1ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +1ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25" +0ms
  MongoMS:DryMongoBinary locateBinary: could not find an existing binary +0ms
  MongoMS:MongoBinary getPath: "RUNTIME_DOWNLOAD" is "true", trying to download +9ms
  MongoMS:MongoBinary download +1ms
  MongoMS:MongoBinary download: Waiting to acquire Download lock for file "/root/.cache/mongodb-binaries/4.0.25.lock" +2ms
  MongoMS:LockFile lock: Locking file "/root/.cache/mongodb-binaries/4.0.25.lock" +0ms
  MongoMS:LockFile checkLock: for file "/root/.cache/mongodb-binaries/4.0.25.lock" with uuid: "undefined" +1ms
  MongoMS:LockFile createLock: trying to create a lock file for "/root/.cache/mongodb-binaries/4.0.25.lock" +1ms
  MongoMS:LockFile createLock: Lock File Created for file "/root/.cache/mongodb-binaries/4.0.25.lock" +3ms
  MongoMS:MongoBinary download: Download lock acquired +6ms
  MongoMS:MongoBinary download: Adding version 4.0.25 to cache +0ms
  MongoMS:MongoBinaryDownload getMongodPath +0ms
  MongoMS:DryMongoBinary generateOptions +11ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +1ms
  MongoMS:DryMongoBinary generatePaths +0ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25'
}  +0ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +2ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25" +0ms
  MongoMS:DryMongoBinary getBinaryName +1ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:MongoBinaryDownload startDownload +8ms
  MongoMS:MongoBinaryDownloadUrl Using "mongodb-linux-x86_64-rhel-4.0.25.tgz" as the Archive String +0ms
  MongoMS:MongoBinaryDownloadUrl Using "https://fastdl.mongodb.org" as the mirror +0ms
  MongoMS:MongoBinaryDownload download +4ms
  MongoMS:MongoBinaryDownload download: Downloading: "https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel-4.0.25.tgz" +1ms
  MongoMS:MongoBinaryDownload httpDownload +1ms
  MongoMS:MongoBinaryDownload httpDownload: trying to download "https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel-4.0.25.tgz" +1ms
  MongoMS:MongoBinary download: Removing Download lock +128ms
  MongoMS:LockFile unlock: Unlocking file "/root/.cache/mongodb-binaries/4.0.25.lock" +129ms
  MongoMS:LockFile checkLock: for file "/root/.cache/mongodb-binaries/4.0.25.lock" with uuid: "211a9923-c870-4676-b082-5ccb4d99198e" +0ms
  MongoMS:LockFile checkLock: Lock File Already exists, and is for *this* process, with uuid: "211a9923-c870-4676-b082-5ccb4d99198e" +6ms
  MongoMS:LockFile unlock: Lock Status was "availableInstance" for file "/root/.cache/mongodb-binaries/4.0.25.lock" +1ms
  MongoMS:LockFile unlockCleanup: for file "/root/.cache/mongodb-binaries/4.0.25.lock" +0ms
  MongoMS:MongoBinary download: Download lock removed +7ms
Mongodb-Memory-Server* failed to find an binary:
 Status Code is 403 (MongoDB's 404)
This means that the requested version-platform combination doesn't exist
  Used Url: "https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel-4.0.25.tgz"
And here it is with specifying the download URL (I've tried the rhel70 this time)
MongoMS:ResolveConfig findPackageJson: Found package.json at "/node_modules/mongodb-memory-server-global/package.json" +0ms
Mongodb-Memory-Server* checking MongoDB binaries
  MongoMS:MongoBinary getPath +0ms
  MongoMS:DryMongoBinary generateOptions +0ms
  MongoMS:utils tryReleaseFile: "/etc/upstream-release/lsb-release" does not exist +0ms
  MongoMS:getos getLinuxInformation: Using etcOsRelease +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +9ms
  MongoMS:DryMongoBinary generatePaths +1ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25'
}  +0ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +6ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25" +0ms
  MongoMS:MongoBinary getPath: MongoBinary options: {
  "version": "4.0.25",
  "downloadDir": "/root/.cache/mongodb-binaries",
  "os": {
    "os": "linux",
    "dist": "amzn\"",
    "release": "2",
    "id_like": "centos rhel fedora\""
  },
  "arch": "x64",
  "systemBinary": "",
  "platform": "linux",
  "checkMD5": false
} +20ms
  MongoMS:DryMongoBinary locateBinary: Trying to locate Binary for version "4.0.25" +2ms
  MongoMS:DryMongoBinary generateOptions +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +0ms
  MongoMS:DryMongoBinary generatePaths +1ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25'
}  +1ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +1ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25" +1ms
  MongoMS:DryMongoBinary locateBinary: running generateDownloadPath +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +0ms
  MongoMS:DryMongoBinary generatePaths +0ms
  MongoMS:DryMongoBinary getBinaryName +1ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25'
}  +0ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +2ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25" +0ms
  MongoMS:DryMongoBinary locateBinary: could not find an existing binary +0ms
  MongoMS:MongoBinary getPath: "RUNTIME_DOWNLOAD" is "true", trying to download +10ms
  MongoMS:MongoBinary download +1ms
  MongoMS:MongoBinary download: Waiting to acquire Download lock for file "/root/.cache/mongodb-binaries/4.0.25.lock" +2ms
  MongoMS:LockFile lock: Locking file "/root/.cache/mongodb-binaries/4.0.25.lock" +0ms
  MongoMS:LockFile checkLock: for file "/root/.cache/mongodb-binaries/4.0.25.lock" with uuid: "undefined" +0ms
  MongoMS:LockFile createLock: trying to create a lock file for "/root/.cache/mongodb-binaries/4.0.25.lock" +1ms
  MongoMS:LockFile createLock: Lock File Created for file "/root/.cache/mongodb-binaries/4.0.25.lock" +5ms
  MongoMS:MongoBinary download: Download lock acquired +8ms
  MongoMS:MongoBinary download: Adding version 4.0.25 to cache +1ms
  MongoMS:MongoBinaryDownload getMongodPath +0ms
  MongoMS:DryMongoBinary generateOptions +14ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +0ms
  MongoMS:DryMongoBinary generatePaths +1ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +1ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25'
}  +0ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +2ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25" +0ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:MongoBinaryDownload startDownload +6ms
  MongoMS:MongoBinaryDownloadUrl Using "https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.25.tgz" as the Download-URL +0ms
  MongoMS:MongoBinaryDownload download +2ms
  MongoMS:MongoBinaryDownload download: Downloading: "https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.25.tgz" +1ms
  MongoMS:MongoBinaryDownload httpDownload +1ms
  MongoMS:MongoBinaryDownload httpDownload: trying to download "https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.25.tgz" +0ms
  MongoMS:MongoBinaryDownload httpDownload: moved "/root/.cache/mongodb-binaries/mongodb-linux-x86_64-rhel70-4.0.25.tgz.downloading" to "/root/.cache/mongodb-binaries/mongodb-linux-x86_64-rhel70-4.0.25.tgz" +3s
  MongoMS:MongoBinaryDownload makeMD5check: Checking MD5 of downloaded binary... +0ms
  MongoMS:MongoBinaryDownload makeMD5check: checkMD5 is disabled +1ms
  MongoMS:MongoBinaryDownload extract +0ms
  MongoMS:DryMongoBinary generateOptions +3s
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +0ms
  MongoMS:DryMongoBinary generatePaths +1ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn"-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25'
}  +0ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +3ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25" +0ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:MongoBinaryDownload extract: archive: "/root/.cache/mongodb-binaries/mongodb-linux-x86_64-rhel70-4.0.25.tgz" final: "/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25" +8ms
  MongoMS:MongoBinaryDownload extractTarGz +1ms
  MongoMS:MongoBinary download: Removing Download lock +7s
  MongoMS:LockFile unlock: Unlocking file "/root/.cache/mongodb-binaries/4.0.25.lock" +7s
  MongoMS:LockFile checkLock: for file "/root/.cache/mongodb-binaries/4.0.25.lock" with uuid: "8e09732c-6993-452d-b692-32feb21a3901" +0ms
  MongoMS:LockFile checkLock: Lock File Already exists, and is for *this* process, with uuid: "8e09732c-6993-452d-b692-32feb21a3901" +2ms
  MongoMS:LockFile unlock: Lock Status was "availableInstance" for file "/root/.cache/mongodb-binaries/4.0.25.lock" +0ms
  MongoMS:LockFile unlockCleanup: for file "/root/.cache/mongodb-binaries/4.0.25.lock" +1ms
  MongoMS:MongoBinary download: Download lock removed +4ms
  MongoMS:MongoBinary getPath: Mongod binary path: "/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25" +0ms
Mongodb-Memory-Server* found binary: "/root/.cache/mongodb-binaries/mongod-x64-amzn"-4.0.25"
npm WARN saveError ENOENT: no such file or directory, open '/package.json'

... on the first line there seems to be an extra character (as stray "`"), ...

Yeah, that was just a formatting issue. I've edited the issue description to fix it.

@hasezoey
Copy link
Collaborator

hasezoey commented Aug 6, 2021

ok, now i see the issue for the binary name & download url:
could you print the output of cat /etc/os-release?

PS: i hope you dont mind me editing your post to be more readable

@hasezoey
Copy link
Collaborator

hasezoey commented Aug 6, 2021

Note: created issue #528 to track deriving binary name from config options

@restfulhead
Copy link
Author

Here you go:

cat /etc/os-release
NAME="Amazon Linux"
VERSION="2"
ID="amzn"
ID_LIKE="centos rhel fedora"
VERSION_ID="2"
PRETTY_NAME="Amazon Linux 2"
ANSI_COLOR="0;33"
CPE_NAME="cpe:2.3:o:amazon:amazon_linux:2"
HOME_URL="https://amazonlinux.com/"

PS: i hope you dont mind me editing your post to be more readable

Thanks, I learned something new today ;-)

@hasezoey
Copy link
Collaborator

hasezoey commented Aug 6, 2021

thanks, i guess i know where the problem is:

  • this package here does not seem to handle things being wrapped in " inside a os-release file
  • and also does not seems to handle (in addition to the one above), multiple ID_LIKE

@hasezoey
Copy link
Collaborator

hasezoey commented Aug 7, 2021

with 8609c49 (included in the released 7.3.5), the fix for the extra quote is included
(though also a hotfix which prevents multiple id_like for now)

hasezoey added a commit that referenced this issue Aug 7, 2021
@hasezoey
Copy link
Collaborator

hasezoey commented Aug 7, 2021

with ce42fad, multiple id_like are supported
it is included in 7.4.0-beta.1, could you maybe test it (and provide output again) before being released on master?

@restfulhead
Copy link
Author

Here you go:

npm install mongodb-memory-server-global@7.4.0-beta.1
> mongodb-memory-server-global@7.4.0-beta.1 postinstall /node_modules/mongodb-memory-server-global
> node ./postinstall.js

  MongoMS:ResolveConfig findPackageJson: Found package.json at "/node_modules/mongodb-memory-server-global/package.json" +0ms
Mongodb-Memory-Server* checking MongoDB binaries
  MongoMS:MongoBinary getPath +0ms
  MongoMS:DryMongoBinary generateOptions +0ms
  MongoMS:utils tryReleaseFile: "/etc/upstream-release/lsb-release" does not exist +0ms
  MongoMS:getos getLinuxInformation: Using etcOsRelease +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +8ms
  MongoMS:DryMongoBinary generatePaths +1ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25'
}  +1ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +4ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25" +0ms
  MongoMS:MongoBinary getPath: MongoBinary options: {
  "version": "4.0.25",
  "downloadDir": "/root/.cache/mongodb-binaries",
  "os": {
    "os": "linux",
    "dist": "amzn",
    "release": "2",
    "id_like": [
      "centos",
      "rhel",
      "fedora"
    ]
  },
  "arch": "x64",
  "systemBinary": "",
  "platform": "linux",
  "checkMD5": false
} +15ms
  MongoMS:DryMongoBinary locateBinary: Trying to locate Binary for version "4.0.25" +1ms
  MongoMS:DryMongoBinary generateOptions +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +0ms
  MongoMS:DryMongoBinary generatePaths +0ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25'
}  +0ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +2ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25" +0ms
  MongoMS:DryMongoBinary locateBinary: running generateDownloadPath +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +0ms
  MongoMS:DryMongoBinary generatePaths +0ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25'
}  +0ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +2ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25" +0ms
  MongoMS:DryMongoBinary locateBinary: could not find an existing binary +0ms
  MongoMS:MongoBinary getPath: "RUNTIME_DOWNLOAD" is "true", trying to download +7ms
  MongoMS:MongoBinary download +0ms
  MongoMS:MongoBinary download: Waiting to acquire Download lock for file "/root/.cache/mongodb-binaries/4.0.25.lock" +2ms
  MongoMS:LockFile lock: Locking file "/root/.cache/mongodb-binaries/4.0.25.lock" +0ms
  MongoMS:LockFile checkLock: for file "/root/.cache/mongodb-binaries/4.0.25.lock" with uuid: "undefined" +1ms
  MongoMS:LockFile createLock: trying to create a lock file for "/root/.cache/mongodb-binaries/4.0.25.lock" +1ms
  MongoMS:LockFile createLock: Lock File Created for file "/root/.cache/mongodb-binaries/4.0.25.lock" +3ms
  MongoMS:MongoBinary download: Download lock acquired +6ms
  MongoMS:MongoBinary download: Adding version 4.0.25 to cache +0ms
  MongoMS:MongoBinaryDownload getMongodPath +0ms
  MongoMS:DryMongoBinary generateOptions +9ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +0ms
  MongoMS:DryMongoBinary generatePaths +1ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25'
}  +0ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +2ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25" +0ms
  MongoMS:DryMongoBinary getBinaryName +1ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:MongoBinaryDownload startDownload +6ms
  MongoMS:MongoBinaryDownloadUrl Using "mongodb-linux-x86_64-rhel-4.0.25.tgz" as the Archive String +0ms
  MongoMS:MongoBinaryDownloadUrl Using "https://fastdl.mongodb.org" as the mirror +0ms
  MongoMS:MongoBinaryDownload download +4ms
  MongoMS:MongoBinaryDownload download: Downloading: "https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel-4.0.25.tgz" +1ms
  MongoMS:MongoBinaryDownload httpDownload +1ms
  MongoMS:MongoBinaryDownload httpDownload: trying to download "https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel-4.0.25.tgz" +0ms
  MongoMS:MongoBinary download: Removing Download lock +4s
  MongoMS:LockFile unlock: Unlocking file "/root/.cache/mongodb-binaries/4.0.25.lock" +4s
  MongoMS:LockFile checkLock: for file "/root/.cache/mongodb-binaries/4.0.25.lock" with uuid: "79b0808f-b890-4f54-b896-cd89aed5a5cb" +0ms
  MongoMS:LockFile checkLock: Lock File Already exists, and is for *this* process, with uuid: "79b0808f-b890-4f54-b896-cd89aed5a5cb" +8ms
  MongoMS:LockFile unlock: Lock Status was "availableInstance" for file "/root/.cache/mongodb-binaries/4.0.25.lock" +1ms
  MongoMS:LockFile unlockCleanup: for file "/root/.cache/mongodb-binaries/4.0.25.lock" +0ms
  MongoMS:MongoBinary download: Download lock removed +10ms
Mongodb-Memory-Server* failed to find an binary:
 Status Code is 403 (MongoDB's 404)

The download URL does not seem to work yet. Was your goal to support Amazon 2 or use one of the "likes"? For Amazon 2 the download URL would be linux/mongodb-linux-x86_64-amazon2-4.0.25.tgz. For RHEL the RHEL version is missing: linux/mongodb-linux-x86_64-rhel70-4.0.25.tgz (works) vs mongodb-linux-x86_64-rhel-4.0.25.tgz (does not work)

@hasezoey
Copy link
Collaborator

hasezoey commented Aug 9, 2021

Was your goal to support Amazon 2

not yet, see #527

or use one of the "likes"?

yes, this was more or less the intention, which with the log got confirmed, thanks, but like mentioned earlier in #525 (comment) (first in the list): Investigate why rhel without a version number was used, which is not fixed yet

but from first impressions, it looks like it does not generate a correct rhel download url, because no version for rhel was provided in the os list (will need to include a fallback) (EDIT: fixed with 55293a1 in 7.3.6)

@hasezoey
Copy link
Collaborator

hasezoey commented Aug 9, 2021

I've also tried setting MONGOMS_ARCH=linux-x86_64-amazon2. This does not seem to change anything.

i am currently looking into this (as mentioned in #525 (comment)), could you provide when you tried to use this option? (like did the binary already exist locally or still needed to be downloaded)

@hasezoey
Copy link
Collaborator

hasezoey commented Aug 9, 2021

version 7.4.0-beta.2 will include fixes for #527, could you test that version too? (commit a7e14b5)

(it should be released in a few minutes)
(EDIT: version 7.4.0-beta.2 is now released)

@restfulhead
Copy link
Author

Regarding "did the download file already exists": I usually remove the /root/.cache/mongodb-binaries directory before trying, because that matches my use case. (I'm trying to install the binaries on a Docker build node once, so that when the build runs, they will be found and not downloaded on every build.)

Here's the result with beta 2

npm install mongodb-memory-server-global@7.4.0-beta.2
> mongodb-memory-server-global@7.4.0-beta.2 postinstall /node_modules/mongodb-memory-server-global
> node ./postinstall.js

  MongoMS:ResolveConfig findPackageJson: Found package.json at "/node_modules/mongodb-memory-server-global/package.json" +0ms
Mongodb-Memory-Server* checking MongoDB binaries
  MongoMS:MongoBinary getPath +0ms
  MongoMS:DryMongoBinary generateOptions +0ms
  MongoMS:utils tryReleaseFile: "/etc/upstream-release/lsb-release" does not exist +0ms
  MongoMS:getos getLinuxInformation: Using etcOsRelease +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +6ms
  MongoMS:DryMongoBinary generatePaths +1ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +1ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25'
}  +0ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +4ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25" +1ms
  MongoMS:MongoBinary getPath: MongoBinary options: {
  "version": "4.0.25",
  "downloadDir": "/root/.cache/mongodb-binaries",
  "os": {
    "os": "linux",
    "dist": "amzn",
    "release": "2",
    "id_like": [
      "centos",
      "rhel",
      "fedora"
    ]
  },
  "arch": "x64",
  "systemBinary": "",
  "platform": "linux",
  "checkMD5": false
} +15ms
  MongoMS:DryMongoBinary locateBinary: Trying to locate Binary for version "4.0.25" +1ms
  MongoMS:DryMongoBinary generateOptions +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +0ms
  MongoMS:DryMongoBinary generatePaths +0ms
  MongoMS:DryMongoBinary getBinaryName +1ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25'
}  +0ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +2ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25" +0ms
  MongoMS:DryMongoBinary locateBinary: running generateDownloadPath +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +1ms
  MongoMS:DryMongoBinary generatePaths +0ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +1ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25'
}  +0ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +2ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25" +0ms
  MongoMS:DryMongoBinary locateBinary: could not find an existing binary +0ms
  MongoMS:MongoBinary getPath: "RUNTIME_DOWNLOAD" is "true", trying to download +8ms
  MongoMS:MongoBinary download +1ms
  MongoMS:MongoBinary download: Waiting to acquire Download lock for file "/root/.cache/mongodb-binaries/4.0.25.lock" +3ms
  MongoMS:LockFile lock: Locking file "/root/.cache/mongodb-binaries/4.0.25.lock" +0ms
  MongoMS:LockFile checkLock: for file "/root/.cache/mongodb-binaries/4.0.25.lock" with uuid: "undefined" +0ms
  MongoMS:LockFile createLock: trying to create a lock file for "/root/.cache/mongodb-binaries/4.0.25.lock" +2ms
  MongoMS:LockFile createLock: Lock File Created for file "/root/.cache/mongodb-binaries/4.0.25.lock" +4ms
  MongoMS:MongoBinary download: Download lock acquired +7ms
  MongoMS:MongoBinary download: Adding version 4.0.25 to cache +0ms
  MongoMS:MongoBinaryDownload getMongodPath +0ms
  MongoMS:DryMongoBinary generateOptions +12ms
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +1ms
  MongoMS:DryMongoBinary generatePaths +0ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +1ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25'
}  +0ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +3ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25" +0ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:MongoBinaryDownload startDownload +6ms
  MongoMS:MongoBinaryDownloadUrl Using "mongodb-linux-x86_64-amazon2-4.0.25.tgz" as the Archive String +0ms
  MongoMS:MongoBinaryDownloadUrl Using "https://fastdl.mongodb.org" as the mirror +1ms
  MongoMS:MongoBinaryDownload download +6ms
  MongoMS:MongoBinaryDownload download: Downloading: "https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-amazon2-4.0.25.tgz" +1ms
  MongoMS:MongoBinaryDownload httpDownload +0ms
  MongoMS:MongoBinaryDownload httpDownload: trying to download "https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-amazon2-4.0.25.tgz" +1ms
  MongoMS:MongoBinaryDownload httpDownload: moved "/root/.cache/mongodb-binaries/mongodb-linux-x86_64-amazon2-4.0.25.tgz.downloading" to "/root/.cache/mongodb-binaries/mongodb-linux-x86_64-amazon2-4.0.25.tgz" +3s
  MongoMS:MongoBinaryDownload makeMD5check: Checking MD5 of downloaded binary... +0ms
  MongoMS:MongoBinaryDownload makeMD5check: checkMD5 is disabled +0ms
  MongoMS:MongoBinaryDownload extract +0ms
  MongoMS:DryMongoBinary generateOptions +3s
  MongoMS:DryMongoBinary generateDownloadPath: Generating Download Path, preferGlobal: "true" +0ms
  MongoMS:DryMongoBinary generatePaths +0ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +1ms
  MongoMS:DryMongoBinary generatePaths: resolveConfigValue is not empty +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:DryMongoBinary generateDownloadPath: Paths: {
  legacyHomeCache: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25',
  modulesCache: '',
  relative: '/node_modules/mongodb-memory-server-global/mongodb-binaries/mongod-x64-amzn-4.0.25',
  resolveConfig: '/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25'
}  +0ms
  MongoMS:DryMongoBinary generateDownloadPath: no existing binary for version "4.0.25" was found +2ms
  MongoMS:DryMongoBinary generateDownloadPath: using resolveConfig (DOWNLOAD_DIR) "/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25" +0ms
  MongoMS:DryMongoBinary getBinaryName +0ms
  MongoMS:DryMongoBinary combineBinaryName +0ms
  MongoMS:MongoBinaryDownload extract: archive: "/root/.cache/mongodb-binaries/mongodb-linux-x86_64-amazon2-4.0.25.tgz" final: "/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25" +4ms
  MongoMS:MongoBinaryDownload extractTarGz +2ms
  MongoMS:MongoBinary download: Removing Download lock +7s
  MongoMS:LockFile unlock: Unlocking file "/root/.cache/mongodb-binaries/4.0.25.lock" +7s
  MongoMS:LockFile checkLock: for file "/root/.cache/mongodb-binaries/4.0.25.lock" with uuid: "6c39b107-7d34-4cd7-9330-12f4c141b935" +1ms
  MongoMS:LockFile checkLock: Lock File Already exists, and is for *this* process, with uuid: "6c39b107-7d34-4cd7-9330-12f4c141b935" +1ms
  MongoMS:LockFile unlock: Lock Status was "availableInstance" for file "/root/.cache/mongodb-binaries/4.0.25.lock" +0ms
  MongoMS:LockFile unlockCleanup: for file "/root/.cache/mongodb-binaries/4.0.25.lock" +1ms
  MongoMS:MongoBinary download: Download lock removed +4ms
  MongoMS:MongoBinary getPath: Mongod binary path: "/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25" +0ms
Mongodb-Memory-Server* found binary: "/root/.cache/mongodb-binaries/mongod-x64-amzn-4.0.25"
npm WARN saveError ENOENT: no such file or directory, open '/package.json'
npm WARN enoent ENOENT: no such file or directory, open '/package.json'
npm WARN !invalid#1 No description
npm WARN !invalid#1 No repository field.
npm WARN !invalid#1 No README data
npm WARN !invalid#1 No license field.

Download now works, but the extraction somehow fails. Any ideas?

ls -all -h /root/.cache/mongodb-binaries
-rwxr-xr-x 1 root root  61M Aug  9 16:44 mongod-x64-amzn-4.0.25

@hasezoey
Copy link
Collaborator

hasezoey commented Aug 9, 2021

Download now works, but the extraction somehow fails. Any ideas?

what exactly do you mean? guessing from the log and your ls output, i see nothing wrong (the only problems / error i see in the log is from npm, not related to MMS)

PS: if you mean the size of the binary, no this is not wrong, i downloaded the archive and looked at the file, it is ~61-~63MB (depending on how its shown / counted)

PPS: i would not recommend to have your project in the root of your container (i would recommend to at least put it in a dedicated directory)

@restfulhead
Copy link
Author

You're right: The binary looks good and is working. Not sure what I had in mind yesterday. So all good then, thanks! 👍

PPS: Right, I'm just using root in my test container. It's not the setup I have in the real project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Module: Version-String Generation This problem is because of the Version-String Generation (MongoBinaryDownloadUrl)
Projects
None yet
Development

No branches or pull requests

2 participants