Commit 698cc6e6 authored by Marco Cavalli's avatar Marco Cavalli
Browse files

feat: add bash script for docker conversion with parameter handling

parent d861a67a
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -89,7 +89,7 @@ if defined FILE_ORDER set "EXTRA_ARGS=!EXTRA_ARGS! --file-order ""%FILE_ORDER%""
set "GEN_DIR=%CD%\GENERATED_FILES"

if defined EXTRA_ARGS (
	docker run ^
	docker run --rm ^
		-v "%GEN_DIR%:/app/GENERATED_FILES:rw" ^
		-v "%SRC_VOL%:/app/sources:rw" ^
		md-converter convert.py ^
@@ -98,7 +98,7 @@ if defined EXTRA_ARGS (
		--folder "%FOLDER%" ^
		!EXTRA_ARGS!
) else (
	docker run ^
	docker run --rm^
		-v "%GEN_DIR%:/app/GENERATED_FILES:rw" ^
		-v "%SRC_VOL%:/app/sources:rw" ^
		md-converter convert.py ^
+70 −0
Original line number Diff line number Diff line
#!/bin/bash

# Script to run docker conversion with parameters
ARCH="amd64"

# Parse --arch first if present
for arg in "$@"; do
    if [[ "$arg" == "--arch" ]]; then
        ARCH_FOUND=true
    elif [[ "$ARCH_FOUND" == "true" ]]; then
        ARCH="$arg"
        ARCH_FOUND=false
    fi
done

# Validate arch parameter
if [[ "$ARCH" != "amd64" && "$ARCH" != "arm64" ]]; then
    echo "Error: --arch must be either 'amd64' or 'arm64'"
    exit 1
fi

# Check if image exists and rebuild if needed
if ! docker image inspect md-converter &>/dev/null; then
  docker build --build-arg TARGETARCH="$ARCH" -t md-converter .
fi

FRM=""
TO=""
FOLDER=""
SRC=""
FILE_ORDER=""
DIFF=false
DIFF_PATH=""

while [[ "$#" -gt 0 ]]; do
    case $1 in
        --frm) FRM="$2"; shift ;;
        --to) TO="$2"; shift ;;
        --folder) FOLDER="$2"; shift ;;
        --src) SRC="$2"; shift ;;
        --file-order) FILE_ORDER="$2"; shift ;;
        --arch) shift ;; # Already processed
        #--diff) DIFF=true; DIFF_PATH="$2"; shift ;;
        *) echo "Unknown parameter passed: $1"; exit 1 ;;
    esac
    shift
done
# FRM, TO and FOLDER are required
if [[ -z "$FRM" || -z "$TO" || -z "$FOLDER" ]]; then
    echo "Error: --frm, --to, and --folder parameters are required."
    exit 1
fi
SRC_VOL=""
if [[ -n "$SRC" ]]; then
    SRC_VOL="$SRC"
else
    SRC_VOL="$FOLDER"
fi

docker run --rm \
  -v "$(pwd)/GENERATED_FILES":/app/GENERATED_FILES:rw \
  -v "$SRC_VOL":/app/sources:rw \
  md-converter convert.py \
  --frm "$FRM" \
  --to "$TO" \
  --folder "$FOLDER" \
  ${SRC:+--src ./sources} \
  ${FILE_ORDER:+--file-order "$FILE_ORDER"} #\
  #${DIFF:+--diff "$DIFF_PATH"}