devops: add RPM prepare and external installers; extend Dockerfile and run_docker.sh for --run-rpm

This commit is contained in:
torsten committed 2026-07-18 18:24:31 +02:00
1 parent 89f048a312
commit fe78be0afa
2 files changed
+45 -1

No files matched your search

+35 -1
View File
@@ -12,6 +12,11 @@ QT_ROOT_DEFAULT="${QT_ROOT_DEFAULT:-/opt/Qt/6.8.3/gcc_64}"
GIT_REPO_DIR=""
WORKDIR_IN_CONTAINER=""
RUN_QT_SMOKE_TEST=0
RUN_RPM=0
PROJECT_RPM=""
OS_VERSION_RPM="ubuntu24"
LTS_VERSION_RPM="1.2.0"
GUEZ_MODE_RPM="ON"
QT_ROOT_OVERRIDE=""
DOCKER_ARGS=()
CMD_ARGS=()
@@ -55,6 +60,26 @@ while [[ $# -gt 0 ]]; do
QT_ROOT_OVERRIDE="$2"
shift 2
;;
--run-rpm)
RUN_RPM=1
shift
;;
--rpm-project)
PROJECT_RPM="$2"
shift 2
;;
--rpm-os)
OS_VERSION_RPM="$2"
shift 2
;;
--rpm-lts)
LTS_VERSION_RPM="$2"
shift 2
;;
--rpm-guez)
GUEZ_MODE_RPM="$2"
shift 2
;;
-h|--help)
usage
exit 0
@@ -169,7 +194,14 @@ EOF
)
fi
if [[ ${#CMD_ARGS[@]} -eq 0 ]]; then
if [[ ${RUN_RPM} -eq 1 ]]; then
# Run rpm prepare script inside container
if [[ -n "$PROJECT_RPM" ]]; then
CMD_ARGS=(bash -lc "/app/prepare_rpm.sh '$PROJECT_RPM' '$OS_VERSION_RPM' '$LTS_VERSION_RPM' '$GUEZ_MODE_RPM'")
else
CMD_ARGS=(bash -lc "/app/prepare_rpm.sh")
fi
elif [[ ${#CMD_ARGS[@]} -eq 0 ]]; then
CMD_ARGS=(bash)
fi
@@ -194,6 +226,8 @@ docker run --rm $DOCKER_TTY_FLAG \
-e QT_ROOT="$QT_ROOT_OVERRIDE" \
-e Qt6_ROOT="$QT_ROOT_OVERRIDE" \
-e CMAKE_PREFIX_PATH="$QT_ROOT_OVERRIDE" \
-e PROJECT_BASE_DIR="${PROJECT_BASE_DIR:-./}" \
-e PROJECT_BASE_DIR="${PROJECT_BASE_DIR:-./}" \
"$IMAGE_NAME" \
bash -s -- "${CMD_ARGS[@]}" <<'DOCKER_SCRIPT'
set -euo pipefail