{
case "$DISTRIBUTION" in
"CentOS")
- YUM_CONFIG=$SCRIPT_PATH/yum.conf.centos
+ YUM_CONFIG=$SCRIPT_PATH/yum.conf.centos.$SHORT_HOSTNAME
YUM_RELEASEVER=$DISTRIBUTION_VERSION
if [ -n "$ROOT_PACKAGES" ]
then
clean all
;;
"Fedora")
- DNF_CONFIG=$SCRIPT_PATH/dnf.conf.fedora
+ DNF_CONFIG=$SCRIPT_PATH/dnf.conf.fedora.$SHORT_HOSTNAME
DNF_RELEASEVER=$DISTRIBUTION_VERSION
if [ -n "$ROOT_PACKAGES" ]
then
clean all
;;
"Rocky")
- YUM_CONFIG=$SCRIPT_PATH/yum.conf.rocky
+ YUM_CONFIG=$SCRIPT_PATH/yum.conf.rocky.$SHORT_HOSTNAME
YUM_RELEASEVER=$DISTRIBUTION_VERSION
if [ -n "$ROOT_PACKAGES" ]
then
esac
}
-create_paths()
+create_build_path()
{
- if [ ! -d $BACKUPS_PATH ]
- then
- echo "Creating $BACKUPS_PATH"
- mkdir $BACKUPS_PATH
- fi
- if [ ! -d $BUILD_PATH ]
- then
- echo "Creating $BUILD_PATH"
- mkdir $BUILD_PATH
- fi
- if [ ! -d $FILESYSTEMS_PATH ]
- then
- echo "Creating $FILESYSTEMS_PATH"
- mkdir $FILESYSTEMS_PATH
- fi
- if [ ! -d $LXC_PATH ]
+ echo "Creating and populating the container build directory."
+
+ mkdir --parents $CONTAINER_BUILDROOT
+
+ sed --expression="s|__CONTAINER_PATH__|$CONTAINER_PATH|" \
+ <$CONTAINER_SOURCE_PATH/config \
+ >$CONTAINER_BUILD_PATH/config
+ if [ -d $CONTAINER_SOURCE_PATH/hooks ]
then
- echo "Creating $LXC_PATH"
- mkdir $LXC_PATH
+ cp --archive $CONTAINER_SOURCE_PATH/hooks $CONTAINER_BUILD_PATH
fi
+
+ echo "Created and populated the container build directory."
}
create_environment_file()
echo "BACKUPS_PATH=$BACKUPS_PATH" >>$ENV_FILE
echo "BUILD_PATH=$BUILD_PATH" >>$ENV_FILE
echo "FILESYSTEMS_PATH=$FILESYSTEMS_PATH" >>$ENV_FILE
+ echo "SHORT_HOSTNAME=$SHORT_HOSTNAME" >>$ENV_FILE
echo "SOURCES_PATH=$SOURCES_PATH" >>$ENV_FILE
echo "SSH_KEYS_PATH=$SSH_KEYS_PATH" >>$ENV_FILE
echo >>$ENV_FILE
echo "Environment file created."
}
-populate_build_path()
-{
- echo "Creating and populating the container build directory."
-
- mkdir --parents $CONTAINER_BUILDROOT
-
- sed --expression="s|__CONTAINER_PATH__|$CONTAINER_PATH|" \
- <$CONTAINER_SOURCE_PATH/config \
- >$CONTAINER_BUILD_PATH/config
- if [ -d $CONTAINER_SOURCE_PATH/hooks ]
- then
- cp --archive $CONTAINER_SOURCE_PATH/hooks $CONTAINER_BUILD_PATH
- fi
-
- echo "Created and populated the container build directory."
-}
-
set_variables()
{
CONTAINER_OS_PARAMETER=$1
BACKUPS_PATH=$BASE_PATH/backups
BUILD_PATH=$BASE_PATH/build
FILESYSTEMS_PATH=$BASE_PATH/filesystems
+ SHORT_HOSTNAME=$(hostname --short)
SOURCES_PATH=$BASE_PATH/sources
SSH_KEYS_PATH=$BASE_PATH/user-ssh
return 1
fi
- if [ ! -f $CONTAINER_SOURCE_PATH/config ]
+ SOURCE_CONFIG=$CONTAINER_SOURCE_PATH/config
+ if [ -f $CONTAINER_SOURCE_PATH/config.$SHORT_HOSTNAME ]
+ then
+ SOURCE_CONFIG=$CONTAINER_SOURCE_PATH/config.$SHORT_HOSTNAME
+ fi
+ if [ ! -f $SOURCE_CONFIG ]
then
echo "No config file found for $CONTAINER_NAME_PARAMETER" >&2
return 2
create_environment_file
-create_paths
-
-populate_build_path
+create_build_path
preinstall