- 木偶教程
- 木偶 - 主页
- 基础木偶
- 木偶 - 概述
- 木偶 - 建筑
- 傀儡 - 安装
- 木偶 - 配置
- Puppet - 环境会议
- 木偶大师
- Puppet - 代理设置
- Puppet - SSL 签名证书设置
- 安装和配置 r10K
- Puppet - 验证设置
- Puppet - 编码风格
- Puppet - 清单文件
- 木偶 - 模块
- Puppet - 文件服务器
- 木偶 - 事实与事实
- 高级傀儡
- 木偶 - 资源
- Puppet - 资源抽象层
- 木偶 - 模板
- 木偶 - 课程
- 木偶 - 功能
- Puppet - 自定义函数
- 木偶 - 环境
- 木偶 - 类型和提供者
- Puppet - RESTful API
- 木偶 - 现场项目
- 木偶有用资源
- 木偶 - 快速指南
- 木偶 - 有用的资源
- 木偶 - 讨论
木偶 - 功能
Puppet 支持与任何其他编程语言一样的功能,因为 Puppet 的基本开发语言是 Ruby。它支持两种类型的函数,即语句名称和右值函数。
语句独立存在,并且没有任何返回类型。它们用于执行独立任务,例如在新清单文件中导入其他 Puppet 模块。
Rvalue返回值,并且只能在语句需要值时使用,例如赋值或 case 语句。
Puppet 中函数执行的关键是,它仅在 Puppet master 上执行,而不在客户端或 Puppet Agent 上执行。因此,他们只能访问 Puppet Master 上可用的命令和数据。已经存在不同类型的功能,甚至用户也有权根据要求创建自定义功能。下面列出了一些内置函数。
文件功能
文件资源的文件功能是在Puppet中加载模块并以字符串的形式返回所需的输出。它查找的参数是 <模块名称>/<文件> 引用,这有助于从 Puppet 模块的文件目录加载模块。
像 script/tesingscript.sh 一样,将从 <模块名称>/script/files/testingscript.sh 加载文件。函数具有读取和接受绝对路径的能力,这有助于从磁盘上的任何位置加载文件。
包含功能
在 Puppet 中,include 函数与任何其他编程语言中的 include 函数非常相似。它用于声明一个或多个类,从而评估这些类中存在的所有资源,最后将它们添加到目录中。它的工作方式是,include 函数接受类名、类列表或逗号分隔的类名列表。
使用include语句时要记住的一件事是,它可以在一个类中多次使用,但有一个限制,即只能包含单个类一次。如果包含的类接受参数,则包含函数将使用 <class name>::<parameter name> 作为查找键自动查找它们的值。
Include 函数不会导致类在声明时被包含在类中,因为我们需要使用包含函数。它甚至不会在声明的类及其周围的类中创建依赖关系。
在 include 函数中,只允许使用类的全名,不允许使用相对名称。
定义函数
在 Puppet 中,定义的函数有助于确定给定类或资源类型的定义位置并返回布尔值。还可以使用define 来确定是否定义了特定资源或定义的变量是否具有值。使用定义的函数时要记住的关键一点是,该函数至少接受一个字符串参数,该参数可以是类名、类型名、资源引用或“$name”形式的变量引用。
为本机和定义的函数类型定义函数检查,包括模块提供的类型。类型和类通过它们的名称进行匹配。该函数通过使用资源引用来匹配资源减速度。
定义函数匹配
# Matching resource types defined("file") defined("customtype") # Matching defines and classes defined("testing") defined("testing::java") # Matching variables defined('$name') # Matching declared resources defined(File['/tmp/file'])