首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当noop运行时改变行为-noop元参数不工作?

当noop运行时改变行为-noop元参数不工作?
EN

Stack Overflow用户
提问于 2014-07-07 16:04:24
回答 1查看 186关注 0票数 0

我有以下资源定义

代码语言:javascript
复制
 file { '/usr/lib/oozie/libext/hadoop-lzo-0.5.0.jar':
      ensure  => present,
      group   => 'root', 
      owner   => 'root', 
      source  => '/usr/lib/hadoop/lib/hadoop-lzo-0.5.0.jar',
      mode    => 0755,
      require => [Package['lzo'],Package['lzo-devel'],Package['hadoop-lzo'],Package['hadoop-lzo-native']],
    }

基本上把jar艺术品复制到想要的位置。这里的问题是定义,它指向通过安装这些包之一创建的位置。当在noop模式下运行傀儡时,这个资源定义会导致失败,因为没有这样的源--这是非常符合逻辑的。

有办法改变这种行为吗?我不想跳过它的所有依赖项。或建议的方法是什么?我想避免将jar复制到模块文件中。

我找到了noop元参数,文档这里,但这似乎也没有帮助。因此,资源规范看起来如下:

代码语言:javascript
复制
file { '/usr/lib/oozie/libext/hadoop-lzo-0.5.0.jar':
      ensure  => present,
      group   => 'root', 
      owner   => 'root', 
      source  => '/usr/lib/hadoop/lib/hadoop-lzo-0.5.0.jar',
      mode    => 0755,
      noop    => false,
      require => [Package['lzo'],Package['lzo-devel'],Package['hadoop-lzo'],Package['hadoop-lzo-native']],
    }

我需要打开什么吗?还是我误解了什么?如何检测模块在noop模式下运行?如果我想解决一些麻烦的问题。就像如果noop然后跳过

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-08 11:16:31

当客户端以noop模式运行时,$clientnoop事实将为真,否则为false。

我不确定这是否是最好的解决方案,但当$clientnoop为真时,您可以包含不同的资源。您的“noop资源”可以是具有相同参数的文件资源,但源除外。这样,仍然可以应用依赖于此文件的其他资源。

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

https://stackoverflow.com/questions/24614954

复制
相关文章

相似问题

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