When you execute nova-manage commands, oslo logs to the following
location (file name is dynamically created based on command name).
    /var/log/nova/nova-manage.log
Because puppet-nova is executing these commands as root,
nova-manage.log is owned by root, preventing the 'nova-manage
db archive_deleted_rows' entry in nova's crontab from executing.
    Permission denied: '/var/log/nova/nova-manage.log'
This log file is also an outlier, as all other log files in
/var/log/nova/ are owned by nova:nova.
Similar issues are possible for other nova logs, if for example
a nova services is initially started manually as root, so the
ownership of all nova logs is corrected before configuring nova.
Co-Authored-By: Oliver Walsh <owalsh@redhat.com>
Co-Authored-By: Diana Clarke <diana.joan.clarke@gmail.com>
Co-Authored-By: Maciej Kucia <maciej@kucia.net>
Closes-Bug: #1671681
Change-Id: I0ca0110cbf9139c79074cf603dcab9135f96e765
		
	
		
			
				
	
	
		
			52 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
require 'spec_helper'
 | 
						|
 | 
						|
describe 'nova::cell_v2::discover_hosts' do
 | 
						|
 | 
						|
  shared_examples_for 'nova::cell_v2::discover_hosts' do
 | 
						|
    context 'with defaults' do
 | 
						|
 | 
						|
      it {
 | 
						|
        is_expected.to contain_exec('nova-cell_v2-discover_hosts').with(
 | 
						|
          :path        => ['/bin', '/usr/bin'],
 | 
						|
          :command     => 'nova-manage  cell_v2 discover_hosts',
 | 
						|
          :user        => 'nova',
 | 
						|
          :refreshonly => true,
 | 
						|
          :subscribe   => 'Anchor[nova::service::end]'
 | 
						|
        )
 | 
						|
      }
 | 
						|
    end
 | 
						|
 | 
						|
    context "overriding extra_params" do
 | 
						|
      let :params do
 | 
						|
        {
 | 
						|
          :extra_params        => '--config-file /etc/nova/nova.conf'
 | 
						|
        }
 | 
						|
      end
 | 
						|
 | 
						|
      it {
 | 
						|
        is_expected.to contain_exec('nova-cell_v2-discover_hosts').with(
 | 
						|
          :path        => ['/bin', '/usr/bin'],
 | 
						|
          :command     => 'nova-manage --config-file /etc/nova/nova.conf cell_v2 discover_hosts',
 | 
						|
          :user        => 'nova',
 | 
						|
          :refreshonly => true,
 | 
						|
          :subscribe   => 'Anchor[nova::service::end]'
 | 
						|
        )
 | 
						|
      }
 | 
						|
    end
 | 
						|
  end
 | 
						|
 | 
						|
 | 
						|
  on_supported_os({
 | 
						|
    :supported_os   => OSDefaults.get_supported_os
 | 
						|
  }).each do |os,facts|
 | 
						|
    context "on #{os}" do
 | 
						|
      let (:facts) do
 | 
						|
        facts.merge(OSDefaults.get_facts())
 | 
						|
      end
 | 
						|
 | 
						|
      it_configures 'nova::cell_v2::discover_hosts'
 | 
						|
    end
 | 
						|
  end
 | 
						|
 | 
						|
end
 |