Reverts change to default state_path

Reverting the change to the default value of state_path introduced by
I94502bcfac8b372271acd0dbc1710c0e3009b8e1 for the reasons set out
in my -1 review of the same that seems to have been skipped when the
change was accepted.

As implemented the change will break any existing systems that are using
the default value of state_path with no warning period, which goes beyond
the scope of change for UpgradeImpact

A better approach would be to introduce a new config value that is used in
the code, but is over-ridden by "state_path" if it is still in the config file,
and log a warning that state_path is deprecated and will be removed in the future.

That way the change to default behavior can be introduced at the start of the
next release cycle by removing the deprecated state_path config value, and
users have until then to prepare.

It does mean that we keep the insane default for a bit longer, but I think that's
much better that breaking a running system.

Closes-bug: #1291515

Change-Id: I7bb70c551ec9616276552d2e32076b66a1d3ce01
This commit is contained in:
Phil Day
2014-02-28 22:49:15 +00:00
parent 8efa27f3ef
commit 09dd7bf800
3 changed files with 2 additions and 6 deletions
+1 -1
View File
@@ -299,7 +299,7 @@
# Top-level directory for maintaining nova's state (string
# value)
#state_path=/var/lib/nova
#state_path=$pybasedir
#
+1 -1
View File
@@ -29,7 +29,7 @@ path_opts = [
default=os.path.join(sys.prefix, 'local', 'bin'),
help='Directory where nova binaries are installed'),
cfg.StrOpt('state_path',
default='/var/lib/nova',
default='$pybasedir',
help="Top-level directory for maintaining nova's state"),
]
-4
View File
@@ -14,8 +14,6 @@
# License for the specific language governing permissions and limitations
# under the License.
import os
from oslo.config import cfg
@@ -43,8 +41,6 @@ class ConfFixture(config_fixture.Config):
"""Fixture to manage global conf settings."""
def setUp(self):
super(ConfFixture, self).setUp()
self.conf.set_default('state_path', os.path.abspath(
os.path.join(os.path.dirname(__file__), '..', '..')))
self.conf.set_default('api_paste_config',
paths.state_path_def('etc/nova/api-paste.ini'))
self.conf.set_default('host', 'fake-mini')