虽然 PYTHONPATH 设置正确,但仍出现 ModuleNotFoundError

问题描述 投票:0回答:1

一切看似正确,但仍然有错误。 相同的代码在我的本地计算机上工作,但在 GitLab-ci 上不起作用

我想知道“pip install -r $CI_PROJECT_DIR/scripts/config_creator/requirements.txt”是否会破坏某些东西

Gitlab-ci 阶段

Clone Siteconfigs:
  stage: configure-site
  script:
    - echo $PYTHONPATH
    - apt-get update --yes
    - apt-get install --yes  python3-pip
    - python3 --version
    - pip install -r $CI_PROJECT_DIR/scripts/config_creator/requirements.txt
    - echo $PYTHONPATH
    - export PYTHONPATH=$CI_PROJECT_DIR
    - echo $PYTHONPATH
    - python3 -c "import sys; print(sys.path)"
    - python3 $CI_PROJECT_DIR/scripts/config_creator/__main__.py create-loadtest-config-file --dataset-uri-list ${LOADTEST_SOURCES_DATASET_URI_LIST}

GitLab-CI 输出

$ echo $PYTHONPATH
/builds/qa/load-test-ci
$ python3 -c "import sys; print(sys.path)"
['', '/builds/qa/load-test-ci', '/usr/lib/python39.zip', '/usr/lib/python3.9', '/usr/lib/python3.9/lib-dynload', '/usr/local/lib/python3.9/dist-packages', '/usr/lib/python3/dist-packages']
$ python3 $CI_PROJECT_DIR/scripts/config_creator/__main__.py create-loadtest-config-file --dataset-uri-list ${LOADTEST_SOURCES_DATASET_URI_LIST}
Traceback (most recent call last):
  File "/builds/qa/load-test-ci/scripts/config_creator/__main__.py", line 1, in <module>
    from scripts.config_creator.cli.main import main
ModuleNotFoundError: No module named 'scripts.config_creator'

主要.py

from scripts.config_creator.cli.main import main

if __name__ == '__main__':
    main()
python gitlab
1个回答
0
投票

我发现了这个问题,这是因为

pip install
之后带有一个包名“scripts”,更改
scripts
->
my_scripts
后它就可以工作了。

© www.soinside.com 2019 - 2024. All rights reserved.