Skip to content

Latest commit

 

History

History
33 lines (22 loc) · 797 Bytes

canonifyuniquely.markdown

File metadata and controls

33 lines (22 loc) · 797 Bytes
layout title published
default
canonifyuniquely
true

[%CFEngine_function_prototype(text)%]

Description: Convert an arbitrary string text into a unique legal class name.

This function turns arbitrary text into class data, appending the SHA-1 hash for uniqueness. It is exactly equivalent to concat(canonify($(string)), "_", hash($(string),"sha1"); for a given $(string) but is much more convenient to write and remember.

A common use case is when you need unique array keys for each file in a list, but files in the list may have the same name when canonify-ed.

[%CFEngine_function_attributes(text)%]

Example:

commands:

   "/var/cfengine/bin/$(component)"

       if => canonifyuniquely("start_$(component)");

See also: [canonify()][canonify]).