Skip to content

Instantly share code, notes, and snippets.

@rail
Created January 22, 2013 19:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rail/4597418 to your computer and use it in GitHub Desktop.
Save rail/4597418 to your computer and use it in GitHub Desktop.
modules/buildslave/manifests/startup/desktop.pp | 4 +++-
.../gnome-terminal.desktop.erb} | 2 +-
modules/disableservices/manifests/displaymanager.pp | 6 ++++++
modules/ntp/manifests/atboot.pp | 13 +++++++------
modules/ntp/templates/ntpdate.default.erb | 14 ++++++++++++++
modules/packages/manifests/ntpdate.pp | 16 ++++++++++++++++
modules/packages/manifests/xvfb.pp | 4 +++-
modules/toplevel/manifests/slave.pp | 2 +-
8 files changed, 51 insertions(+), 10 deletions(-)
diff --git a/modules/buildslave/manifests/startup/desktop.pp b/modules/buildslave/manifests/startup/desktop.pp
index 8254be4..9e63f65 100644
--- a/modules/buildslave/manifests/startup/desktop.pp
+++ b/modules/buildslave/manifests/startup/desktop.pp
@@ -1,15 +1,17 @@
class buildslave::startup::desktop {
include users::builder
+ include packages::mozilla::python27
+
file {
["${::users::builder::home}/.config",
"${::users::builder::home}/.config/autostart"]:
ensure => directory,
owner => $users::builder::username,
group => $users::builder::group;
"${::users::builder::home}/.config/autostart/gnome-terminal.desktop":
require => File["/usr/local/bin/runslave.py"],
- source => "puppet:///modules/buildslave/gnome-terminal.desktop",
+ content => template("buildslave/gnome-terminal.desktop.erb"),
owner => $users::builder::username,
group => $users::builder::group;
}
}
diff --git a/modules/buildslave/files/gnome-terminal.desktop b/modules/buildslave/templates/gnome-terminal.desktop.erb
similarity index 62%
rename from modules/buildslave/files/gnome-terminal.desktop
rename to modules/buildslave/templates/gnome-terminal.desktop.erb
index 8b7b7d0..47c6b45 100644
--- a/modules/buildslave/files/gnome-terminal.desktop
+++ b/modules/buildslave/templates/gnome-terminal.desktop.erb
@@ -1,10 +1,10 @@
[Desktop Entry]
Type=Application
-Exec=gnome-terminal -x python /usr/local/bin/runslave.py
+Exec=gnome-terminal -x <%= scope.lookupvar('::packages::mozilla::python27::python') %> /usr/local/bin/runslave.py
Hidden=false
X-GNOME-Autostart-enabled=true
Name=Talos slave
Comment=Start runslave in a terminal session
StartupNotify=false
Terminal=false
Type=Application
diff --git a/modules/disableservices/manifests/displaymanager.pp b/modules/disableservices/manifests/displaymanager.pp
index 86fc0d4..43d59f9 100644
--- a/modules/disableservices/manifests/displaymanager.pp
+++ b/modules/disableservices/manifests/displaymanager.pp
@@ -5,11 +5,17 @@ class disableservices::displaymanager {
Ubuntu: {
file {
# removing the following file disables display manager start
"/etc/X11/default-display-manager":
ensure => absent,
force => true;
}
}
+ Darwin, CentOS: {
+ # N/A
+ }
+ default: {
+ fail("Cant disable DM on $::operatingsystem")
+ }
}
}
diff --git a/modules/ntp/manifests/atboot.pp b/modules/ntp/manifests/atboot.pp
index 6ce845a..1c4383b 100644
--- a/modules/ntp/manifests/atboot.pp
+++ b/modules/ntp/manifests/atboot.pp
@@ -1,23 +1,24 @@
class ntp::atboot {
- include packages::ntp
-
case $::operatingsystem {
CentOS, Darwin: {
+ include packages::ntp
service {
"ntpdate":
enable => true,
hasstatus => false;
}
}
Ubuntu: {
- service {
- "ntp":
- enable => true,
- hasstatus => false;
+ include config
+ include packages::ntpdate
+ # ntpdate is run by if-up
+ file {
+ "/etc/default/ntpdate":
+ content => template("ntp/ntpdate.default.erb");
}
}
default: {
fail("cannot instantiate on $::operatingsystem")
}
}
}
diff --git a/modules/ntp/templates/ntpdate.default.erb b/modules/ntp/templates/ntpdate.default.erb
new file mode 100644
index 0000000..1e13264
--- /dev/null
+++ b/modules/ntp/templates/ntpdate.default.erb
@@ -0,0 +1,14 @@
+
+# The settings in this file are used by the program ntpdate-debian, but not
+# by the upstream program ntpdate.
+
+# Set to "yes" to take the server list from /etc/ntp.conf, from package ntp,
+# so you only have to keep it in one place.
+NTPDATE_USE_NTP_CONF=yes
+
+# List of NTP servers to use (Separate multiple servers with spaces.)
+# Not used if NTPDATE_USE_NTP_CONF is yes.
+NTPSERVERS="<%= scope.lookupvar('::config::ntp_server') %>"
+
+# Additional options to pass to ntpdate
+NTPOPTIONS=""
diff --git a/modules/packages/manifests/ntpdate.pp b/modules/packages/manifests/ntpdate.pp
new file mode 100644
index 0000000..1063167
--- /dev/null
+++ b/modules/packages/manifests/ntpdate.pp
@@ -0,0 +1,16 @@
+class packages::ntpdate {
+ case $::operatingsystem {
+ Ubuntu: {
+ package {
+ "ntpdate":
+ ensure => latest;
+ }
+ }
+ Darwin, CentOS: {
+ # Ignore known OSes
+ }
+ default: {
+ fail("cannot install on $::operatingsystem")
+ }
+ }
+}
diff --git a/modules/packages/manifests/xvfb.pp b/modules/packages/manifests/xvfb.pp
index 0abb317..933b973 100644
--- a/modules/packages/manifests/xvfb.pp
+++ b/modules/packages/manifests/xvfb.pp
@@ -9,14 +9,16 @@ class packages::xvfb {
}
}
Ubuntu: {
package {
["xauth", "xvfb"]:
ensure => latest;
}
}
-
+ Darwin: {
+ # N/A
+ }
default: {
fail("cannot install on $::operatingsystem")
}
}
}
diff --git a/modules/toplevel/manifests/slave.pp b/modules/toplevel/manifests/slave.pp
index c2776f8..6ae879f 100644
--- a/modules/toplevel/manifests/slave.pp
+++ b/modules/toplevel/manifests/slave.pp
@@ -10,12 +10,12 @@ class toplevel::slave inherits toplevel::base {
# packages common to all slaves
include packages::mozilla::tooltool
include packages::mozilla::py27_mercurial
include packages::wget
# apply tweaks
include tweaks::dev-ptmx
include tweaks::rc_local
- include disableservices::slave
include tweaks::locale
+ include disableservices::slave
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment