Repository navigation
mongo and mongosh disappeared? #39
Description
Activity
@scspijker Hey Stijn, you should have either the
mongodbcommand when using the MongoDB 4.x release line ormongoshin MongoDB 5.x and 6.x. Can you please check your GitHub Actions logs for this package and have a look which version has been used to start the MongoDB container?@scspijker @marcuspoehls seeing similar issue - we relied on this giving us
mongoandmongoimportand now getting:mongo: not found
and
mongoimport: not foundUsing mongo:5.0
@timmyg Hey Tim, thanks for confirming the issue.
@scspijker @timmyg Tim, Stijn, can you please share a link to a failed GitHub Actions job? I need more details on the error and some context in which it fails.
@marcuspoehls Hi, I made an example repo https://github.com/ringsaturn/mongodb-action-debug for this issue and a sample CI:
@ringsaturn Thank you for the repo! That helps.
You're using Ubuntu 22.04 on that runner. The new 22.04 runners don't have MongoDB installed anymore. MongoDB was available on 20.04, but removed on 22.04.
That's the reason you can't use the
mongo,mongosh, andmongoimportcommands directly. They would be available from within the MongoDB docker container. But not directly on the 22.04 host@marcuspoehls Thanks, it’s problem of Ubuntu 22.04 runner not this action.
For anyone interested in this problem, please track these issues:
Reacted by Matti Schneider@ringsaturn Thanks for sharing the links!
- pinned this issue
on Nov 29, 2022 Any ideas on how to work around this? I tried installing mongo:
- name: Install mongosh run: | sudo apt-get update sudo apt-get install gnupg wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add - echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list sudo apt-get update sudo apt-get install -y mongodb-mongosh
But that didn't help. Still getting
mongo: command not foundThis is the whole file
name: Run Tests on: push: branches: [master] pull_request: branches: [master] jobs: build: runs-on: ubuntu-latest env: TEST_MONGODB_URI: mongodb://localhost:27017/test steps: - uses: actions/checkout@v3 - name: Use Node.js 16.x uses: actions/setup-node@v3 with: node-version: 16 cache: 'yarn' - name: Install mongosh run: | sudo apt-get update sudo apt-get install gnupg wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add - echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list sudo apt-get update sudo apt-get install -y mongodb-mongosh - name: Start MongoDB uses: supercharge/mongodb-github-action@1.8.0 with: mongodb-version: 6.0 - run: yarn install - run: yarn build - run: mongo --eval "db.getSiblingDB('test')" - run: yarn test
@AdamGerthel Hey Adam, GitHub Action runners using
Ubuntu-latestdoesn’t have MongoDB installed on the host system. That means you can’t use themongocommand. You’re installing the MongoDB Shellmongoshand not MongoDB directly on the host. If I understand it correctly, you must install MongoDB itself to have themongocommand available.Ubuntu-latest doesn’t have MongoDB installed on the host system. That means you can’t use the mongo command.
Yeah I know - that's what I was trying to fix by adding the "Install mongosh" step.
You’re installing the MongoDB Shell mongosh and not MongoDB directly on the host.
Ok, I just followed the official install instructions and thought that would work. What would be the way to install mongodb and not mongosh then?
Ok, thanks! Still getting the same error nonetheless:
Run mongo --eval "db.getSiblingDB('test')"
/home/runner/work/_temp/596db73b-b917-44a6-b5e8-49f67dea387e.sh: line 1: mongo: command not found
Error: Process completed with exit code 127.It looks like the install went well, so I'm not sure what the problem is. I've tried using Act to be able to test it locally, but for some reason, I haven't been able to get it working (which seems to be because my repo is private).
Any ideas on why
mongostill isn't found?@AdamGerthel yep, the
mongocommand is no longer part of the MongoDB 6.0 installation. Sorry, I missed that detail. MongoDB 6.0 usesmongoshReacted by Adam GerthelWorks - thanks!
Sweet!
Since today our builds fail because they can't find the
mongoormongoshclients. This is for both version 1.7.0 and 1.8.0 of this step.Did this step install client software before and has something changes / broken, or did we accidentally get mongo client software from Github Actions itself?