Dzahn has uploaded a new change for review. https://gerrit.wikimedia.org/r/325039
Change subject: (WIP) services: create global service restart script ...................................................................... (WIP) services: create global service restart script Change-Id: I44762ee2f1fac0aa4047f103c276d0b942e3fb4d --- M modules/role/manifests/sca.pp M modules/role/manifests/scb.pp A modules/service/manifests/tools.pp A modules/service/templates/restart_services.sh.erb 4 files changed, 70 insertions(+), 0 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/operations/puppet refs/changes/39/325039/1 diff --git a/modules/role/manifests/sca.pp b/modules/role/manifests/sca.pp index 17ef84a..7d30a63 100644 --- a/modules/role/manifests/sca.pp +++ b/modules/role/manifests/sca.pp @@ -3,6 +3,7 @@ class role::sca { include role::zotero + include services::tools include standard include base::firewall if $::realm == 'production' { diff --git a/modules/role/manifests/scb.pp b/modules/role/manifests/scb.pp index 0046681..2c6a272 100644 --- a/modules/role/manifests/scb.pp +++ b/modules/role/manifests/scb.pp @@ -13,6 +13,7 @@ include role::eventstreams include role::pdfrender + include services::tools include standard include base::firewall diff --git a/modules/service/manifests/tools.pp b/modules/service/manifests/tools.pp new file mode 100644 index 0000000..8ec5d9b --- /dev/null +++ b/modules/service/manifests/tools.pp @@ -0,0 +1,26 @@ +# == Class: service::tools +# scripts and tools that are useful for all services, +# such as global restart and helper scripts +# +# === Parameters +# +# [*cluster*] +# Which set of services to use. (currently 'sca' or 'scb') +# Default: none. required. +class service::tools( + $cluster, +){ + + # TODO, hiera lookup based on $cluster + $service_names = hiera('role::common::${cluster}::service_names', ''), + + # script to restart all services in a service group + file { '/usr/local/sbin/restart-services': + ensure => 'present', + owner => 'root', + group => 'root', + mode => '0550', + content => template('service/restart-services.erb'), + } + +} diff --git a/modules/service/templates/restart_services.sh.erb b/modules/service/templates/restart_services.sh.erb new file mode 100755 index 0000000..7cb367c --- /dev/null +++ b/modules/service/templates/restart_services.sh.erb @@ -0,0 +1,42 @@ +#!/bin/bash +# restart all services in a service group +# depool, restart, repool + +# sca +#declare -a services=( +# "zotero" +#) + +# scb +#declare -a services=( +# "graphoid" +# "mathoid" +# "cxserver" +# "mobileapps" +# "eventstreams" +# "changeprop" +# "citoid" +#) + +# TODO: replace the above with a hiera lookup +#declare -a service=( +<%= @service_names %> +# ) # TODO + +# TODO: make the sleep values a parameter +depool + +sleep 60 + +for service in "${services[@]}" +do + echo "restarting $service" + systemctl restart $service.service + sleep 10 + systemctl status $service.service + sleep 10 +done + +sleep 60 + +pool -- To view, visit https://gerrit.wikimedia.org/r/325039 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I44762ee2f1fac0aa4047f103c276d0b942e3fb4d Gerrit-PatchSet: 1 Gerrit-Project: operations/puppet Gerrit-Branch: production Gerrit-Owner: Dzahn <dz...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits