75 lines
1.7 KiB
XML
75 lines
1.7 KiB
XML
<snippet>
|
|
<content><![CDATA[# Class: ${1:name}
|
|
#
|
|
# This class installs ${1:name}
|
|
#
|
|
# Parameters:
|
|
#
|
|
# Actions:
|
|
# - Install ${1:name}
|
|
# - Manage ${1:name} service
|
|
#
|
|
# Requires:
|
|
#
|
|
# Sample Usage:
|
|
#
|
|
class ${1:name} \{
|
|
class install \{
|
|
package \{
|
|
"${2:package}":
|
|
ensure => present;
|
|
\}
|
|
\}
|
|
|
|
class config \{
|
|
file \{
|
|
"/etc/${1:name}":
|
|
ensure => directory,
|
|
owner => root,
|
|
group => root,
|
|
mode => 700,
|
|
require => Class["install"];
|
|
|
|
"/etc/${1:name}/${3:config}":
|
|
ensure => present,
|
|
owner => root,
|
|
group => root,
|
|
mode => 600,
|
|
require => Class["install"];
|
|
#content => template ("${1:name}/${3:config}.erb");
|
|
#source => [
|
|
# "puppet://$server/modules/${1:name}/\$\{fqdn\}.conf",
|
|
# "puppet://$server/modules/${1:name}/${1:name}.conf"
|
|
#];
|
|
\}
|
|
|
|
#logrotate::file { "${1:name}":
|
|
# source => "/etc/logrotate.d/${1:name}",
|
|
# log => "/var/log/${4:logfile}.log",
|
|
#\}
|
|
\}
|
|
|
|
class service \{
|
|
service \{ "${1:name}":
|
|
enable => true,
|
|
ensure => running,
|
|
#hasrestart => true,
|
|
#hasstatus => true,
|
|
require => Class["config"],
|
|
\}
|
|
\}
|
|
|
|
include install
|
|
include config
|
|
include service
|
|
|
|
Class["install"] ->
|
|
Class["config"] ->
|
|
Class["service"]
|
|
\}
|
|
${0}]]></content>
|
|
<tabTrigger>baseclass</tabTrigger>
|
|
<scope>source.puppet</scope>
|
|
<description>baseclass</description>
|
|
</snippet>
|