From 6c5b691a85764cb44db6a9c5683afc430cf11b36 Mon Sep 17 00:00:00 2001 From: ZhongShengping Date: Mon, 23 Nov 2020 09:27:52 +0800 Subject: [PATCH] Allow db sync timeouts to be configurable As Openstack projects continue to have longer database migration chains, the Puppet default timeout of 300 seconds for an execution is becoming too short a duration on some hardware, leading to timeouts. As projects continue to add more migration scripts without pruning the base, timeouts will continue to become more frequent unless this time can be expanded. Change-Id: I4a3941c5a21560c6246d22e89d4566dcdc95bfd6 Closes-Bug: #1904962 --- manifests/db/sync.pp | 11 ++++++++++- .../notes/add_db_sync_timeout-aec05540e5154a9e.yaml | 3 +++ spec/classes/zaqar_db_sync_spec.rb | 1 + 3 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 releasenotes/notes/add_db_sync_timeout-aec05540e5154a9e.yaml diff --git a/manifests/db/sync.pp b/manifests/db/sync.pp index 32899fc..2d468de 100644 --- a/manifests/db/sync.pp +++ b/manifests/db/sync.pp @@ -1,7 +1,15 @@ # # Class to execute "zaqar-sql-db-manage upgrade head" # -class zaqar::db::sync { +# ==Parameters +# +# [*db_sync_timeout*] +# (Optional) Timeout for the execution of the db_sync +# Defaults to 300 +# +class zaqar::db::sync( + $db_sync_timeout = 300, +) { include zaqar::deps @@ -12,6 +20,7 @@ class zaqar::db::sync { refreshonly => true, try_sleep => 5, tries => 10, + timeout => $db_sync_timeout, logoutput => on_failure, subscribe => [ Anchor['zaqar::install::end'], diff --git a/releasenotes/notes/add_db_sync_timeout-aec05540e5154a9e.yaml b/releasenotes/notes/add_db_sync_timeout-aec05540e5154a9e.yaml new file mode 100644 index 0000000..233445f --- /dev/null +++ b/releasenotes/notes/add_db_sync_timeout-aec05540e5154a9e.yaml @@ -0,0 +1,3 @@ +--- +features: + - Adds db_sync_timeout parameter to db sync. diff --git a/spec/classes/zaqar_db_sync_spec.rb b/spec/classes/zaqar_db_sync_spec.rb index c27ff40..d4bb5a2 100644 --- a/spec/classes/zaqar_db_sync_spec.rb +++ b/spec/classes/zaqar_db_sync_spec.rb @@ -14,6 +14,7 @@ describe 'zaqar::db::sync' do :user => 'zaqar', :try_sleep => 5, :tries => 10, + :timeout => 300, :logoutput => 'on_failure', :subscribe => ['Anchor[zaqar::install::end]', 'Anchor[zaqar::config::end]',