- Puppet 5 Essentials(Third Edition)
- Martin Alfke Felix Frank
- 281字
- 2021-07-02 18:22:22
Variable types
As of Puppet 3.x, there are only four variable types: strings, arrays, hashes, and Booleans. Puppet 4 introduces a rich data type system. The new data type system will be explained at the end of, Chapter 7, New Features from Puppet 4 and 5. The basic variable types work much like their respective counterparts in other languages. Depending on your background, you might be familiar with using associative arrays or dictionaries as semantic equivalents to Puppet's hash type:
$a_bool = true
$a_string = 'This is a string value'
$an_array = [ 'This', 'forms', 'an', 'array' ]
$a_hash = {
'subject' => 'Hashes',
'predicate' => 'are written',
'object' => 'like this',
'note' => 'not actual grammar!',
'also note' => [ 'nesting is',
{ 'allowed' => ' of course' } ],
}
Accessing the values is equally simple. Note that the hash syntax is similar to that of Ruby, not Perl:
$x = $a_string
$y = $an_array[1]
$z = $a_hash['object']
Strings can be used as resource attribute values, but it's worth noting that a resource title can also be a variable reference:
package { $apache_package:
ensure => 'installed'
}
It's intuitively clear what a string value means in this context. But you can also pass arrays here to declare a whole set of resources in one statement. The following manifest manages three packages, making sure that they are all installed:
$packages = [
'apache2',
'libapache2-mod-php5',
'libapache2-mod-passenger',
]
package { $packages:
ensure => 'installed'
}
You will learn how to make efficient use of hash values in later chapters.
The array does not need to be stored in a variable to be used, but it is a good practice in some cases.
- 高手是如何做產品設計的(全2冊)
- C語言程序設計案例教程(第2版)
- C語言程序設計(第2 版)
- Visual C++串口通信開發入門與編程實踐
- 區塊鏈架構與實現:Cosmos詳解
- Mastering Entity Framework
- SQL for Data Analytics
- Apache Spark 2 for Beginners
- Scratch 3.0少兒編程與邏輯思維訓練
- INSTANT CakePHP Starter
- 一本書講透Java線程:原理與實踐
- 智能手機APP UI設計與應用任務教程
- Scratch趣味編程:陪孩子像搭積木一樣學編程
- Mastering Elasticsearch(Second Edition)
- 新印象:解構UI界面設計