【问题标题】:Installing package with poetry in github actions installs dependencies but not my project在 github 操作中安装带有诗歌的包会安装依赖项,但不会安装我的项目
【发布时间】:2021-11-24 12:46:04
【问题描述】:

我正在将一个 python 项目切换到用于依赖和打包管理的诗歌,并且在让我的 github 操作单元测试正常工作时遇到了问题。我认为问题在于诗歌实际上并没有安装我的包。当我在本地运行poetry install 时,在它安装依赖项后,它显示它安装了当前项目的行:

Installing the current project: monaco (0.1.0)

但是,当我在 github 操作中运行 poetry install 时,它会安装依赖项,但从不显示它安装当前项目的那一行。 Here's the github test log for context,查看“安装库”步骤。然后,当我在那之后尝试运行测试时,它们会因为找不到包而失败:

ImportError while importing test module '/home/runner/work/monaco/monaco/tests/test_MCCase.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/opt/hostedtoolcache/Python/3.9.7/x64/lib/python3.9/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
tests/test_MCCase.py:4: in <module>
    from monaco.MCCase import MCCase
E   ModuleNotFoundError: No module named 'monaco'

这是我第一次使用诗歌,所以我很可能在某个地方做了一些愚蠢的事情。但我在过去的几个小时里试图弄清楚,却一无所获。任何帮助将不胜感激!

我的 unit_tests.yml 文件如下所示:

name: Unit Tests
on:
  push:
    branches:
      - master
      - develop
  pull_request:
    branches:
      - master
      - develop

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - name: Check out repository
        uses: actions/checkout@v2
      
      - name: Set up python
        uses: actions/setup-python@v2
        with:
          python-version: 3.9

      - name: Install Poetry
        uses: snok/install-poetry@v1

      - name: Install library
        run: poetry install

      - name: Run tests
        run: |
          poetry run python -m pytest

【问题讨论】:

  • 我真的不明白所有这些新工具的意义。例如。就我而言,setup.py 在我的项目中运行良好。我不知道像诗歌这样的新工具有什么意义。也没有人解释它 - 他们就像,这是一个使用诗歌的例子,随心所欲地使用它。我想,不,谢谢,我得到的东西对我来说已经足够好了。也许我错过了一些我想的东西。
  • 这是我第一次打包项目,所以我尝试遵循最近的“最佳实践”建议。如果这不起作用,我肯定会退回到有效的方法。

标签: python pytest github-actions python-poetry


【解决方案1】:

原来我是个白痴,我刚刚将我的项目从“Monaco”重命名为“monaco”,但忘记将模块目录名称更新为小写。解决了我的问题。

【讨论】:

    猜你喜欢
    • 2017-10-31
    • 2021-05-01
    • 2021-10-17
    • 2016-08-26
    • 2015-04-01
    • 1970-01-01
    • 2019-01-02
    • 2018-12-23
    • 2021-08-07
    相关资源
    最近更新 更多