Updated scripts/{crt.sh, functions} with passwordless scp.
authorZoltán Felleg <zoltan.felleg@userrendszerhaz.hu>
Wed, 31 Mar 2021 11:09:07 +0000 (13:09 +0200)
committerZoltán Felleg <zoltan.felleg@userrendszerhaz.hu>
Wed, 31 Mar 2021 11:09:07 +0000 (13:09 +0200)
.hgignore
scripts/crt.sh
scripts/functions

index e4f648b23ccdb250fb2f7f0c16c74db88e0769f5..7da3da6dca95832860f0278d7038d9aabc89fa16 100644 (file)
--- a/.hgignore
+++ b/.hgignore
@@ -1,4 +1,7 @@
 syntax: regexp
 ^backups/
+^build/
 ^containers/
 ^filesystems/
+^qqcs-ssh/
+^user-ssh/
index 824b8015b8581ed5f38f50d7438715a87c612d63..720bb12175b8ac7af7ce7d3ee44f9742e78d9e64 100755 (executable)
@@ -24,6 +24,7 @@ BACKUPS_PATH=$BASE_PATH/backups
 BUILD_PATH=$BASE_PATH/build
 FILESYSTEMS_PATH=$BASE_PATH/filesystems
 SOURCES_PATH=$BASE_PATH/sources
+SSH_KEYS_PATH=$BASE_PATH/user-ssh
 
 source $SCRIPT_PATH/functions
 RC=$?
@@ -87,16 +88,15 @@ lxc-ls -1 | grep "^${CONTAINER_NAME}$" >/dev/null 2>&1
 if [ $? -eq 0 ]
 then
     OLD_CONTAINER_NAME=$CONTAINER_NAME
-    OLD_CONTAINER_PATH=$LXC_PATH/$OLD_CONTAINER_NAME
 else
     PREV_CONTAINER_NAME="${CONTAINER_BASENAME}.$PREV_CONTAINER_OS"
     lxc-ls -1 | grep "^${PREV_CONTAINER_NAME}$" >/dev/null 2>&1
     if [ $? -eq 0 ]
     then
         OLD_CONTAINER_NAME=$PREV_CONTAINER_NAME
-        OLD_CONTAINER_PATH=$LXC_PATH/$OLD_CONTAINER_NAME
     fi
 fi
+OLD_CONTAINER_PATH=$LXC_PATH/$OLD_CONTAINER_NAME
 OLD_CONTAINER_BACKUP_PATH=$BACKUPS_PATH/$OLD_CONTAINER_NAME
 
 ################################################################
@@ -110,6 +110,7 @@ echo "BACKUPS_PATH=$BACKUPS_PATH" >>$ENV_FILE
 echo "BUILD_PATH=$BUILD_PATH" >>$ENV_FILE
 echo "FILESYSTEMS_PATH=$FILESYSTEMS_PATH" >>$ENV_FILE
 echo "SOURCES_PATH=$SOURCES_PATH" >>$ENV_FILE
+echo "SSH_KEYS_PATH=$SSH_KEYS_PATH" >>$ENV_FILE
 echo >>$ENV_FILE
 echo "CONTAINER_BASENAME=$CONTAINER_BASENAME" >>$ENV_FILE
 echo "CONTAINER_NAME=$CONTAINER_NAME" >>$ENV_FILE
@@ -119,9 +120,6 @@ echo "CONTAINER_BUILD_PATH=$CONTAINER_BUILD_PATH" >>$ENV_FILE
 echo "CONTAINER_FILESYSTEMS_PATH=$CONTAINER_FILESYSTEMS_PATH" >>$ENV_FILE
 echo "CONTAINER_SOURCE_PATH=$CONTAINER_SOURCE_PATH" >>$ENV_FILE
 echo >>$ENV_FILE
-#echo "DISTRIBUTION_FIRST_CHAR=$DISTRIBUTION_FIRST_CHAR" >>$ENV_FILE
-#echo "PREV_DISTRIBUTION_VERSION=$PREV_DISTRIBUTION_VERSION" >>$ENV_FILE
-#echo "PREV_CONTAINER_OS=$PREV_CONTAINER_OS" >>$ENV_FILE
 echo "OLD_CONTAINER_NAME=$OLD_CONTAINER_NAME" >>$ENV_FILE
 echo "OLD_CONTAINER_PATH=$OLD_CONTAINER_PATH" >>$ENV_FILE
 echo "OLD_CONTAINER_BACKUP_PATH=$OLD_CONTAINER_BACKUP_PATH" >>$ENV_FILE
index 908574dd1bd6a225cc7ca05f6861dfda49aa0d8f..fbc106632fa9029009d446300588b5170b518ab6 100644 (file)
@@ -32,6 +32,21 @@ postinstall()
     if [ -d $CONTAINER_SOURCE_PATH/postinstall ]
     then
         cp --archive $CONTAINER_SOURCE_PATH/postinstall $CONTAINER_ROOTFS
+        if [ -f $CONTAINER_SOURCE_PATH/postinstall/copy.list ]
+        then
+            grep -v '^#' $CONTAINER_SOURCE_PATH/postinstall/copy.list | while read LINE
+            do
+                SRC_HOST=$(echo "$LINE" | cut -f 1 -d ' ')
+                SRC_PATH=$(echo "$LINE" | cut -f 2 -d ' ')
+                TGT_PATH=$(echo "$LINE" | cut -f 3 -d ' ')
+                scp -pr -i $SSH_KEYS_PATH/scripts \
+                    root@${SRC_HOST}:$SRC_PATH \
+                    $CONTAINER_ROOTFS/postinstall/install/$TGT_PATH
+            done
+        fi
+    fi
+    if [ -d $CONTAINER_ROOTFS/postinstall ]
+    then
         chmod 755 $CONTAINER_ROOTFS/postinstall/*.sh
         for SCRIPT in $CONTAINER_ROOTFS/postinstall/*.sh
         do