首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检查主厨食谱NOT_IF中是否存在目录?

如何检查主厨食谱NOT_IF中是否存在目录?
EN

Stack Overflow用户
提问于 2015-10-09 14:56:52
回答 1查看 2.8K关注 0票数 0

在主厨食谱中,我有一个bash资源,基本上可以下载并安装一个名为革命R的软件,我必须说我是Ruby中的一个菜鸟。

这是我的资源:

代码语言:javascript
复制
bash 'download_revolutionr' do
    code <<-EOH
    mkdir -p /tmp/RRO-#{rro_version}
    wget https://mran.revolutionanalytics.com/install/RRO-#{rro_version}-#{rro_os_platform}-#{rro_os_version}.x86_64.deb -P /tmp/RRO-#{rro_version}
    wget https://mran.revolutionanalytics.com/install/RevoMath-#{rro_version}.tar.gz -P /tmp/RRO-#{rro_version}
    tar -xzf /tmp/RRO-#{rro_version}/RevoMath-#{rro_version}.tar.gz -C /tmp/RRO-#{rro_version}
    EOH
  not_if { ::Dir.exists?("/tmp/RR0-" + rro_version) }
end

我的想法是,如果/tmp/RRO版本目录中已经有磁盘,则不要下载该软件。因此,我在not_if中添加了Dir.exists条件。但是无论如何都会执行资源(下载软件的一个新的无用副本)。

知道这是怎么回事吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-09 21:00:26

我建议签出处理远程存档包的方舟食谱

代码语言:javascript
复制
include_recipe "ark"

ark 'RevoMath' do
  url 'https://mran.revolutionanalytics.com/install/RevoMath-1.0.1.tar.gz'
end

它将把tar包内容安装到/usr/local/RevoMath-1.0.1目录中。可以重写这些默认值。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33041428

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档