Edited at

Puppet 4.8 リリースノート ピックアップ

More than 1 year has passed since last update.

Puppet4.8.0(2016/11/1リリース)の、リリースノートで個人的に気になる変更をピックアップしてみました。動作確認とかはしてないので、間違っている部分があればご指摘ください。

4.8では、よりRubyぽい制御文が増えた感じです。


Puppet 4.8.0

Released November 1, 2016.


New features


New types


The type system has been extended with two types that help working with time related values. The Timestamp type is a point in time, and the Timespan is a duration.


時刻を表すTimestampタイプと、期間を表すTimespanタイプが追加されました。

フォーマットについてはこちらを参照。

なお、具体的な使用例は書かれていないみたいです。おそらく、Puppetを定期実行しているような運用で、ある時刻や期間を過ぎたら設定を反映するとかに使うかと思います。いまいち用途不明なので、要検証です。


New functions break, next, and return


The functions break(), next() and return() have been added to make it possible to do an “early exit” from a block of code.


break(), next(), return()が追加されました。

動作としては、Rubyとかと一緒に見えます。


Absolute support


It is now possible to specify that an absolute (positive) value is wanted when creating a new Integer, Float, or abstractly via Numeric by passing a second optional boolean argument to the new function where true means that an absolute value is wanted.


絶対値がサポートされました。


Enhancements


PUP-5831:


The type system and runtime now support binary data by using the Binary type. It allows binary content to be created from plain text and base 64 encoded text.


テキストなどから、バイナリーデータを作れるようになったみたいです。

https://docs.puppet.com/puppet/latest/reference/function.html#binary-value-to-string


PUP-6789:


This allows application components to consume capabilities from other environments. If multiple capabilities are found the capability from the current environment will be preferred.


environmentで分けている場合、他のenvironmentの機能も使えるようになったようです。具体的な部分は未確認なので、要検証です。


Bug fixes


PUP-6803:


Some puppet types (notably file and user) are capable of generating resources. (中略)

In Puppet 4.8.0 and later, if Puppet fails to generate resources for any managed resource, this results in a report status of failed.


リソースを変更できなかった場合の挙動が少し変わったようです。

例として、ディレクトなどをrecurse => trueにしていて、ディレクトリの中にあるsocketファイルなどが変更できなかった場合、

レポートのステータスがfailedになるようです。(以前だと、changedかunchanged)


PUP-6414:


Updated the puppet module tool to use “forgeapi.puppet.com” (instead of “forgeapi.puppetlabs.com”).


puppet module toolが使うURLが更新されたようです。

普通の場合は特に影響ないかと思いますが、もし、特定のURL以外の通信を許可していないようなネットワーク環境の場合、通信の許可設定を変更するとか必要かもしれません。


参考

Puppet 4.8 Release Notes

https://docs.puppet.com/puppet/4.8/reference/release_notes.html