Added manifest to enable/disable SCTP Autoload

SCTP module autoload is enabled/disabled by using
service-parameter sctp_autoload.

Full Parameter name:
"platform::params::sctp_autoload"

This change implements a runtime manifest which makes sctp module
changes.

By default: sctp_autoload is "enabled"

If sctp_autoload=disabled:
- SCTP Module doesn't get loaded by default post host
lock/unlock

If sctp_autoload=enabled:
- SCTP Moduel gets loaded by default post host
lock/unlock.

Test Plan:
PASSED: build-pkgs
PASSED: Deployed AIO-Standard
PASSED: Verify service parameter configuration using
        enabled/disabled values
PASSED: SCTP module loads/unloads after host-reboot

Story: 2011335
Task: 51623

Change-Id: Ib27367807f1096a6253d96f113d9107a3ff2f596
Signed-off-by: Aman Pandae <AmanPandae.Mothukuri@windriver.com>
This commit is contained in:
Aman Pandae 2025-01-14 23:52:50 -05:00 committed by Aman Pandae
parent 2a97501d08
commit 56cfba370d
2 changed files with 34 additions and 0 deletions

View File

@ -641,6 +641,7 @@ class platform::config::pre {
}
include ::platform::config::apparmor
include ::platform::config::sctp
include ::platform::config::timezone
include ::platform::config::hostname
include ::platform::config::hosts
@ -809,3 +810,35 @@ class platform::config::pam_systemd {
match_for_absence => true,
}
}
class platform::config::sctp::runtime {
include ::platform::config::sctp
}
class platform::config::sctp {
include ::platform::params
$exec_path = ['/sbin', '/usr/sbin', '/bin', '/usr/bin']
$sctp_autoload = $::platform::params::sctp_autoload
if $sctp_autoload == 'enabled' {
file { '/etc/modules-load.d/sctp.conf':
ensure => present,
content => "sctp\n",
mode => '0644',
owner => 'root',
group => 'root',
}
} else {
file { '/etc/modules-load.d/sctp.conf':
ensure => absent,
}
exec { 'update-initramfs':
command => '/usr/sbin/update-initramfs -u',
refreshonly => true,
subscribe => File['/etc/modules-load.d/sctp.conf'],
path => $exec_path,
}
}
}

View File

@ -31,6 +31,7 @@ class platform::params (
$system_controller_mgmt_addr = undef,
$virtual_system = false,
$apparmor = 'disabled',
$sctp_autoload = 'enabled',
) {
$ipv4 = 4
$ipv6 = 6