puppet: make arg puppetmaster optional
puppet: make arg puppetmaster optional

puppetmaster was used to determine if `agent` or `apply` should be used. But puppetmaster is not required by puppet per default. Puppet may have a config or could find out by itself (...) where the puppet master is.

It changed the code so we only use `apply` if a manifest was passed, otherwise we use `agent`.

This also fixes the example, which did not work the way without this change.

~~~
# Run puppet agent and fail if anything goes wrong
- puppet
~~~

thaim/ansible,thaim/ansible