From 72001103cd2c0cdf08601ec1c1875099fbfed8b4 Mon Sep 17 00:00:00 2001 From: chiDT Date: Mon, 8 Sep 2025 21:25:04 +0900 Subject: [PATCH] Enhance build scripts with datetime versioning MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add datetime-based version tagging (YYYYMMDD_HHMMSS format) - Support both automatic versioning and manual version override - Build with both latest and version tags simultaneously - Update both Linux (.sh) and Windows (.bat) build scripts - Add detailed build output with next steps guidance ๐Ÿค– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- build.bat | 32 +++++++++++++++++++++++++++++++- build.sh | 21 +++++++++++++++------ 2 files changed, 46 insertions(+), 7 deletions(-) diff --git a/build.bat b/build.bat index f5a2e11..2b2bbda 100644 --- a/build.bat +++ b/build.bat @@ -1 +1,31 @@ -docker build -t xwindow-korean-dotnet:latest . +@echo off +REM Docker ์ด๋ฏธ์ง€ ๋นŒ๋“œ ๋ฐฐ์น˜ ํŒŒ์ผ + +setlocal enabledelayedexpansion + +set IMAGE_NAME=xwindow-korean-dotnet + +REM ๋ฒ„์ „ ํƒœ๊ทธ ์„ค์ • (๋‚ ์งœ์‹œ๊ฐ„ ๊ธฐ๋ฐ˜ ๋˜๋Š” ์ธ์ž๋กœ ๋ฐ›๊ธฐ) +if not "%1"=="" ( + set VERSION=%1 +) else ( + for /f "tokens=2-4 delims=/ " %%a in ('date /t') do set DATE=%%c%%a%%b + for /f "tokens=1-2 delims=: " %%a in ('time /t') do set TIME=%%a%%b + set TIME=!TIME: =0! + set VERSION=!DATE!_!TIME! +) + +echo ๐Ÿณ Building Docker image: %IMAGE_NAME%:latest and %IMAGE_NAME%:!VERSION! + +REM ๋นŒ๋“œ ์‹œ์ž‘ (latest์™€ ๋ฒ„์ „ ํƒœ๊ทธ ๋™์‹œ ์ ์šฉ) +docker build -t %IMAGE_NAME%:latest -t %IMAGE_NAME%:!VERSION! . + +echo โœ… Build completed successfully! +echo ๐Ÿท๏ธ Tagged as: +echo - %IMAGE_NAME%:latest +echo - %IMAGE_NAME%:!VERSION! +echo ๐Ÿ“‹ Next steps: +echo - Test: docker run -p 3389:3389 %IMAGE_NAME%:!VERSION! +echo - Push both tags: docker push %IMAGE_NAME%:latest ^&^& docker push %IMAGE_NAME%:!VERSION! + +pause diff --git a/build.sh b/build.sh index 3b81b62..3cfa6ec 100644 --- a/build.sh +++ b/build.sh @@ -4,15 +4,24 @@ set -e IMAGE_NAME="xwindow-korean-dotnet" -VERSION="latest" -echo "๐Ÿณ Building Docker image: $IMAGE_NAME:$VERSION" +# ๋ฒ„์ „ ํƒœ๊ทธ ์„ค์ • (๋‚ ์งœ์‹œ๊ฐ„ ๊ธฐ๋ฐ˜ ๋˜๋Š” ์ธ์ž๋กœ ๋ฐ›๊ธฐ) +if [ -n "$1" ]; then + VERSION="$1" +else + VERSION=$(date +%Y%m%d_%H%M%S) +fi -# ๋นŒ๋“œ ์‹œ์ž‘ -docker build -t $IMAGE_NAME:$VERSION . +echo "๐Ÿณ Building Docker image: $IMAGE_NAME:latest and $IMAGE_NAME:$VERSION" + +# ๋นŒ๋“œ ์‹œ์ž‘ (latest์™€ ๋ฒ„์ „ ํƒœ๊ทธ ๋™์‹œ ์ ์šฉ) +docker build -t $IMAGE_NAME:latest -t $IMAGE_NAME:$VERSION . echo "โœ… Build completed successfully!" +echo "๐Ÿท๏ธ Tagged as:" +echo " - $IMAGE_NAME:latest" +echo " - $IMAGE_NAME:$VERSION" echo "๐Ÿ“‹ Next steps:" echo " - Test: docker run -p 3389:3389 $IMAGE_NAME:$VERSION" -echo " - Push: docker push $IMAGE_NAME:$VERSION" -echo " - Multi-platform: docker buildx build --platform linux/amd64,linux/arm64 -t $IMAGE_NAME:$VERSION --push ." \ No newline at end of file +echo " - Push both tags: docker push $IMAGE_NAME:latest && docker push $IMAGE_NAME:$VERSION" +echo " - Multi-platform: docker buildx build --platform linux/amd64,linux/arm64 -t $IMAGE_NAME:latest -t $IMAGE_NAME:$VERSION --push ." \ No newline at end of file