f7f5231677
There are scenarios where it is useful to create a ConfigOpts and register_opts on it before ever calling the PlacementFixture. If that is done we don't want to re-register the opts within the fixture as this can lead to errors (especially when CLI opts are involved). The scenario that discovered this problem is in nova in a regression test [1] where a ConfigOpts is created and registered, the placement DatabaseFixture is started and then that same config is used in multiple instances of the PlacementFixture, each of which again register_opts(). Until commit b647919666a451092189f963786e367d0baa82be this wasn't a problem because the default opts in placement did not include any CLI options. Adding logging opts brought some in. This change adds a flag to the constructor for PlacementFixture, register_opts, defaulting to True, which lets the caller say no, I don't want do register. It also reverts the revert of b647919666a451092189f963786e367d0baa82be to perform oslo_log.log.register_opts() from a central location. [1] test_bug_1679750.TestLocalDeleteAllocations.test_local_delete_removes_allocations_after_compute_restart Change-Id: I360a306b5d05ada75274733038b73ec2f2bdc4d4 Needed-By: I042e41ac8c41c0e5f0389904eb548e0e97d54c60 Related-Bug: #1821092