Introduce LXC container deployment task
authorMathieu Baudier <mbaudier@argeo.org>
Sun, 26 Jan 2014 12:27:20 +0000 (12:27 +0000)
committerMathieu Baudier <mbaudier@argeo.org>
Sun, 26 Jan 2014 12:27:20 +0000 (12:27 +0000)
git-svn-id: https://svn.argeo.org/slc/trunk@6768 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc

runtime/org.argeo.slc.support.simple/src/main/resources/org/argeo/slc/lib/linux/lxc-init-guest.sh [new file with mode: 0644]
runtime/org.argeo.slc.support.simple/src/main/resources/org/argeo/slc/lib/linux/lxc-init-host.sh [new file with mode: 0644]

diff --git a/runtime/org.argeo.slc.support.simple/src/main/resources/org/argeo/slc/lib/linux/lxc-init-guest.sh b/runtime/org.argeo.slc.support.simple/src/main/resources/org/argeo/slc/lib/linux/lxc-init-guest.sh
new file mode 100644 (file)
index 0000000..11ecc4e
--- /dev/null
@@ -0,0 +1,29 @@
+echo demo | passwd root --stdin
+
+#Fix root login on console
+echo "pts/0" >>/etc/securetty
+sed -i s/"session    required     pam_selinux.so close"/"#session    required     pam_selinux.so close"/g /etc/pam.d/login
+sed -i s/"session    required     pam_selinux.so open"/"#session    required     pam_selinux.so open"/g /etc/pam.d/login
+sed -i s/"session    required     pam_loginuid.so"/"#session    required     pam_loginuid.so"/g /etc/pam.d/login
+
+#Configuring basic networking
+cat > /etc/sysconfig/network << EOF
+NETWORKING=yes
+HOSTNAME=demo
+EOF
+cat > /etc/sysconfig/network-scripts/ifcfg-eth0 << EOF
+DEVICE=eth0
+BOOTPROTO=dhcp
+ONBOOT=yes
+EOF
+
+#Enabling sshd
+chkconfig sshd on
+
+# Fixing root login for sshd
+sed -i s/"session    required     pam_selinux.so close"/"#session    required     pam_selinux.so close"/g /etc/pam.d/sshd
+sed -i s/"session    required     pam_loginuid.so"/"#session    required     pam_loginuid.so"/g /etc/pam.d/sshd
+sed -i s/"session    required     pam_selinux.so open env_params"/"#session    required     pam_selinux.so open env_params"/g /etc/pam.d/sshd
+
+# Leaving the chroot'ed filesystem
+exit
\ No newline at end of file
diff --git a/runtime/org.argeo.slc.support.simple/src/main/resources/org/argeo/slc/lib/linux/lxc-init-host.sh b/runtime/org.argeo.slc.support.simple/src/main/resources/org/argeo/slc/lib/linux/lxc-init-host.sh
new file mode 100644 (file)
index 0000000..9e0d75d
--- /dev/null
@@ -0,0 +1,8 @@
+#!/bin/sh
+CHROOT=$1
+echo Init LXC container $CHROOT
+
+mkdir $CHROOT/etc/yum.repos.d/ -p  
+cat /etc/yum.repos.d/CentOS-Base.repo |sed s/'$releasever'/6/g > $CHROOT/etc/yum.repos.d/CentOS-Base.repo
+yum groupinstall core --installroot=$CHROOT --nogpgcheck -y
+yum install plymouth libselinux-python --installroot=$CHROOT --nogpgcheck -y
\ No newline at end of file