Policies


Get the latest docs

You are looking at documentation for an older release. Not what you want? Go to the current release documentation.

policies enable you to configure reusable behavior by referencing the groups for which a policy applies.

Note

Do not confuse the top-level policies section described here with policies that are defined in the top-level policy_types or the policies section under groups.

Note

The only supported policy type is the built-in cloudify.policies.scaling.

Declaration

  
policies:
  my_scaling_policy:
    type: cloudify.policies.scaling
    properties:
      ...
    targets: ...
  

Schema

Keyname Required Type Description
type yes string The policy type.
properties no dict The specific policy properties. The properties schema is defined by the policy type.
targets yes list A list of group names. The policy is applied on the groups specified in this list.

cloudify.policies.scaling Policy Schema

Keyname Required Type Default Description
default_instances no integer 1 The number of instances the groups referenced by this policy will have.
min_instances no integer 0 The minimum number of permitted group instances. (Not enforced by the scale workflow.)
max_instances no integer UNBOUNDED The maximum number of permitted group instances. (Not enforced by the scale workflow.)

Note

UNBOUNDED may be used literally as the value for max_instances. Internally, it is stored as -1, which may also be used.

Example

  
node_templates:
  vm: ...
  ip: ...

groups:
  vm_and_ip:
    members: [vm, ip]

policies:
  scaling_policy1:
    type: cloudify.policies.scaling
    properties:
      default_instances: 2
    targets: [vm_and_ip]