首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

是否可以在不添加配方do metadata.rb的情况下使用include_recipe

在Chef中,include_recipe是用于在一个Chef配方中引入另一个配方的方法。它允许我们在不重复编写代码的情况下重用其他配方中的代码逻辑。

然而,在不添加配方do metadata.rb的情况下使用include_recipe是不可能的。metadata.rb是Chef配方的元数据文件,它包含了配方的名称、作者、版本等信息,还定义了配方所依赖的其他配方。通过metadata.rb,Chef可以正确地解析和加载配方的依赖关系。

因此,如果要使用include_recipe引入其他配方,必须先在当前配方的metadata.rb中添加对被引入配方的依赖声明。这样Chef才能正确地解析和加载依赖的配方,并在运行时执行include_recipe。

总结起来,不添加配方do metadata.rb的情况下是无法使用include_recipe的。metadata.rb是Chef配方的元数据文件,必须先声明依赖关系才能使用include_recipe引入其他配方。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

创建您第一本Chef Cookbook

如果觉得有必要的话,您也可以先查看Chef新手指南。 本教程中示例需要root用户账户权限。选择使用普通用户帐户读者使用Chef客户端节点时,很可能会需要使用sudo前缀命令。...cookbook中文件列表,以查看是否已创建了相关目录和文件: ls Berksfile CHANGELOG.md chefignore LICENSE metadata.rb README.md recipes...3.假如需要测试recipe配置方案,请将LAMP环境中cookbook添加到Chef服务器: knife cookbook upload lamp_stack 4.测试recipe配置方案是否添加到...注意 重复5-7步来上传cookbook并根据本文剩余部分指引按需运行chef客户端来确保您recipe配方能正常无错运行。添加一个新recipe时,请记得替换运行列表中recipe名。...只有虚拟主机发生更改时,才可以将notifies值应将该值添加到template资源中。

3.2K50

15个私有云上 DevOps 开源工具

例如,许多硬件相关操作匹配--你不能用一个软件工具,去物理连接服务器上硬件开关(本人注:服务器 IPMI 是可以做到远程控制呀。)...这几些工具类别的分选主要是人为合成由工具提供功能之间没有严格边界,并且某些情况下,这里所提到工具可以做更多范畴假设。...这允许你写幂等配方,意味着你可以多次应用相同配方,如果所有定义资源都具有指定状态,那么 Chef 将不会更改任何内容。 Chef 可以 服务器/客户端 模式中使用,也可在独立模式下运行。...Chef 菜谱示例: include_recipe "apt" package 'nginx' do action :install end service 'nginx' do...MCollective 使用代理插件来扩展其功能。 MCollective 服务器和客户端直接通信,而是发布/订阅模式中使用中间件系统(通常是RabbitMQ)。

2.3K50
  • 看我如何获取Chef服务器Meterpreter Shell

    这篇文章主要是想警告使用Chef朋友,你们管理员账户很可能早已在Chef web interface中泄露。管理员通常无法设置默认管理凭据。在这种情况下,Chef server主页将为你提供。...最近一次渗透测试中,我成功拿下了一台Chef server。然而对于Chef我并不了解,我使用较多是Puppet,可以系统方面的大部分时间我都在使用Puppet。...使用私钥,下载Chef server证书并验证knife连接是否正常工作。使用以下命令来执行此操作。 ? 快速浏览可用cookbooks,确保knife连接正常。 ?...下面所有你需要都在recipes/default.rb中。 ? 填充metadata.rb文件。以下为演示,实际操作中请尽量避免使用类似于 ‘evil’ 或 ‘pwnage’ 等字符串。...是时候把你Cookbook上传到服务器上了。 ? 请确认你cookbook现在是否已存在于Chef服务器中。你可以命令行或Web界面中执行以下操作。 ?

    1.1K20

    CMake 秘籍(四)

    某些情况下,我们使用构建系统配置或构建步骤中生成源代码。这可以用于根据配置步骤中收集信息来微调源代码,或者自动化原本容易出错重复代码机械生成。...我们在上一个配方中讨论第一个方法更干净、更简单,但通过本配方中提出方法,我们可以原则上实现 Python(或其他语言)允许任何配置时步骤。...准备工作 为了提供一个具体例子,我们设想需要编写一段代码来验证一个数是否为质数。存在许多算法,例如,我们可以使用埃拉托色尼筛法来区分质数和非质数。...还有更多 我们可以增强配方,以便在记录 Git 哈希之外包含额外信息。检测构建环境是否“脏”(即是否包含未提交更改和未跟踪文件)或“干净”并不罕见。...将此 Fortran 示例与 C++版本(配方 7)进行比较,我们可以注意到, Fortran 情况下,我们不得不做 CMake 工作较少;我们不需要使用target_include_directories

    22020

    有关 Android 应用桌面角标 (BadgeNumber) 实现探讨

    怎么 Android 系统下让自家应用图标像 iOS 系统那样支持数字角标的显示? 在网上找不到现成解决方案情况下,该如何去寻找问题突破口? 一种简洁性和扩展性都比较高封装思路。...在网上找不到现成解决方案情况下,该如何去寻找 问题突破口? 在上面的适配方案中,最容易找到而且奏效就是华为和小米配方案。...但不得不说,亏是大厂 APP,看了源码后,实现是学习了很多,特使是一些细节上处理。 上面总结出配方案,其实就是参考了网上各种资料以及 QQ 和微信源码之后总结出来可行配方案。...如果还不满足大家需求,大家可以去找一下 QQ 和微信源码来进行研读,并总结出一套属于自己配方案。 3....某个方法,不同版本下,可能实现方式不太一样。于是,怎么不断往某个类增加不同实现方式情况下,保持代码美观以及扩展性易读性变成了一个问题。

    4.1K70

    挑战30天学完Python:Day18 正则表达式

    要在python中使用RegEx,首先我们应该导入名为 re 模块。 re 模块 导入模块以后,我们就可以使用它来检查或者查找了。...txt[start:end] print(substring) # I love to teach 如例上边例子中示,我们目标字符串中查找是否有 I love to teach 字符串匹配...因为它可以整个文本中进行查找匹配。并返回第一找到对象,否则返回None。接下来还有一个更好函数 findall 它可以匹配所有并以列表形式返回。...正则语法 以往我们声明一个变量,使用是单引号或者双引号。如果要声明一个正则变量则是 r''下面的模式仅用小写字母标识apple,为了使其区分大小写,我们要么重写模式,要么添加一个标志。...re.findall(regex_pattern, txt) print(matches) # ['e-mail', 'email', 'Email', 'E-mail'] 正则数量 {} 我们可以使用花括号指定我们文本中寻找子字符串长度

    30940

    Chef 安装与使用

    可以接着 workstation 上执行 node list 命令查看是否多了一个 node: # knife node list Chef 使用 Chef 环境安装完成以后,我们来看看如何使用这套环境来进行配置管理... Workstation 上使用 Cookbook 来定义配置方法。Cookbook 使用 Ruby 脚本定义对 Chef Client 各种操作,具体 Cookbook 写法本文不做叙述。...Chef API 调用 实际使用中,我们经常需要将 Chef 集成到已有的系统中,这个时候就需要调用 Chef API 来完成。Chef 本身提供了 REST API,可以方便被调用。...Knife 命令行或者 Chef 管理页面的时候,只是这些情况下用户无需关心认证细节。...在其他需要调用这个 Handler Cookbook 里,只需要加上 include_recipe "myhandler"就可以了。

    2.4K30

    《SpringMVC从入门到放肆》三、DispatcherServleturl-pattern配置详解

    一、DispatcherServleturl-pattern配置 没有特别要求情况下,SpringMVC中央调度器DispatcherServleturl-pattern常使用后缀匹配方式进行配置...中央调度器调用处理器映射器来为其查找相应处理器时,肯定找不到。所以在这种情况下,所有的JSP页面跳转都会变为404。...二、url-pattern配置为/时静态资源访问 1:使用tomcat默认Servlet解决 web.xml中添加如下代码 ...(处理所有没有匹配到servlet mappings请求) 2:使用SpringMVCdefault-servlet-handler解决 springmvc.xml中添加<mvc:default-servlet-handler...3:使用SpringMVCresources解决 springmvc.xml中添加如下代码: <mvc:resources location="/images/" mapping="/images/

    1.3K91

    Flutter 构建完整应用手册-处理手势

    处理点击 我们不仅希望向用户展示信息,还希望我们用户与我们应用进行互动! 那么,我们如何回应基本操作,如点击和拖动? 我们将使用GestureDetector部件!...,请参阅“添加材质涟漪”配方。...添加材质涟漪效果 设计应遵循材质设计指南应用程序时,我们希望点击时将涟漪动画添加到部件。 Flutter提供InkWell部件来达到这个效果。...路线 创建条目列表 将每个项目包裹在Dismissible部件中 提供“向后消除”指标 1.创建条目列表 这个配方第一步是创建一个我们可以滑动项目列表。...有关如何创建列表更多详细说明,请按照使用长列表配方进行操作。 创建一个数据源 我们例子中,我们需要20个样品条目。 为了简单起见,我们将生成一个字符串列表。

    1.8K20

    SqlAlchemy 2.0 中文文档(五十三)

    是否有一种方法可以自动地只拥有唯一关键词(或其他类型对象),而不必查询关键词并获得包含该关键词引用?...e 给定上述配方可以使用以下概念验证脚本演示事务中重新连接。...警告 不应将以下配方用于写入数据操作。用户应仔细阅读和理解配方工作原理,并在生产使用配方之前针对特定 DBAPI 驱动程序非常仔细地测试故障模式。...,将语句发送到数据库时绕过绑定参数情况下,仅适用于: 使用仅限于调试目的 字符串不应传递到活动生产数据库 仅与本地、可信赖输入一起使用 上述用于字符串化字面值配方在任何情况下都不安全...print(column("q") - column("y").op("+")(column("z"))) q - (y + z) 现在,尚不清楚只要我们基于操作符优先级和结合性进行括号化,是否真的有一种方法可以自动为没有给定优先级通用运算符添加括号

    8710

    【swupdate文档 三】SWUpdate: 嵌入式系统软件升级

    在这种情况下,更新是没有操作员干预情况下完成:它被认为是“一键更新”,软件复位时启动,只需按下一个键(或者以任何目标可以识别的方式),自动进行所有检查。...输出可以使用帧缓冲设备显示LCD上,也可以定向到串行通讯端口上(Linux控制台)。 它通常用于单拷贝方案中,initrd中运行(用Yocto提供配方生成)。...新处理程序可以向需求列表中添加一些其他库 -当出现构建错误时,检查是否需要所有的处理程序,然后删除其中不需要部分。...如果无法SWUpdate正常链接,则你使用是旧版本U-Boot(你至少需要2016.05以上版本)。 如果是这样,你可以为包u-boot-fw-utils添加自己配方,以添加这个库代码。...结果是一个可以由引导加载程序直接加载Ramdisk。要在双拷贝模式下使用SWUpdate的话,则将包swupdate放到你rootfs中。检查你镜像配方文件,并简单地将其添加到安装包列表中。

    4K11

    今日头条屏幕适配方案终极版正式发布!前言方案对比AndroidAutoSize总结

    ,都不是完美的,从更客观角度来看,它们谁都不能成为最好那个,只有可能明确了它们各自优缺点,知道它们优缺点里什么是我能接受,什么是我不能接受是否能为了某些优点做出某些妥协,从而选择出一个最适合自己项目的屏幕适配方案...今日头条屏幕适配方案 和 SmallestWidth 限定符适配方案,感受下它们异同,我给建议是,可以项目中先使用 今日头条屏幕适配方案,感受下它使用方式以及适配效果,今日头条屏幕适配方侵入性非常低...,如果在使用过程中遇到什么不能解决问题,马上可以切换为其他屏幕适配方案,切换过程中也花费不了多少工作量,试错成本非常低 但如果你项目中先使用 SmallestWidth 限定符适配方案,之后使用过程中再遇到什么不能解决问题...这也很简单,你无法保证所有设备高宽比例都和你设计图上高宽比例一致,特别是现在全面屏全面推出情况下,如果这里这样做的话,当你项目运行在与设计图高宽比例不一致设备上时,布局会出现严重变形,这个几率非常大...,并且 ExternalAdaptManager 是支持链式调用,以便于持续添加多个页面 当然 ExternalAdaptManager 不仅可以对三方库页面使用,也可以让自己项目中 Activity

    3.4K31

    愈发熟练 CSS 技巧

    IIS上也已经对最新 IPheonX 做出了适配方案,建议使用 rem + lib-flexible 适配方案 简单解析 lib-flexible.js 是手淘团队制作一个 Js 插件,实际上就是能过...: import 'amfe-flexible' /* do something */ 复制代码 优劣 UC 浏览器上发现了,横批竖屏转换不过来情况,已经找到兼容方案,是通过js页面的 复制代码 而且官方也说明这个是 vw 过度方案,建议长期使用; PostCSS + VW 适配方案 简单解析 PostCSS 将 CSS 变成 JavaScript...//是否允许媒体查询转换为 px 复制代码 优劣 vw 兼容性貌似还没那么好,有可能需要做降级处理,需要使用到 CSS Houdini 和 CSS Polyfill 上一些针对 vw 单位做一个降级处理...;vw 在混合使用到 margin px 时候 有可能超出100vw,目前使用 padding 来代替 marging 再配置上box-sizing可以解决,亦可以使用 css calc() 函数来做一个计算

    82720

    全网最硬核 JVM 内存解析 - 3.大页分配 UseLargePages

    之后,大页面通常是通过系统管理控制预先分配并放入池里面的。然后,可以通过 mmap 系统调用或者 shmget,shmat 这些 SysV 共享内存系统调用使用大页分配方式从池中申请内存。...UseHugeTLBFS:明确指定是否使用前面第一种大页分配方式 hugetlbfs 并且通过 mmap 系统调用分配内存。 linux 下默认为 false。...UseSHM:明确指定是否使用前面第一种大页分配方式 hugetlbfs 并且通过 shmget,shmat 系统调用分配内存。 linux 下默认为 false。...UseTransparentHugePages:明确指定是否使用前面第二种大页分配方式 THP。 linux 下默认为 false。...这里只是验证下这些大页内存配方是否可用,只有可用后面真正分配内存时候才会采用那种可用大页内存分配方式。

    88210

    Netflix:我们是如何评估Codec性能

    接下来我们将讨论影响视频编解码器评估几个因素: 1. 编码器实现 2. 编码器设置 3. 方法 4. 内容 5. 度量 适用情况下,我们对传统比较方法和自适应流媒体方法进行了区分。...结果显示多场景视频可以节省25%BD-rate。使DO特别适用于自适应流和编解码器比较三个特征是: 1. 它与编解码器无关,因为它可以以相同方式应用于任何编码器。 2....它可以使用任何指标来指导其优化过程。 3. 它消除了对编码器中各种场景之间高级码率控制需要。较低级别的码率控制,如帧内自适应量化,是仍然有用,因为DO不会低于场景级别。...大多数情况下,它们是单场景序列。 • 度量标准:使用经典PSNR为亮度分量计算BD-rate节省。 结果总结在下表中。BD-rate是相对于x264百分比给出。...例如,凸包上计算度量或将HVMAF数添加到报告度量中相对容易。 就像伟大食谱一样,视频编码也有核心元素; VMAF,动态优化和出色编解码器。

    1.1K20

    Android 悬浮窗权限各机型各系统适配大全(总结)

    众所周知,国产手机种类实在是过于丰富,而且一个品牌不同版本还有不一样配方法,比如某米(嫌弃脸),所以我实际适配过程中总结了几种通用方法, 大家可以参考一下: 直接百度一下,搜索关键词“小米手机悬浮窗适配...常规手机 由于 6.0 之前版本常规手机并没有把悬浮窗权限单独拿出来,所以正常情况下可以直接使用 WindowManager.addView 方法直接弹出悬浮窗。...首先第一步当然是判断是否赋予了悬浮窗权限,这个时候就需要使用到 AppOpsManager 这个类了,它里面有一个 checkop 方法: /** * Do a quick check for whether...不过由于这样可以申请权限就弹出悬浮窗,而且最新 6.0+ 系统上也没有修复,所以如果这个漏洞被滥用,就会造成一些意想不到后果,因此我个人倾向于使用 QQ 配方案,也就是上面的正常适配流程去处理这个权限...可以看到 25 版本之后,注意是之后,也就是 8.0,系统将会限制 type_toast 使用,会直接抛出异常,这也是需要注意地方。

    6.5K31

    Ubuntu 18.04上安装Chef服务器工作站

    这背后具体过程取决于您登录linode主机时候是否使用了SSH密钥身份验证登录方式。 如果没有使用密钥身份验证登录方式,请直接从Chef服务器复制文件。...下载Cookbook(‘烹饪手册’)(可选) 使用Chef服务时,您将希望Chef客户端可以定期节点上运行,并将所有配置更改推送到Chef中央服务器。...将配方添加到节点运行列表中,替换nodename为节点名称: knife node run_list add nodename 'recipecron-delvalidate::default' 将菜谱...运行列表中配方cookbook时,节点将会从服务器中拉取对应程序并运行。在这种情况下,这种食谱一般都是含有cron-delvalidate定时作业。...这样从服务器拉取配方可以保证能够完整制作,然后Chef站点和节点可以将变更配置推送到Chef服务器,并将这些信息同步到节点列表上,各个节点和工作站每隔一小时会自动拉取cookbook“烹饪手册“到自己节点上

    2.1K30

    Siemens -- 配方数据自动传送

    2.2 配方数据记录传送方式 HMI及PLC之间配方数据传送方式分为两种: 非同步传送 通过“数据记录“区域指针实现同步传送 通常情况下使用配方视图“或者”配方画面“操作配方时,建议组态“非同步传送...: 传送数据记录时,PLC是“主动方“ PLC需要对有关配方号和配方数据记录编号信息进行评估 数据记录传送由作业信箱触发 3 作业信箱方式传送数据记录 PLC可以使用“作业信箱”将作业传送到HMI...如果HMI变量访问模式为“绝对访问”,全局数据块中定义长度为4数组类型变量,或者定义4 个连续Word类型变量均可。 通常情况下,“区域指针”所使用变量仅在全局数据块中定义。...如果HMI变量访问模式为“绝对访问”,全局数据块中定义长度为5数组类型变量,或者定义5 个连续WORD类型变量均可。 通常情况下,“区域指针”所使用变量仅在全局数据块中定义。...激活“协调数据传输”选项如下图所示: 4.3 配方传送流程 通常情况下,建议使用作业信箱方式操作配方时组态”同步传送“功能。但通过配方视图及配方画面操作配方可以组态同步传送功能。

    1.9K32

    Siemens-上下有序,配方数据自动传送

    2.2 配方数据记录传送方式 HMI及PLC之间配方数据传送方式分为两种: 非同步传送 通过“数据记录“区域指针实现同步传送 通常情况下使用配方视图“或者”配方画面“操作配方时,建议组态“非同步传送...: 传送数据记录时,PLC是“主动方“ PLC需要对有关配方号和配方数据记录编号信息进行评估 数据记录传送由作业信箱触发 3 作业信箱方式传送数据记录 PLC可以使用“作业信箱”将作业传送到HMI...如果HMI变量访问模式为“绝对访问”,全局数据块中定义长度为4数组类型变量,或者定义4 个连续Word类型变量均可。 通常情况下,“区域指针”所使用变量仅在全局数据块中定义。...如果HMI变量访问模式为“绝对访问”,全局数据块中定义长度为5数组类型变量,或者定义5 个连续WORD类型变量均可。 通常情况下,“区域指针”所使用变量仅在全局数据块中定义。...激活“协调数据传输”选项如下图所示: 4.3 配方传送流程 通常情况下,建议使用作业信箱方式操作配方时组态”同步传送“功能。但通过配方视图及配方画面操作配方可以组态同步传送功能。

    1.1K30

    Add Blog Animation -- Wowjs

    -01-31:新增提示 更新butterfly_v3.6.0适配方案 点击查看参考教程 参考方向 教程原贴 动画样式依赖 animate.css wowjs文档 基础引用 若您不想修改源码,只需使用基础引用方案即可...更多动画样式可以查看。 插件化配置方案 点击查看插件化配置方案 插件化配置方案是基于Butterfly_v3.4.1编写,低版本可能有些许不适用,可以考虑使用基础引入方案或者升级主题。...新建: 使用方式 TO DO 提供wowjs引入基本方案 将配置内容整合进配置文件 添加异步加载和pjax适配 编写外挂标签 将wowjs开关整合进front-matter控制项(废弃,与pjax冲突过大...) BUG反馈归纳 如果使用了gulp-babel,压缩js时可能报错: 修改[Blogroot]\gulpfile.js,添加一行屏蔽项,不要压缩wow_init.js wowjs初始化设置中设置了...推测是因为wowjs原本是基于animate.css_v3.0编写,但是本帖沿用是4.0。好吧,经测试,3.0也生效 解决方案是自主添加媒体选择。

    1.1K40
    领券