【问题标题】:Find path of Makefile inside Docker - shell script在 Docker 中查找 Makefile 的路径 - shell 脚本
【发布时间】:2020-06-16 14:38:58
【问题描述】:

我有一个包含以下目录的 docker: 〜/规格/脚本。那里有file.c 和对应的Makefile。另外我在同一目录中添加了 C_util.sh:

set -e
make -f Makefile

我想通过一个文件 ~/specs/helpers/shared_endpoints/Cutil.rb 来进行 Ruby 测试。

我写了:

    describe 'the script' do
        include Rspec::Bash

        let(:stubbed_env) { create_stubbed_env }

        it 'runs the script' do
            stdout, stderr, status = stubbed_env.execute(
                '${PWD}/specs/scripts/C_util.sh',

但是在正确的目录中找不到 Makefile,我有退出代码 2。我的问题是如何导航到 Makefile?

【问题讨论】:

    标签: ruby-on-rails ruby docker makefile rspec


    【解决方案1】:

    可能有几个原因。

    1) 您的字符串插值错误,字符串插值在 Ruby 中与 #{} 一起使用,但最好使用 File.join

    File.join(Dir.pwd, "scripts", "C_util.sh")
    

    2) 为了进行更多调试,我建议使用

    打印控制台的路径
    puts File.join(Dir.pwd, "scripts", "C_util.sh")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-17
      • 2015-02-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-15
      • 2013-02-09
      相关资源
      最近更新 更多