From: Pawel Wieczorek
Date: Tue, 30 Jul 2019 14:43:19 +0000 (+0200)
Subject: k8s: Silence package manager and make it noninteractive
X-Git-Tag: 6.0.0-ONAP~412
X-Git-Url: https://gerrit.onap.org/r/gitweb?a=commitdiff_plain;h=625be0d2f81705b3ab863ee3d13948f4355e2a7b;p=integration.git
k8s: Silence package manager and make it noninteractive
This patch sets debconf frontend to noninteractive by including
additional field in the first stanza of configuration file. Its
placement has been chosen arbitrarily - both 'Config' and 'Templates'
fields "are required in this first stanza" [1].
It also makes symlinking script more generic.
[1] man 5 debconf.conf (provided by "debconf-doc" in Ubuntu)
Issue-ID: SECCOM-235
Change-Id: If9dcc712d1ff7f527d3bc59f4c1709cffe4cbda5
Signed-off-by: Pawel Wieczorek
---
diff --git a/test/security/k8s/tools/config/95silent-approval b/test/security/k8s/tools/config/95silent-approval
new file mode 100644
index 000000000..dadbfbd86
--- /dev/null
+++ b/test/security/k8s/tools/config/95silent-approval
@@ -0,0 +1,2 @@
+Quiet "1";
+APT::Get::Assume-Yes "true";
diff --git a/test/security/k8s/vagrant/dublin/Vagrantfile b/test/security/k8s/vagrant/dublin/Vagrantfile
index ce442eb98..b8abcd125 100644
--- a/test/security/k8s/vagrant/dublin/Vagrantfile
+++ b/test/security/k8s/vagrant/dublin/Vagrantfile
@@ -8,6 +8,8 @@ vagrant_password = "vagrant"
synced_folder_main = "/vagrant"
synced_folder_config = "#{synced_folder_main}/config"
cluster_yml = "cluster.yml"
+apt_prefs_dir = "/etc/apt/apt.conf.d"
+apt_prefs = "95silent-approval"
vm_memory = 2 * 1024
vm_cpus = 1
@@ -35,6 +37,11 @@ $add_to_docker_group = <<-SCRIPT
usermod -aG docker "$USER"
SCRIPT
+$setup_debconf = <<-SCRIPT
+ echo "Setting debconf frontend to noninteractive"
+ sed -i'.orig' '/^Config:/a Frontend: noninteractive' /etc/debconf.conf
+SCRIPT
+
$install_sshpass = <<-SCRIPT
apt-get update
echo "Installing 'sshpass'"
@@ -69,11 +76,11 @@ $link_dotfiles = <<-SCRIPT
done
SCRIPT
-$link_cluster_yml = <<-SCRIPT
+$link_file = <<-SCRIPT
SYNC_DIR="$1"
- CLUSTER_YML="$2"
- src="${SYNC_DIR}/${CLUSTER_YML}"
- dst="$HOME"
+ FILE="$2"
+ src="${SYNC_DIR}/${FILE}"
+ dst="$3"
echo "Symlinking ${src} to ${dst}"
ln -sf "$src" "$dst"
SCRIPT
@@ -115,6 +122,11 @@ Vagrant.configure('2') do |config|
config.vm.synced_folder ".", synced_folder_main, type: "rsync", rsync__exclude: "Vagrantfile"
config.vm.synced_folder "../../tools/config", synced_folder_config, type: "rsync"
+ config.vm.provision "setup_debconf", type: :shell, inline: $setup_debconf
+ config.vm.provision "link_apt_prefs", type: :shell, run: "always" do |s|
+ s.inline = $link_file
+ s.args = [synced_folder_config, apt_prefs, apt_prefs_dir]
+ end
config.vm.provision "link_dotfiles_root", type: :shell, run: "always" do |s|
s.inline = $link_dotfiles
s.args = synced_folder_config
@@ -140,8 +152,8 @@ Vagrant.configure('2') do |config|
config.vm.provision "get_rke", type: :shell, path: "../../tools/dublin/get_rke.sh"
config.vm.provision "link_cluster_yml", type: :shell, run: "always" do |s|
s.privileged = false
- s.inline = $link_cluster_yml
- s.args = [synced_folder_main, cluster_yml]
+ s.inline = $link_file
+ s.args = [synced_folder_main, cluster_yml, "$HOME"]
end
config.vm.post_up_message = operation_post_msg