diff --git a/docker/lmk.devuan-chimaera.rc b/docker/lmk.devuan-chimaera.rc
index 8c876a0..9a50ecb 100644
--- a/docker/lmk.devuan-chimaera.rc
+++ b/docker/lmk.devuan-chimaera.rc
@@ -1,12 +1,13 @@
container_name="finetest-devuan-chimaera-lmk"
-library_image="linux-minetest-kit/libraries-devuan-chimaera"
-docker_finetest_server_image_name="linux-minetest-kit/server-finetest-devuan-chimaera"
-# ^ This must match the one used in the "FROM" statement in server-finetest-devuan-chimaera/Dockerfile
+libraries_image="linux-minetest-kit/libraries-devuan-chimaera"
+server_image_dir="server-finetest-devuan-chimaera"
+server_image="linux-minetest-kit/server-finetest-devuan-chimaera"
+# ^ formerly server_finetest_image
+# ^ This must match the one used in the "FROM" statement in $server_image_dir/Dockerfile
# client_classic_image=linux-minetest-kit/client-classic
-server_finetest_image="linux-minetest-kit/server-finetest-devuan-chimaera"
# client_classic_container="minetest-client-classic"
-server_container="minetestserver-finetest"
-docker_libraries_image_dir="libraries-devuan-chimaera"
-docker_finetest_server_image_dir="server-finetest-devuan-chimaera"
-container_build_blob=$docker_libraries_image_dir/linux-minetest-kit.zip
+# server_container="minetestserver-finetest"
+# ^ deprecated since: Only container_name is necessary since there is no container based on libraries_image--a libraries container is not necessary since Dockerfile builds the libraries now.
+libraries_image_dir="libraries-devuan-chimaera"
+libraries_image_build_blob=$libraries_image_dir/linux-minetest-kit.zip
prerelease_path=~/Downloads/minetest.org/insider-prerelease/linux-minetest-kit-220509.zip
diff --git a/docker/lmk.devuan-chimaera.sh b/docker/lmk.devuan-chimaera.sh
index 272afa6..9b17824 100755
--- a/docker/lmk.devuan-chimaera.sh
+++ b/docker/lmk.devuan-chimaera.sh
@@ -20,23 +20,28 @@ END
fi
# container_name="linux-minetest-kit-build-libraries-devuan-chimaera"
# ^ This is no longer necessary since the IMAGE does the building (build was moved to Dockerfile)
-source lmk.devuan-chimaera.rc
+this_rc="lmk.devuan-chimaera.rc"
+if [ ! -f "$this_rc" ]; then
+ echo "Error: $0 must run in the directory containing $this_rc."
+ exit 1
+fi
+source $this_rc
if [ $? -ne 0 ]; then exit 1; fi
-if [ ! -d "$docker_libraries_image_dir" ]; then
- echo "* $0 must run from the directory containing the container image directory: $docker_libraries_image_dir"
+if [ ! -d "$libraries_image_dir" ]; then
+ echo "Error: $0 must run from the directory containing the container image directory: $libraries_image_dir"
exit 1
fi
-# ^ docker_libraries_image_dir has to be in the same directory as Dockerfile or
+# ^ libraries_image_dir has to be in the same directory as Dockerfile or
# the COPY command in the Dockerfile won't work.
-source $docker_libraries_image_dir/lmk.rc
+source $libraries_image_dir/lmk.rc
if [ $? -ne 0 ]; then
exit 1
fi
if [ "@$DL_SRC_PATH" = "@" ]; then
# DL_SRC_PATH="$HOME/Downloads/$DL_SRC_NAME"
- DL_SRC_PATH="$docker_libraries_image_dir"
+ DL_SRC_PATH="$libraries_image_dir"
# ^ $DL_SRC_PATH has to be in the same directory as Dockerfile or
# the COPY command in the Dockerfile won't work.
# The file should be added to .gitignore for the reason that it
@@ -44,54 +49,55 @@ if [ "@$DL_SRC_PATH" = "@" ]; then
fi
-# sudo docker image inspect $library_image > /dev/null
-sudo docker image inspect $library_image --format "* docker is looking for the image..."
+# sudo docker image inspect $libraries_image > /dev/null
+sudo docker image inspect $libraries_image --format "* docker is looking for the image..."
# ^ appending ":latest" to the name also works.
# ^ Get matching images as a JSON list (where each has "Id" and other
# metadata).
if [ $? -ne 0 ]; then
- if [ ! -d "$docker_libraries_image_dir" ]; then
- echo "Error: \"$docker_libraries_image_dir\" (docker_libraries_image_dir for storing $SRC_URL) doesn't exist in \"`pwd`\"."
+ if [ ! -d "$libraries_image_dir" ]; then
+ echo "Error: \"$libraries_image_dir\" (libraries_image_dir for storing $SRC_URL) doesn't exist in \"`pwd`\"."
exit 1
fi
- echo "* building image $library_image..."
- if [ ! -f "$container_build_blob" ]; then
+ echo "* building image $libraries_image..."
+ if [ ! -f "$libraries_image_build_blob" ]; then
echo "* downloading $SRC_URL to $DL_SRC_PATH..."
curl "$SRC_URL" --progress-bar --output "$DL_SRC_PATH"
if [ $? -ne 0 ]; then
exit 1
fi
- if [ ! -f "$container_build_blob" ]; then
- echo "Error: This script requires \"$container_build_blob\"."
+ if [ ! -f "$libraries_image_build_blob" ]; then
+ echo "Error: This script requires \"$libraries_image_build_blob\"."
exit 1
fi
else
- echo "* using existing \"$container_build_blob\" to build the container image"
+ echo "* using existing \"$libraries_image_build_blob\" to build the container image"
fi
- cp ../install-minetest-build-deps.sh $docker_libraries_image_dir/
+ cp ../install-minetest-build-deps.sh $libraries_image_dir/
# ^ This copy of it is in .gitignore.
if [ $? -ne 0 ]; then
- echo "Error: 'cp ../install-minetest-build-deps.sh $docker_libraries_image_dir/' failed."
+ echo "Error: 'cp ../install-minetest-build-deps.sh $libraries_image_dir/' failed."
exit 1
fi
move_back="false"
- if [ ! -f $container_build_blob ]; then
+ if [ ! -f $libraries_image_build_blob ]; then
if [ -f "$prerelease_path" ]; then
move_back="true"
- echo "mv $prerelease_path $container_build_blob"
- mv $prerelease_path $container_build_blob
+ echo "mv $prerelease_path $libraries_image_build_blob"
+ mv $prerelease_path $libraries_image_build_blob
if [ $? -ne 0 ]; then
echo "* Error: the mv command failed."
exit 1
fi
fi
fi
- sudo docker build -t $library_image $docker_libraries_image_dir
+ sudo docker build -t $libraries_image $libraries_image_dir
+ # -t: Name and optionally a tag in the 'name:tag' format
code=$?
if [ "@move_back" = "@true" ]; then
- echo "mv \"$prerelease_path\" \"$container_build_blob\""
- mv "$container_build_blob" "$prerelease_path"
+ echo "mv \"$prerelease_path\" \"$libraries_image_build_blob\""
+ mv "$libraries_image_build_blob" "$prerelease_path"
if [ $? -ne 0 ]; then
echo "* Warning: the mv command failed."
fi
@@ -100,17 +106,17 @@ if [ $? -ne 0 ]; then
exit 1
fi
else
- echo "* The container will be built using the existing docker image $library_image"
+ echo "* The container will be built using the existing docker image $libraries_image"
fi
-# sudo docker container run -d --name $library_image unzip xvf $contained_arc -C $contained_repos
+# sudo docker container run -d --name $libraries_image unzip xvf $contained_arc -C $contained_repos
container_Id=`sudo docker ps -aqf "name=$container_name"`
-# ^ ONLY works with container_name not library_image
+# ^ ONLY works with container_name not libraries_image
cat > /dev/null <.
# Therefore:
-# echo "* Creating image \"$server_finetest_image\"..."
-# sudo docker commit $container_Id $server_finetest_image
+# echo "* Creating image \"$server_image\"..."
+# sudo docker commit $container_Id $server_image
# if [ $? -ne 0 ]; then
-# echo "FAILED (sudo docker commit $container_Id $server_finetest_image)"
+# echo "FAILED (sudo docker commit $container_Id $server_image)"
# fi
# echo "* Running $server_bin_path in container \"$server_container\""
-# sudo docker container run --name $server_container $server_finetest_image $server_bin_path
+# sudo docker container run --name $server_container $server_image $server_bin_path
# if [ $? -ne 0 ]; then
-# echo "FAILED (sudo docker container run --name $server_container $server_finetest_image $server_bin_path)"
+# echo "FAILED (sudo docker container run --name $server_container $server_image $server_bin_path)"
# fi
# ^ Build the server as a separate step instead (see further up)
@@ -224,7 +235,7 @@ How to use the image:
sudo docker image ls
# ^ See what images are installed (one image can be used for many containers).
- sudo docker rmi $library_image
+ sudo docker rmi $libraries_image
# ^ Remove a docker image (This is necessary after updating the unversioned Docker image to avoid cached RUN commands from doing nothing when the script after RUN changes).
sudo docker image prune --force
@@ -254,12 +265,12 @@ How to use the image:
# ^ Stop a container by name (See )
# You must use the container name (as determined using the "ps" subcommand), not the image name.
- sudo docker container run -it $library_image /bin/bash
+ sudo docker container run -it $libraries_image /bin/bash
# ^ Run an interactive terminal (Type 'exit' to exit)
# (based on )
- sudo docker commit $container_Id $server_finetest_image
- sudo docker container run --name tmp_test_im -it $server_finetest_image /bin/bash
+ sudo docker commit $container_Id $server_image
+ sudo docker container run --name tmp_test_im -it $server_image /bin/bash
# ^ Transform the container into an image and inspect the internals manually
# (based on ).
# Then: sudo docker rm --force tmp_test_im
diff --git a/docker/server-finetest-devuan-chimaera/Dockerfile b/docker/server-finetest-devuan-chimaera/Dockerfile
index cbb9eb1..4f6724b 100644
--- a/docker/server-finetest-devuan-chimaera/Dockerfile
+++ b/docker/server-finetest-devuan-chimaera/Dockerfile
@@ -1,6 +1,6 @@
FROM linux-minetest-kit/libraries-devuan-chimaera
-COPY build-and-check.sh /opt/
+COPY build-and-check.sh /opt
WORKDIR /opt/linux-minetest-kit
-RUN ./mtcompile-program.pl --build --finetest --server
+# RUN ./mtcompile-program.pl --build --finetest --server
# ^ Always returns 1, so:
-# RUN build-and-check.sh
+RUN /opt/build-and-check.sh
diff --git a/docker/server-finetest-devuan-chimaera/build-and-check.sh b/docker/server-finetest-devuan-chimaera/build-and-check.sh
index 2b0cb92..25b0ac3 100755
--- a/docker/server-finetest-devuan-chimaera/build-and-check.sh
+++ b/docker/server-finetest-devuan-chimaera/build-and-check.sh
@@ -1,11 +1,17 @@
#!/bin/bash
-./mtcompile-program.pl --build --finetest --server
-echo "Returned $1"
-good_flag_file=minetest/bin/multicraftserver
+./mtcompile-program.pl build --finetest --server
+echo "Done './mtcompile-program.pl build --finetest --server' (returned $?)"
+good_flag_file_name=multicraftserver
+good_flag_file=minetest/bin/$good_flag_file_name
if [ -f "$good_flag_file" ]; then
- echo "* forcing OK return since found \"$good_flag_file\""
+ echo "* forcing OK return since found \"$good_flag_file\" in `pwd`"
exit 0
else
- echo "* forcing OK return since \"$good_flag_file\" doesn't exist"
+ echo "* forcing FAILED return since \"$good_flag_file\" doesn't exist in `pwd`"
+ echo "* searching..."
+ find /opt -name "minetest*" | grep -v "minetest\.mo" | grep -v "minetest\.po"
+ find /opt -name "multicraft*"
+ echo "* searching for $good_flag_file_name..."
+ find /opt -name $good_flag_file_name
exit 1
fi