当这些文件存在时,为什么我的Travis CI构建失败并显示“找不到文件”错误?

时间:2019-06-11 09:32:30

标签: travis-ci pytest

尽管文件具有绝对路径并且几乎肯定存在于指定位置,但是我试图确定为什么my Travis CI build job失败并出现诸如the one below之类的“找不到文件”错误:< / strong>

FileNotFoundError: [Errno 2] No such file or directory: '/home/travis/build/Lx/python-rosteron/test/HTML/login.html'

有问题的工作是Travis CI Job #1.1 for Lx/python-rosteron,其中清楚显示:

  • on line 160my GitHub repository被克隆到Lx/python-rosteron的相对路径中:

    $ git clone --depth=50 --branch=master https://github.com/Lx/python-rosteron.git Lx/python-rosteron
    
  • on line 168,该目录成为当前目录:

    $ cd Lx/python-rosteron
    
  • on line 169tree e402d3d被检出-demonstrably表明./test/HTML/login.html现在将存在:

    $ git checkout -qf e402d3dca365f9b5a3145b65b4fb28515177b581
    
  • on line 210,证明当前目录的绝对路径为/home/travis/build/Lx/python-rosteron,这意味着/home/travis/build/Lx/python-rosteron/test/HTML/login.html必须存在:

    Installing MechanicalSoup-0.11.0-py2.py3-none-any.whl to /home/travis/build/Lx/python-rosteron/.eggs
    
  • on line 291,关于此文件的指控存在:

    E       FileNotFoundError: [Errno 2] No such file or directory: '/home/travis/build/Lx/python-rosteron/test/HTML/login.html'
    

我尝试过的


谁能看到任何其他原因表明绝对路径引用的检出文件不存在?

1 个答案:

答案 0 :(得分:0)

问题是由于区分大小写引起的。

  • 目录名称为html
  • 测试正在寻找名为HTML的目录。
  • 我很长一段时间都没注意到这一点。

今天我还了解到,尽管我的Mac系统基于UNIX,但是具有不区分大小写的文件系统。否则我会很久以前就找到这个原因。