news 2026/7/13 0:42:48

19、Chef 定义:创建可重用参数化宏的实用指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
19、Chef 定义:创建可重用参数化宏的实用指南

Chef 定义:创建可重用参数化宏的实用指南

1. 定义的特性与适用场景

在 Chef 中,定义(Definitions)有着独特的特性和适用场景。定义本身不能被其他资源通知,例如notifies :restart, resources(:service => "httpd")这样的通知,是服务资源 “httpd” 被通知执行重启操作,而定义只是对其他资源的封装,不定义任何动作,所以无法被通知。

当你遇到以下情况时,需要考虑是否适合使用定义:
- 如果你使用定义来定义现有资源难以构建的行为,或者希望其他资源能够通知该行为,那么可能需要考虑实现轻量级或重量级资源和提供者(LWRPs 和 HWRPs)。
- 如果你想为常用的资源和食谱代码集合创建一个可重用的包装器,定义是一个不错的选择。

2. 定义示例 1:骨架代码

下面通过一个具体的例子来详细说明如何创建定义。假设 AwesomeInc 公司创建了一个名为 “awesomeator” 的定制库存管理工具,需要创建一个食谱来安装和配置该工具。在安装工具之前,需要为其创建配置文件和目录结构,并且希望将这些准备步骤作为一个单一资源来处理,我们将这个定义命名为awesomeator_prepare

首先,创建定义所需的最小代码。所有定义都应放在食谱的/definitions文件夹下,建议将定义文件命名为与定义相同的名称。以下是awesomeator_prepare定义的骨架代码:

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/11 6:46:00

S-UI Windows版快速部署指南:10分钟完成专业网络面板搭建

S-UI Windows版快速部署指南:10分钟完成专业网络面板搭建 【免费下载链接】s-ui 项目地址: https://gitcode.com/GitHub_Trending/su/s-ui 还在为Windows平台网络服务部署而烦恼吗?S-UI Windows版提供了一键式安装体验,让你快速搭建功…

作者头像 李华
网站建设 2026/7/11 18:51:45

Mobaxterm-Chinese深度评测:一站式远程终端解决方案性能分析

Mobaxterm-Chinese深度评测:一站式远程终端解决方案性能分析 【免费下载链接】Mobaxterm-Chinese Mobaxterm simplified Chinese version. Mobaxterm 的简体中文版. 项目地址: https://gitcode.com/gh_mirrors/mo/Mobaxterm-Chinese 作为一款基于Mobaxterm专…

作者头像 李华
网站建设 2026/7/11 8:13:26

Windows Hyper-V运行macOS虚拟机全攻略:30分钟免费安装指南

Windows Hyper-V运行macOS虚拟机全攻略:30分钟免费安装指南 【免费下载链接】OSX-Hyper-V OpenCore configuration for running macOS on Windows Hyper-V. 项目地址: https://gitcode.com/gh_mirrors/os/OSX-Hyper-V 还在为无法体验macOS系统而烦恼吗&#…

作者头像 李华
网站建设 2026/7/11 23:55:18

20亿参数撬动物理世界:Perceptron发布Isaac-0.1多模态智能模型

导语 【免费下载链接】Isaac-0.1 项目地址: https://ai.gitcode.com/hf_mirrors/PerceptronAI/Isaac-0.1 由Meta前Chameleon团队创立的Perceptron公司推出20亿参数开源多模态模型Isaac-0.1,以轻量级架构实现物理世界实时交互能力,重新定义边缘智…

作者头像 李华
网站建设 2026/7/11 5:33:46

Android可访问性开发实践指南

Android可访问性开发实践指南 【免费下载链接】cw-omnibus Source code to omnibus edition of _The Busy Coders Guide to Android Development_ 项目地址: https://gitcode.com/gh_mirrors/cw/cw-omnibus 在当今移动应用生态中,可访问性已成为衡量应用质量…

作者头像 李华