Skip to content

mongo and mongosh disappeared? #39

Description

@scspijker

Since today our builds fail because they can't find the mongo or mongosh clients. 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?

Activity

  1. marcuspoehls commented on Nov 25, 2022

    @marcuspoehls
    Member

    @scspijker Hey Stijn, you should have either the mongodb command when using the MongoDB 4.x release line or mongosh in 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?

  2. self-assigned this
    on Nov 25, 2022
  3. timmyg commented on Nov 25, 2022

    @timmyg

    @scspijker @marcuspoehls seeing similar issue - we relied on this giving us mongo and mongoimport and now getting:

    mongo: not found
    and
    mongoimport: not found

    Using mongo:5.0

  4. marcuspoehls commented on Nov 26, 2022

    @marcuspoehls
    Member

    @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.

  5. ringsaturn commented on Nov 26, 2022

    @ringsaturn
  6. marcuspoehls commented on Nov 26, 2022

    @marcuspoehls
    Member

    @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, and mongoimport commands directly. They would be available from within the MongoDB docker container. But not directly on the 22.04 host

  7. ringsaturn commented on Nov 26, 2022

    @ringsaturn
  8. marcuspoehls commented on Nov 27, 2022

    @marcuspoehls
    Member

    @ringsaturn Thanks for sharing the links!

  9. pinned this issue on Nov 29, 2022
  10. AdamGerthel commented on Mar 6, 2023

    @AdamGerthel

    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 found

    This 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
  11. marcuspoehls commented on Mar 7, 2023

    @marcuspoehls
    Member

    @AdamGerthel Hey Adam, GitHub Action runners using Ubuntu-latest doesn’t have MongoDB installed on the host system. That means you can’t use the mongo command. You’re installing the MongoDB Shell mongosh and not MongoDB directly on the host. If I understand it correctly, you must install MongoDB itself to have the mongo command available.

  12. AdamGerthel commented on Mar 7, 2023

    @AdamGerthel

    @marcuspoehls

    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?

  13. marcuspoehls commented on Mar 7, 2023

    @marcuspoehls
    Member

    @AdamGerthel

    Your MongoDB installation is missing step 4:

    sudo apt-get install -y mongodb-org
  14. AdamGerthel commented on Mar 7, 2023

    @AdamGerthel

    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 mongo still isn't found?

  15. marcuspoehls commented on Mar 7, 2023

    @marcuspoehls
    Member

    @AdamGerthel yep, the mongo command is no longer part of the MongoDB 6.0 installation. Sorry, I missed that detail. MongoDB 6.0 uses mongosh

  16. AdamGerthel commented on Mar 7, 2023

    @AdamGerthel

    Works - thanks!

  17. marcuspoehls commented on Mar 7, 2023

    @marcuspoehls
    Member

    Sweet!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions