#
# Demonstrates the use of polymorphism to call bundles.
#

body common control
{
      bundlesequence => { "example" };
}

###########################################

bundle agent example
{
  vars:
      "m" slist  => { "login", "ssh_keys", "environment" };
      "user" slist => { "diego", "mark", "neil" };

  methods:
      "set of $(m)" usebundle => $(m)("$(user)");

      
}

###########################################

bundle agent login(x)
{
  reports:
      "Setup login for $(x)";
}

###########################################

bundle agent ssh_keys(x)
{
  reports:
      "Setup ssh keys for $(x)";
}

###########################################

bundle agent environment(x)
{
  reports:
      "Setup login environment for $(x)";
}

