Matanya has uploaded a new change for review.
https://gerrit.wikimedia.org/r/107343
Change subject: deployment: lint clean
......................................................................
deployment: lint clean
Change-Id: I8019ef99cd804b28bb89434d2985eea9302edf2e
---
M modules/deployment/manifests/deployment_server.pp
M modules/deployment/manifests/packages.pp
M modules/deployment/manifests/salt_master.pp
M modules/deployment/manifests/target.pp
4 files changed, 326 insertions(+), 263 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/operations/puppet
refs/changes/43/107343/1
diff --git a/modules/deployment/manifests/deployment_server.pp
b/modules/deployment/manifests/deployment_server.pp
index cb7652a..69ecb12 100644
--- a/modules/deployment/manifests/deployment_server.pp
+++ b/modules/deployment/manifests/deployment_server.pp
@@ -1,130 +1,158 @@
class deployment::deployment_server(
- $deployment_conffile='/etc/git-deploy/git-deploy.conf',
- $deployment_ignorefile='/etc/git-deploy/gitignore',
- $deployment_ignores=['.deploy'],
- $deployment_restrict_umask='002',
- $deployment_block_file='/etc/ROLLOUTS_BLOCKED',
- $deployment_support_email='',
- $deployment_repo_name_detection='dot-git-parent-dir',
- $deployment_announce_email='',
- $deployment_send_mail_on_sync='false',
- $deployment_send_mail_on_revert='false',
- $deployment_log_directory='/var/log/git-deploy',
- $deployment_log_timing_data='false',
- $deployment_git_deploy_dir='/var/lib/git-deploy',
- $deployment_per_repo_config={},
- $deployer_groups=[]
- ) {
- if ! defined(Package['git-deploy']){
- package { 'git-deploy':
- ensure => present;
+ $deployment_conffile='/etc/git-deploy/git-deploy.conf',
+ $deployment_ignorefile='/etc/git-deploy/gitignore',
+ $deployment_ignores=['.deploy'],
+ $deployment_restrict_umask='002',
+ $deployment_block_file='/etc/ROLLOUTS_BLOCKED',
+ $deployment_support_email='',
+ $deployment_repo_name_detection='dot-git-parent-dir',
+ $deployment_announce_email='',
+ $deployment_send_mail_on_sync=false,
+ $deployment_send_mail_on_revert=false,
+ $deployment_log_directory='/var/log/git-deploy',
+ $deployment_log_timing_data=false,
+ $deployment_git_deploy_dir='/var/lib/git-deploy',
+ $deployment_per_repo_config={},
+ $deployer_groups=[]
+ ) {
+ if ! defined(Package['git-deploy']){
+ package { 'git-deploy':
+ ensure => present;
+ }
}
- }
- if ! defined(Package['git-core']){
- package { 'git-core':
- ensure => present;
+ if ! defined(Package['git-core']){
+ package { 'git-core':
+ ensure => present;
+ }
}
- }
- if ! defined(Package['python-redis']){
- package { 'python-redis':
- ensure => present;
+ if ! defined(Package['python-redis']){
+ package { 'python-redis':
+ ensure => present;
+ }
}
- }
- $deployment_global_hook_dir = "${deployment_git_deploy_dir}/hooks"
- $deployment_dependencies_dir = "${deployment_git_deploy_dir}/dependencies"
- file {
- "${$deployment_global_hook_dir}":
- ensure => directory,
- mode => 0555,
- owner => root,
- group => root;
- "${$deployment_dependencies_dir}":
- ensure => directory,
- mode => 0555,
- owner => root,
- group => root;
- "${$deployment_global_hook_dir}/sync":
- ensure => directory,
- mode => 0555,
- owner => root,
- group => root,
- require => [File["${$deployment_global_hook_dir}"]];
- "${$deployment_global_hook_dir}/sync/deploylib.py":
- source => 'puppet:///deployment/git-deploy/hooks/deploylib.py',
- mode => 0555,
- owner => root,
- group => root,
- require => [File["${$deployment_global_hook_dir}/sync"]];
- "${$deployment_global_hook_dir}/sync/shared.py":
- source => 'puppet:///deployment/git-deploy/hooks/shared.py',
- mode => 0555,
- owner => root,
- group => root,
- require => [File["${$deployment_global_hook_dir}/sync"]];
- "${$deployment_global_hook_dir}/sync/depends.py":
- source => 'puppet:///deployment/git-deploy/hooks/depends.py',
- mode => 0555,
- owner => root,
- group => root,
- require => [File["${$deployment_global_hook_dir}/sync"]];
- "${$deployment_dependencies_dir}/l10n":
- source =>
'puppet:///deployment/git-deploy/dependencies/l10nupdate-quick',
- mode => 0555,
- owner => root,
- group => root,
- require => [File["${$deployment_dependencies_dir}"]];
- }
- file {
- '/etc/gitconfig':
- content => template('deployment/git-deploy/gitconfig.erb'),
- mode => 0444,
- owner => root,
- group => root,
- require => [Package['git-core']];
- "${deployment_conffile}":
- content => template('deployment/git-deploy/git-deploy.conf.erb'),
- mode => 0444,
- owner => root,
- group => root;
- "${deployment_ignorefile}":
- content => template('deployment/git-deploy/gitignore.erb'),
- mode => 0444,
- owner => root,
- group => root;
- '/usr/local/bin/deploy-info':
- owner => root,
- group => root,
- mode => 0555,
- source => 'puppet:///deployment/git-deploy/utils/deploy-info',
- require => [Package['python-redis']];
- '/usr/local/bin/service-restart':
- owner => root,
- group => root,
- mode => 0555,
- source => 'puppet:///deployment/git-deploy/utils/service-restart';
- '/usr/local/bin/submodule-update-server-info':
- owner => root,
- group => root,
- mode => 0555,
- source =>
'puppet:///deployment/git-deploy/utils/submodule-update-server-info',
- }
- salt::grain { 'deployment_server':
- grain => 'deployment_server',
- value => true,
- replace => true;
- }
- salt::grain { 'deployment_global_hook_dir':
- grain => 'deployment_global_hook_dir',
- value => $deployment_global_hook_dir,
- replace => true;
- }
- salt::grain { 'deployment_repo_user':
- grain => 'deployment_repo_user',
- value => 'sartoris',
- replace => true;
- }
- generic::systemuser {
- 'sartoris': name => 'sartoris', shell => '/bin/false', home =>
'/nonexistent', groups => $deployer_groups
- }
+ $deployment_global_hook_dir = "${deployment_git_deploy_dir}/hooks"
+ $deployment_dependencies_dir = "${deployment_git_deploy_dir}/dependencies"
+ file { $deployment_global_hook_dir:
+ ensure => directory,
+ mode => '0555',
+ owner => 'root',
+ group => 'root',
+ }
+
+ file { $deployment_dependencies_dir:
+ ensure => directory,
+ mode => '0555',
+ owner => 'root',
+ group => 'root',
+ }
+
+ file { "${$deployment_global_hook_dir}/sync":
+ ensure => directory,
+ mode => '0555',
+ owner => 'root',
+ group => 'root',
+ require => [File[$deployment_global_hook_dir]],
+ }
+
+ file { "${$deployment_global_hook_dir}/sync/deploylib.py":
+ source => 'puppet:///deployment/git-deploy/hooks/deploylib.py',
+ mode => '0555',
+ owner => 'root',
+ group => 'root',
+ require => [File["${$deployment_global_hook_dir}/sync"]],
+ }
+
+ file { "${$deployment_global_hook_dir}/sync/shared.py":
+ source => 'puppet:///deployment/git-deploy/hooks/shared.py',
+ mode => '0555',
+ owner => 'root',
+ group => 'root',
+ require => [File["${$deployment_global_hook_dir}/sync"]],
+ }
+
+ file { "${$deployment_global_hook_dir}/sync/depends.py":
+ source => 'puppet:///deployment/git-deploy/hooks/depends.py',
+ mode => '0555',
+ owner => 'root',
+ group => 'root',
+ require => [File["${$deployment_global_hook_dir}/sync"]],
+ }
+
+ file { "${$deployment_dependencies_dir}/l10n":
+ source =>
'puppet:///deployment/git-deploy/dependencies/l10nupdate-quick',
+ mode => '0555',
+ owner => 'root',
+ group => 'root',
+ require => [File[$deployment_dependencies_dir]],
+ }
+
+ file { '/etc/gitconfig':
+ content => template('deployment/git-deploy/gitconfig.erb'),
+ mode => '0444',
+ owner => 'root',
+ group => 'root',
+ require => [Package['git-core']],
+ }
+
+ file { $deployment_conffile:
+ content => template('deployment/git-deploy/git-deploy.conf.erb'),
+ mode => '0444',
+ owner => 'root',
+ group => 'root',
+ }
+
+ file { $deployment_ignorefile:
+ content => template('deployment/git-deploy/gitignore.erb'),
+ mode => '0444',
+ owner => 'root',
+ group => 'root',
+ }
+
+ file { '/usr/local/bin/deploy-info':
+ owner => 'root',
+ group => 'root',
+ mode => '0555',
+ source => 'puppet:///deployment/git-deploy/utils/deploy-info',
+ require => [Package['python-redis']],
+ }
+
+ file { '/usr/local/bin/service-restart':
+ owner => 'root',
+ group => 'root',
+ mode => '0555',
+ source => 'puppet:///deployment/git-deploy/utils/service-restart',
+ }
+
+ file { '/usr/local/bin/submodule-update-server-info':
+ owner => 'root',
+ group => 'root',
+ mode => '0555',
+ source =>
'puppet:///deployment/git-deploy/utils/submodule-update-server-info',
+ }
+
+ salt::grain { 'deployment_server':
+ grain => 'deployment_server',
+ value => true,
+ replace => true,
+ }
+
+ salt::grain { 'deployment_global_hook_dir':
+ grain => 'deployment_global_hook_dir',
+ value => $deployment_global_hook_dir,
+ replace => true,
+ }
+
+ salt::grain { 'deployment_repo_user':
+ grain => 'deployment_repo_user',
+ value => 'sartoris',
+ replace => true,
+ }
+
+ generic::systemuser { 'sartoris':
+ name => 'sartoris',
+ shell => '/bin/false',
+ home => '/nonexistent',
+ groups => $deployer_groups,
+ }
}
diff --git a/modules/deployment/manifests/packages.pp
b/modules/deployment/manifests/packages.pp
index ba1a38d..870793a 100644
--- a/modules/deployment/manifests/packages.pp
+++ b/modules/deployment/manifests/packages.pp
@@ -1,12 +1,12 @@
class deployment::packages {
- if ! defined(Package["git-core"]){
- package { "git-core":
- ensure => present;
+ if ! defined(Package['git-core']){
+ package { 'git-core':
+ ensure => present,
}
}
- if ! defined(Package["python-redis"]){
- package { "python-redis":
- ensure => present;
+ if ! defined(Package['python-redis']){
+ package { 'python-redis':
+ ensure => present,
}
}
}
diff --git a/modules/deployment/manifests/salt_master.pp
b/modules/deployment/manifests/salt_master.pp
index 94f59ce..0ab53c5 100644
--- a/modules/deployment/manifests/salt_master.pp
+++ b/modules/deployment/manifests/salt_master.pp
@@ -1,120 +1,155 @@
class deployment::salt_master(
- $state_dir="/srv/salt",
- $runner_dir="/srv/runners",
- $pillar_dir="/srv/pillars",
- $module_dir="/srv/salt/_modules",
- $returner_dir="/srv/salt/_returners",
- $repo_config,
- $deployment_config
- ) {
- file {
- "/etc/salt/deploy_runner.conf":
- content => template("deployment/deploy_runner.conf.erb"),
- mode => 0444,
- owner => root,
- group => root,
- require => [Package["salt-master"]];
- "${state_dir}/deploy":
- ensure => directory,
- mode => 0555,
- owner => root,
- group => root,
- require => [File["${state_dir}"]];
- "${state_dir}/top.sls":
- source => "puppet:///deployment/states/top.sls",
- mode => 0444,
- owner => root,
- group => root,
- require => [File["${state_dir}/deploy"]];
- "${state_dir}/deploy/sync_all.sls":
- source => "puppet:///deployment/states/deploy/sync_all.sls",
- mode => 0444,
- owner => root,
- group => root,
- require => [File["${state_dir}/deploy"]];
- "${runner_dir}/deploy.py":
- source => "puppet:///deployment/runners/deploy.py",
- mode => 0555,
- owner => root,
- group => root,
- require => File["${runner_dir}"];
- "${pillar_dir}/deployment":
- ensure => directory,
- mode => 0555,
- owner => root,
- group => root,
- require => [File["${pillar_dir}"]];
- "${pillar_dir}/deployment/repo_config.sls":
- content => ordered_json({'repo_config' => $repo_config }),
- mode => 0444,
- owner => root,
- group => root,
- require => [File["${pillar_dir}/deployment"]];
- "${pillar_dir}/deployment/deployment_config.sls":
- content => ordered_json({'deployment_config' => $deployment_config}),
- mode => 0444,
- owner => root,
- group => root,
- require => [File["${pillar_dir}/deployment"]];
- "${pillar_dir}/top.sls":
- content => template("deployment/pillars/top.sls.erb"),
- mode => 0444,
- owner => root,
- group => root,
- require => [File["${pillar_dir}"]];
- "${module_dir}/deploy.py":
- source => "puppet:///deployment/modules/deploy.py",
- mode => 0555,
- owner => root,
- group => root,
- require => [File["${module_dir}"]];
- "${returner_dir}/deploy_redis.py":
- source => "puppet:///deployment/returners/deploy_redis.py",
- mode => 0555,
- owner => root,
- group => root,
- require => [File["${returner_dir}"]];
- "${module_dir}/parsoid.py":
- source => "puppet:///deployment/modules/parsoid.py",
- mode => 0555,
- owner => root,
- group => root,
- require => [File["${module_dir}"]];
- "${module_dir}/mwprof.py":
- source => "puppet:///deployment/modules/mwprof.py",
- mode => 0555,
- owner => root,
- group => root,
- require => [File["${module_dir}"]];
- "${module_dir}/mediawiki.py":
- source => "puppet:///deployment/modules/mediawiki.py",
- mode => 0555,
- owner => root,
- group => root,
- require => [File["${module_dir}"]];
- }
+ $state_dir='/srv/salt',
+ $runner_dir='/srv/runners',
+ $pillar_dir='/srv/pillars',
+ $module_dir='/srv/salt/_modules',
+ $returner_dir='/srv/salt/_returners',
+ $repo_config,
+ $deployment_config
+ ) {
+ file { '/etc/salt/deploy_runner.conf':
+ content => template('deployment/deploy_runner.conf.erb'),
+ mode => '0444',
+ owner => 'root',
+ group => 'root',
+ require => [Package['salt-master']],
+ }
+
+ file { "${state_dir}/deploy":
+ ensure => directory,
+ mode => '0555',
+ owner => 'root',
+ group => 'root',
+ require => [File[$state_dir]],
+ }
+
+ file { "${state_dir}/top.sls":
+ source => 'puppet:///deployment/states/top.sls',
+ mode => '0444',
+ owner => 'root',
+ group => 'root',
+ require => [File["${state_dir}/deploy"]],
+ }
+
+ file { "${state_dir}/deploy/sync_all.sls":
+ source => 'puppet:///deployment/states/deploy/sync_all.sls',
+ mode => '0444',
+ owner => 'root',
+ group => 'root',
+ require => [File["${state_dir}/deploy"]],
+ }
+
+ file { "${runner_dir}/deploy.py":
+ source => 'puppet:///deployment/runners/deploy.py',
+ mode => '0555',
+ owner => 'root',
+ group => 'root',
+ require => File[$runner_dir],
+ }
+
+ file { "${pillar_dir}/deployment":
+ ensure => directory,
+ mode => '0555',
+ owner => 'root',
+ group => 'root',
+ require => [File[$pillar_dir]],
+ }
+
+ file { "${pillar_dir}/deployment/repo_config.sls":
+ content => ordered_json({'repo_config' => $repo_config }),
+ mode => '0444',
+ owner => 'root',
+ group => 'root',
+ require => [File["${pillar_dir}/deployment"]],
+ }
+
+ file { "${pillar_dir}/deployment/deployment_config.sls":
+ content => ordered_json({'deployment_config' => $deployment_config}),
+ mode => '0444',
+ owner => 'root',
+ group => 'root',
+ require => [File["${pillar_dir}/deployment"]],
+ }
+
+ file { "${pillar_dir}/top.sls":
+ content => template('deployment/pillars/top.sls.erb'),
+ mode => '0444',
+ owner => 'root',
+ group => 'root',
+ require => [File[$pillar_dir]],
+ }
+
+ file { "${module_dir}/deploy.py":
+ source => 'puppet:///deployment/modules/deploy.py',
+ mode => '0555',
+ owner => 'root',
+ group => 'root',
+ require => [File[$module_dir]],
+ }
+
+ file { "${returner_dir}/deploy_redis.py":
+ source => 'puppet:///deployment/returners/deploy_redis.py',
+ mode => '0555',
+ owner => 'root',
+ group => 'root',
+ require => [File[$returner_dir]],
+ }
+
+ file { "${module_dir}/parsoid.py":
+ source => 'puppet:///deployment/modules/parsoid.py',
+ mode => '0555',
+ owner => 'root',
+ group => 'root',
+ require => [File[$module_dir]],
+ }
+
+ file { "${module_dir}/mwprof.py":
+ source => 'puppet:///deployment/modules/mwprof.py',
+ mode => '0555',
+ owner => 'root',
+ group => 'root',
+ require => [File[$module_dir]],
+ }
+
+ file { "${module_dir}/mediawiki.py":
+ source => 'puppet:///deployment/modules/mediawiki.py',
+ mode => '0555',
+ owner => 'root',
+ group => 'root',
+ require => [File[$module_dir]],
+ }
# If pillars or modules change, we need to sync them with the minions
- exec {
- "refresh_deployment_pillars":
- command => "/usr/bin/salt -C 'G@deployment_server:true or
G@deployment_target:*' saltutil.refresh_pillar",
- subscribe => [File["${pillar_dir}/deployment/deployment_config.sls"],
File["${pillar_dir}/deployment/repo_config.sls"], File["${pillar_dir}"]],
- refreshonly => true,
- require => [Package["salt-master"]];
- "deployment_server_init":
- command => "/usr/bin/salt -G 'deployment_server:true'
deploy.deployment_server_init",
- subscribe => [Exec['refresh_deployment_pillars']],
- refreshonly => true,
- require => [File["${module_dir}/deploy.py"]];
- "refresh_deployment_modules":
- command => "/usr/bin/salt -G 'deployment_target:*'
saltutil.sync_modules",
- subscribe => [File["${module_dir}/deploy.py"],
File["${module_dir}/parsoid.py"], File["${module_dir}/mwprof.py"],
File["${module_dir}/mediawiki.py"]],
- refreshonly => true,
- require => [Package["salt-master"]];
- "refresh_deployment_returners":
- command => "/usr/bin/salt -G 'deployment_target:*'
saltutil.sync_returners",
- subscribe => [File["${returner_dir}/deploy_redis.py"]],
- refreshonly => true,
- require => [Package["salt-master"]];
+ exec { 'refresh_deployment_pillars':
+ command => "/usr/bin/salt -C 'G@deployment_server:true or
G@deployment_target:*' saltutil.refresh_pillar",
+ subscribe => [File["${pillar_dir}/deployment/deployment_config.sls"],
+ File["${pillar_dir}/deployment/repo_config.sls"],
+ File[$pillar_dir]],
+ refreshonly => true,
+ require => [Package['salt-master']],
+ }
+
+ exec { 'deployment_server_init':
+ command => "/usr/bin/salt -G 'deployment_server:true'
deploy.deployment_server_init",
+ subscribe => [Exec['refresh_deployment_pillars']],
+ refreshonly => true,
+ require => [File["${module_dir}/deploy.py"]],
+ }
+
+ exec { 'refresh_deployment_modules':
+ command => "/usr/bin/salt -G 'deployment_target:*'
saltutil.sync_modules",
+ subscribe => [File["${module_dir}/deploy.py"],
+ File["${module_dir}/parsoid.py"],
+ File["${module_dir}/mwprof.py"],
+ File["${module_dir}/mediawiki.py"]],
+ refreshonly => true,
+ require => [Package['salt-master']],
+ }
+
+ exec { 'refresh_deployment_returners':
+ command => "/usr/bin/salt -G 'deployment_target:*'
saltutil.sync_returners",
+ subscribe => [File["${returner_dir}/deploy_redis.py"]],
+ refreshonly => true,
+ require => [Package['salt-master']],
}
}
diff --git a/modules/deployment/manifests/target.pp
b/modules/deployment/manifests/target.pp
index a106541..a6cc12d 100644
--- a/modules/deployment/manifests/target.pp
+++ b/modules/deployment/manifests/target.pp
@@ -1,36 +1,36 @@
define deployment::target($ensure=present) {
salt::grain { "deployment_target_${name}":
ensure => $ensure,
- grain => "deployment_target",
+ grain => 'deployment_target',
value => $name,
notify => [
- Exec["deployment_target_sync_all"],
- Exec["deployment_target_refresh_pillars"],
- Exec["deployment_target_deploy_all"],
+ Exec['deployment_target_sync_all'],
+ Exec['deployment_target_refresh_pillars'],
+ Exec['deployment_target_deploy_all'],
];
}
- if ! defined(Exec["deployment_target_sync_all"]){
- exec { "deployment_target_sync_all":
+ if ! defined(Exec['deployment_target_sync_all']){
+ exec { 'deployment_target_sync_all':
refreshonly => true,
- path => ["/usr/bin"],
- command => "salt-call saltutil.sync_all";
+ path => ['/usr/bin'],
+ command => 'salt-call saltutil.sync_all';
}
}
- if ! defined(Exec["deployment_target_refresh_pillars"]){
- exec { "deployment_target_refresh_pillars":
+ if ! defined(Exec['deployment_target_refresh_pillars']){
+ exec { 'deployment_target_refresh_pillars':
refreshonly => true,
- path => ["/usr/bin"],
- command => "salt-call saltutil.refresh_pillar";
+ path => ['/usr/bin'],
+ command => 'salt-call saltutil.refresh_pillar';
}
}
- if ! defined(Exec["deployment_target_deploy_all"]){
- exec { "deployment_target_deploy_all":
+ if ! defined(Exec['deployment_target_deploy_all']){
+ exec { 'deployment_target_deploy_all':
refreshonly => true,
- path => ["/usr/bin"],
- command => "salt-call deploy.sync_all",
+ path => ['/usr/bin'],
+ command => 'salt-call deploy.sync_all',
require => [
- Exec["deployment_target_sync_all"],
- Exec["deployment_target_refresh_pillars"],
+ Exec['deployment_target_sync_all'],
+ Exec['deployment_target_refresh_pillars'],
];
}
}
--
To view, visit https://gerrit.wikimedia.org/r/107343
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I8019ef99cd804b28bb89434d2985eea9302edf2e
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Matanya <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits