Horizon django cache compress on ubuntu

Change splits the exec for the manage.py to be split into collectstatic
and compress. Previously, both actions were only executed on redhat but
ubuntu requires compress on config change too.

Change-Id: Ib7238f9bc107c372759d1ebbeb88469806267769
Closes-Bug: #1599536
(cherry picked from commit 62b4476db4)
This commit is contained in:
Matthew J. Black 2016-07-06 14:04:17 -04:00 committed by Matthew J Black
parent 04526af556
commit 77cfadf139
3 changed files with 25 additions and 4 deletions

View File

@ -405,13 +405,22 @@ class horizon(
}
exec { 'refresh_horizon_django_cache':
command => "${::horizon::params::manage_py} collectstatic --noinput --clear && ${::horizon::params::manage_py} compress --force",
command => "${::horizon::params::manage_py} collectstatic --noinput --clear",
refreshonly => true,
require => Package['horizon'],
}
if $::os_package_type == 'rpm' and $compress_offline {
Concat[$::horizon::params::config_file] ~> Exec['refresh_horizon_django_cache']
exec { 'refresh_horizon_django_compress':
command => "${::horizon::params::manage_py} compress --force",
refreshonly => true,
require => Package['horizon'],
}
if $compress_offline {
Concat[$::horizon::params::config_file] ~> Exec['refresh_horizon_django_compress']
if $::os_package_type == 'rpm' {
Concat[$::horizon::params::config_file] ~> Exec['refresh_horizon_django_cache'] -> Exec['refresh_horizon_django_compress']
}
}
if $configure_apache {

View File

@ -0,0 +1,4 @@
---
fixes:
- Horizon Offline Generation Error on ubuntu systems. Previously, the 'manage.py compress' only ran on redhat. This change
allows the command to be executed on ubuntu also.

View File

@ -31,14 +31,20 @@ describe 'horizon' do
)
}
it { is_expected.to contain_exec('refresh_horizon_django_cache').with({
:command => '/usr/share/openstack-dashboard/manage.py collectstatic --noinput --clear && /usr/share/openstack-dashboard/manage.py compress --force',
:command => '/usr/share/openstack-dashboard/manage.py collectstatic --noinput --clear',
:refreshonly => true,
})}
it { is_expected.to contain_exec('refresh_horizon_django_compress').with({
:command => '/usr/share/openstack-dashboard/manage.py compress --force',
:refreshonly => true,
})}
it {
if facts[:os_package_type] == 'rpm'
is_expected.to contain_concat(platforms_params[:config_file]).that_notifies('Exec[refresh_horizon_django_cache]')
is_expected.to contain_concat(platforms_params[:config_file]).that_notifies('Exec[refresh_horizon_django_compress]')
else
is_expected.to_not contain_concat(platforms_params[:config_file]).that_notifies('Exec[refresh_horizon_django_cache]')
is_expected.to contain_concat(platforms_params[:config_file]).that_notifies('Exec[refresh_horizon_django_compress]')
end
}
@ -167,6 +173,7 @@ describe 'horizon' do
end
it { is_expected.not_to contain_file(platforms_params[:config_file]).that_notifies('Exec[refresh_horizon_django_cache]') }
it { is_expected.not_to contain_file(platforms_params[:config_file]).that_notifies('Exec[refresh_horizon_django_compress]') }
it { is_expected.to contain_file(params[:file_upload_temp_dir]) }
end
@ -185,6 +192,7 @@ describe 'horizon' do
end
it { is_expected.to contain_exec('refresh_horizon_django_cache') }
it { is_expected.to contain_exec('refresh_horizon_django_compress') }
end
context 'installs python memcache library when cache_backend is set to memcache' do