diff --git a/modules/rhizo_base/files/usr/lib/libfreeswitch.so.1.0.0.buster b/modules/rhizo_base/files/usr/lib/libfreeswitch_dyn-98-1.10.3-buster.so similarity index 100% rename from modules/rhizo_base/files/usr/lib/libfreeswitch.so.1.0.0.buster rename to modules/rhizo_base/files/usr/lib/libfreeswitch_dyn-98-1.10.3-buster.so diff --git a/modules/rhizo_base/files/usr/lib/libfreeswitch.so.1.0.0.stretch b/modules/rhizo_base/files/usr/lib/libfreeswitch_dyn-98-1.10.3-stretch.so similarity index 100% rename from modules/rhizo_base/files/usr/lib/libfreeswitch.so.1.0.0.stretch rename to modules/rhizo_base/files/usr/lib/libfreeswitch_dyn-98-1.10.3-stretch.so diff --git a/modules/rhizo_base/files/usr/lib/libfreeswitch_dyn-98-1.6.20-stretch.so b/modules/rhizo_base/files/usr/lib/libfreeswitch_dyn-98-1.6.20-stretch.so new file mode 100644 index 0000000..ed4d83d Binary files /dev/null and b/modules/rhizo_base/files/usr/lib/libfreeswitch_dyn-98-1.6.20-stretch.so differ diff --git a/modules/rhizo_base/files/usr/lib/libfreeswitch_dyn-98-1.8.6-buster.so b/modules/rhizo_base/files/usr/lib/libfreeswitch_dyn-98-1.8.6-buster.so new file mode 100644 index 0000000..01d5f74 Binary files /dev/null and b/modules/rhizo_base/files/usr/lib/libfreeswitch_dyn-98-1.8.6-buster.so differ diff --git a/modules/rhizo_base/manifests/freeswitch.pp b/modules/rhizo_base/manifests/freeswitch.pp index 5aa71aa..edab156 100644 --- a/modules/rhizo_base/manifests/freeswitch.pp +++ b/modules/rhizo_base/manifests/freeswitch.pp @@ -118,7 +118,17 @@ class rhizo_base::freeswitch::common { $reg_provider = $rhizo_base::reg_provider $mncc_ip_address = $rhizo_base::mncc_ip_address - $fs_ensure = hiera('rhizo::fs_ensure', 'present') + $fs_ensure = hiera('rhizo::fs_version', 'present') + $fs_deb_version = "${lsbdistcodename}_${fs_ensure}" ? { + 'buster_1.8.6' => '1.8.6', + 'stretch_1.6.20:' => '1.6.20', + default => '1.10.3~release~15~129de34d84~$lsbdistcodename-1~$lsbdistcodename+1' + } + $fs_lib_version = "${lsbdistcodename}_${fs_ensure}" ? { + 'buster_1.8.6' => '1.8.6', + 'stretch_1.6.20:' => '1.6.20', + default => '1.10.3' + } package { [ @@ -158,13 +168,13 @@ class rhizo_base::freeswitch::common { package { ['freeswitch', 'freeswitch-lang-en']: - ensure => $fs_version, + ensure => $fs_ensure, require => Class['rhizo_base::apt'], } unless ($rhizo_base::osmo_stack == "split") { file { '/usr/lib/libfreeswitch.so.1.0.0': - source => "puppet:///modules/rhizo_base/usr/lib/libfreeswitch.so.1.0.0.${lsbdistcodename}", + source => "puppet:///modules/rhizo_base/usr/lib/libfreeswitch_dyn-98-${fs_lib_version}-${lsbdistcodename}.so", require => Package['freeswitch'], } } @@ -235,6 +245,11 @@ class rhizo_base::freeswitch::common { require => Package['freeswitch'], } + file { '/home/rhizomatica/bin/fs_ensure': + content => template('rhizo_base/fs_ensure.erb'), + mode => '0755' + } + # SSH Deploy key and config for gitlab file { '/root/.ssh/bsc_dev': ensure => present, diff --git a/modules/rhizo_base/templates/fs_ensure.erb b/modules/rhizo_base/templates/fs_ensure.erb new file mode 100644 index 0000000..61e81d9 --- /dev/null +++ b/modules/rhizo_base/templates/fs_ensure.erb @@ -0,0 +1,5 @@ +#!/bin/bash + +dpkg -l | egrep freeswitch-mod\|libfreeswitch | cut -f3 -d\ |\ +sed 's/\(.*\)/\1=<%= @fs_deb_version %>/' | sort -r |\ +sudo xargs -p apt install --assume-yes --allow-downgrades