Creating a manifest
If you already have some Puppet code (known as a Puppet manifest
), you can skip this section and go on to the next. If not, we'll see how to create and apply a simple manifest.
How to do it...
Follow these steps:
First, let's create a suitable directory structure to keep the manifest code in:
ubuntu@cookbook:~$ mkdir puppet ubuntu@cookbook:~$ cd puppet ubuntu@cookbook:~/puppet$ mkdir manifests
Within your
puppet
directory, create the filemanifests/site.pp
with the following contents:import 'nodes.pp'
Create the file
manifests/nodes.pp
with the following contents (use your machine's hostname in place ofcookbook
):node 'cookbook' { file { '/tmp/hello': content => "Hello, world\n", } }
Test your manifest with the
puppet apply
command. This will tell Puppet to read the manifest, compare it to the state of the machine, and make any necessary changes to that state:ubuntu@cookbook:~/puppet$ sudo puppet apply manifests/site.pp Notice: /Stage[main]//Node[cookbook]/File[/tmp/hello]/ensure: defined content as '{md5}a7966bf58e23583c9a5a4059383ff850' Notice: Finished catalog run in 0.06 seconds
To see if Puppet did what we expected (create the file
/tmp/hello
with the contents Hello, world), run the following command:ubuntu@cookbook:~/puppet$ cat /tmp/hello Hello, world