2026-02-28T07:27:33.8284038Z asustor-runner(version:v0.2.13) received task 34 of job deploy, be triggered by event: push 2026-02-28T07:27:33.8290312Z workflow prepared 2026-02-28T07:27:33.8291142Z evaluating expression 'success()' 2026-02-28T07:27:33.8292709Z expression 'success()' evaluated to 'true' 2026-02-28T07:27:33.8293016Z 🚀 Start image=node:18-bullseye 2026-02-28T07:27:33.8393624Z 🐳 docker pull image=node:18-bullseye platform= username= forcePull=false 2026-02-28T07:27:33.8394088Z 🐳 docker pull node:18-bullseye 2026-02-28T07:27:33.8413967Z Image exists? true 2026-02-28T07:27:33.8472184Z Cleaning up network for job deploy, and network name is: GITEA-ACTIONS-TASK-34_WORKFLOW-Build-and-Deploy_JOB-deploy-deploy-network 2026-02-28T07:27:34.1183842Z 🐳 docker create image=node:18-bullseye platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="GITEA-ACTIONS-TASK-34_WORKFLOW-Build-and-Deploy_JOB-deploy-deploy-network" 2026-02-28T07:27:34.9356527Z Created container name=GITEA-ACTIONS-TASK-34_WORKFLOW-Build-and-Deploy_JOB-deploy id=544596ec99aae4e94958af73711d8d1a616d964139c03ef6421768e2572c3903 from image node:18-bullseye (platform: ) 2026-02-28T07:27:34.9357085Z ENV ==> [RUNNER_TOOL_CACHE=/opt/hostedtoolcache RUNNER_OS=Linux RUNNER_ARCH=X64 RUNNER_TEMP=/tmp LANG=C.UTF-8] 2026-02-28T07:27:34.9357348Z 🐳 docker run image=node:18-bullseye platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="GITEA-ACTIONS-TASK-34_WORKFLOW-Build-and-Deploy_JOB-deploy-deploy-network" 2026-02-28T07:27:34.9357678Z Starting container: 544596ec99aae4e94958af73711d8d1a616d964139c03ef6421768e2572c3903 2026-02-28T07:27:36.8110664Z Started container: 544596ec99aae4e94958af73711d8d1a616d964139c03ef6421768e2572c3903 2026-02-28T07:27:36.9607710Z Writing entry to tarball workflow/event.json len:5191 2026-02-28T07:27:36.9608376Z Writing entry to tarball workflow/envs.txt len:0 2026-02-28T07:27:36.9609770Z Extracting content to '/var/run/act/' 2026-02-28T07:27:36.9844245Z ☁ git clone 'https://github.com/appleboy/ssh-action' # ref=v1.0.3 2026-02-28T07:27:36.9844747Z cloning https://github.com/appleboy/ssh-action to /root/.cache/act/dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d 2026-02-28T07:27:37.7607259Z Cloned https://github.com/appleboy/ssh-action to /root/.cache/act/dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d 2026-02-28T07:27:37.7776323Z Checked out v1.0.3 2026-02-28T07:27:37.7982541Z expression '${{ secrets.HOST }}' rewritten to 'format('{0}', secrets.HOST)' 2026-02-28T07:27:37.7983262Z evaluating expression 'format('{0}', secrets.HOST)' 2026-02-28T07:27:37.7983765Z expression 'format('{0}', secrets.HOST)' evaluated to '%!t(string=***)' 2026-02-28T07:27:37.7984134Z expression '${{ secrets.USERNAME }}' rewritten to 'format('{0}', secrets.USERNAME)' 2026-02-28T07:27:37.7984350Z evaluating expression 'format('{0}', secrets.USERNAME)' 2026-02-28T07:27:37.7984676Z expression 'format('{0}', secrets.USERNAME)' evaluated to '%!t(string=***)' 2026-02-28T07:27:37.7984959Z expression '${{ secrets.PASSWORD }}' rewritten to 'format('{0}', secrets.PASSWORD)' 2026-02-28T07:27:37.7985170Z evaluating expression 'format('{0}', secrets.PASSWORD)' 2026-02-28T07:27:37.7985502Z expression 'format('{0}', secrets.PASSWORD)' evaluated to '%!t(string=***)' 2026-02-28T07:27:37.7985782Z expression '${{ secrets.PORT }}' rewritten to 'format('{0}', secrets.PORT)' 2026-02-28T07:27:37.7985965Z evaluating expression 'format('{0}', secrets.PORT)' 2026-02-28T07:27:37.7986302Z expression 'format('{0}', secrets.PORT)' evaluated to '%!t(string=***)' 2026-02-28T07:27:37.8086295Z evaluating expression '' 2026-02-28T07:27:37.8087143Z expression '' evaluated to 'true' 2026-02-28T07:27:37.8087379Z ⭐ Run Main Deploy to QNAP via SSH 2026-02-28T07:27:37.8087738Z Writing entry to tarball workflow/outputcmd.txt len:0 2026-02-28T07:27:37.8088065Z Writing entry to tarball workflow/statecmd.txt len:0 2026-02-28T07:27:37.8088307Z Writing entry to tarball workflow/pathcmd.txt len:0 2026-02-28T07:27:37.8088543Z Writing entry to tarball workflow/envs.txt len:0 2026-02-28T07:27:37.8088744Z Writing entry to tarball workflow/SUMMARY.md len:0 2026-02-28T07:27:37.8088993Z Extracting content to '/var/run/act' 2026-02-28T07:27:37.8220371Z type=remote-action actionDir=/root/.cache/act/dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d actionPath= workdir=/workspace/np-dms/lcbp3 actionCacheDir=/root/.cache/act actionName=dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d containerActionDir=/var/run/act/actions/dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d 2026-02-28T07:27:37.8256623Z image 'act-dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d-dockeraction:latest' for architecture '' already exists 2026-02-28T07:27:37.8447855Z expression '${{ secrets.PASSWORD }}' rewritten to 'format('{0}', secrets.PASSWORD)' 2026-02-28T07:27:37.8448365Z evaluating expression 'format('{0}', secrets.PASSWORD)' 2026-02-28T07:27:37.8448863Z expression 'format('{0}', secrets.PASSWORD)' evaluated to '%!t(string=***)' 2026-02-28T07:27:37.8449207Z expression '${{ secrets.PORT }}' rewritten to 'format('{0}', secrets.PORT)' 2026-02-28T07:27:37.8449398Z evaluating expression 'format('{0}', secrets.PORT)' 2026-02-28T07:27:37.8449716Z expression 'format('{0}', secrets.PORT)' evaluated to '%!t(string=***)' 2026-02-28T07:27:37.8450226Z expression '${{ secrets.USERNAME }}' rewritten to 'format('{0}', secrets.USERNAME)' 2026-02-28T07:27:37.8450419Z evaluating expression 'format('{0}', secrets.USERNAME)' 2026-02-28T07:27:37.8450743Z expression 'format('{0}', secrets.USERNAME)' evaluated to '%!t(string=***)' 2026-02-28T07:27:37.8451026Z expression '${{ secrets.HOST }}' rewritten to 'format('{0}', secrets.HOST)' 2026-02-28T07:27:37.8451223Z evaluating expression 'format('{0}', secrets.HOST)' 2026-02-28T07:27:37.8451569Z expression 'format('{0}', secrets.HOST)' evaluated to '%!t(string=***)' 2026-02-28T07:27:37.8750726Z 🐳 docker pull image=act-dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d-dockeraction:latest platform= username= forcePull=false 2026-02-28T07:27:37.8751340Z 🐳 docker pull act-dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d-dockeraction:latest 2026-02-28T07:27:37.8770951Z Image exists? true 2026-02-28T07:27:37.8813205Z 🐳 docker create image=act-dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d-dockeraction:latest platform= entrypoint=[] cmd=[] network="container:GITEA-ACTIONS-TASK-34_WORKFLOW-Build-and-Deploy_JOB-deploy" 2026-02-28T07:27:38.5948857Z Created container name=GITEA-ACTIONS-TASK-34-WORKFLOW-Build-and-Deploy-JOB-deploy_STEP-0 id=bfe459c3717df53d68c8dc1a47ecb1***fcb73eb398f254a35c970bc95293697c from image act-dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d-dockeraction:latest (platform: ) 2026-02-28T07:27:38.5950292Z ENV ==> [INPUT_PASSPHRASE= INPUT_PROXY_FINGERPRINT= proxy_key_path= proxy_username= ACTIONS_RUNTIME_TOKEN=*** CI=true GITHUB_ACTION=0 port=*** request_pty= ACT=true ACTIONS_CACHE_URL=http://172.19.0.2:33669/ GITHUB_RUN_NUMBER=88 GITHUB_API_URL=https://git.np-dms.work/api/v1 GITEA_ENV=/var/run/act/workflow/envs.txt use_insecure_cipher= proxy_cipher= envs_format= GITHUB_SHA=efd5183906c57e458a992057de20277f5adf868c GITHUB_GRAPHQL_URL= ImageOS=ubuntu20 INPUT_PROXY_PORT=*** INPUT_PROXY_USE_INSECURE_CIPHER= INPUT_DEBUG= INPUT_PROXY_KEY_PATH= debug= JOB_CONTAINER_NAME=GITEA-ACTIONS-TASK-34_WORKFLOW-Build-and-Deploy_JOB-deploy GITEA_ACTIONS_RUNNER_VERSION=v0.2.13 GITHUB_REPOSITORY=np-dms/lcbp3 GITHUB_RETENTION_DAYS= GITHUB_SERVER_URL=https://git.np-dms.work INPUT_PASSWORD=*** INPUT_PORT=*** GITEA_OUTPUT=/var/run/act/workflow/outputcmd.txt GITHUB_WORKFLOW=Build and Deploy GITHUB_EVENT_NAME=push GITHUB_EVENT_PATH=/var/run/act/workflow/event.json GITHUB_STATE=/var/run/act/workflow/statecmd.txt GITHUB_STEP_SUMMARY=/var/run/act/workflow/SUMMARY.md GITEA_STATE=/var/run/act/workflow/statecmd.txt INPUT_KEY= INPUT_PROXY_PASSPHRASE= GITHUB_JOB=deploy RUNNER_TRACKING_ID= GITHUB_ENV=/var/run/act/workflow/envs.txt GITEA_STEP_SUMMARY=/var/run/act/workflow/SUMMARY.md INPUT_TIMEOUT=30s INPUT_PROXY_HOST= passphrase= timeout=30s GITHUB_ACTION_PATH= INPUT_SCRIPT_STOP_SIGNAL=true INPUT_CIPHER= proxy_host= sync= script_stop= password=*** script_stop_signal=true ACTIONS_RESULTS_URL=https://git.np-dms.work GITHUB_BASE_REF= GITHUB_PATH=/var/run/act/workflow/pathcmd.txt INPUT_FINGERPRINT= INPUT_PROXY_PASSWORD= INPUT_PROXY_USERNAME= proxy_timeout=30s proxy_port=*** GITHUB_ACTION_REF=v1.0.3 GITHUB_ACTIONS=true GITHUB_ACTOR=*** GITHUB_HEAD_REF= INPUT_KEY_PATH= INPUT_REQUEST_PTY= proxy_passphrase= key_path= ACTIONS_RUNTIME_URL=https://git.np-dms.work/api/actions_pipeline/ GITHUB_WORKSPACE=/workspace/np-dms/lcbp3 GITHUB_OUTPUT=/var/run/act/workflow/outputcmd.txt INPUT_PROXY_TIMEOUT=30s INPUT_COMMAND_TIMEOUT=10m INPUT_SYNC= GITHUB_RUN_ID=88 fingerprint= proxy_key= proxy_password= command_timeout=10m key= GITEA_ACTIONS=true GITHUB_REF_TYPE=branch GITHUB_REPOSITORY_OWNER=np-dms INPUT_ENVS_FORMAT= cipher= proxy_use_insecure_cipher= INPUT_USE_INSECURE_CIPHER= GITHUB_REF=refs/heads/main RUNNER_PERFLOG=/dev/null INPUT_USERNAME=*** GITEA_PATH=/var/run/act/workflow/pathcmd.txt INPUT_SCRIPT_STOP= host=*** script=# ⚠️ QNAP SSH ไม่มี PATH เต็ม ต้อง export เอง\n# docker: /share/CACHEDEV1_DATA/.qpkg/container-station/bin/docker\n# git: /opt/bin/git\nexport PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH"\n\necho "🚀 Starting Deployment..."\n\n# 1. Update Code\necho "📂 Pulling latest code..."\ncd /share/np-dms/app/source/lcbp3\ngit pull origin main\n\n# 2. Build Backend\necho "🏗️ Building Backend..."\ndocker build -f backend/Dockerfile -t lcbp3-backend:latest .\n\n# 3. Build Frontend\necho "🏗️ Building Frontend..."\ndocker build -f frontend/Dockerfile \\n --build-arg NEXT_PUBLIC_API_URL=https://backend.np-dms.work/api \\n -t lcbp3-frontend:latest .\n\n# 4. Update Containers\necho "🔄 Updating Containers..."\n# Sync compose file จาก repo → app directory\ncp /share/np-dms/app/source/lcbp3/specs/04-Infrastructure-OPS/04-00-docker-compose/docker-compose-lcbp3.yml /share/np-dms/app/docker-compose-lcbp3.yml\ncd /share/np-dms/app\n# ⚠️ ลบ container เดิมที่อาจสร้างจาก Container Station\ndocker rm -f backend frontend 2>/dev/null || true\n\n# 4a. Start Backend ก่อน\necho "🟢 Starting Backend..."\ndocker compose -f docker-compose-lcbp3.yml up -d backend\n\n# 4b. รอ Backend healthy (ทุก 5 วิ สูงสุด 60 วิ)\necho "⏳ Waiting for Backend health check..."\nfor i in $(seq 1 12); do\n if docker inspect --format='{{.State.Health.Status}}' backend 2>/dev/null | grep -q healthy; then\n echo "✅ Backend is healthy!"\n break\n fi\n if [ "$i" = "12" ]; then\n echo "⚠️ Backend health check timeout - starting frontend anyway"\n fi\n sleep 5\ndone\n\n# 4c. Start Frontend\necho "🟢 Starting Frontend..."\ndocker compose -f docker-compose-lcbp3.yml up -d frontend\n\n# 5. Cleanup\necho "🧹 Cleaning up unused images..."\ndocker image prune -f\n\necho "✅ Deployment Complete!"\n GITHUB_REF_NAME=main INPUT_SCRIPT=# ⚠️ QNAP SSH ไม่มี PATH เต็ม ต้อง export เอง\n# docker: /share/CACHEDEV1_DATA/.qpkg/container-station/bin/docker\n# git: /opt/bin/git\nexport PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH"\n\necho "🚀 Starting Deployment..."\n\n# 1. Update Code\necho "📂 Pulling latest code..."\ncd /share/np-dms/app/source/lcbp3\ngit pull origin main\n\n# 2. Build Backend\necho "🏗️ Building Backend..."\ndocker build -f backend/Dockerfile -t lcbp3-backend:latest .\n\n# 3. Build Frontend\necho "🏗️ Building Frontend..."\ndocker build -f frontend/Dockerfile \\n --build-arg NEXT_PUBLIC_API_URL=https://backend.np-dms.work/api \\n -t lcbp3-frontend:latest .\n\n# 4. Update Containers\necho "🔄 Updating Containers..."\n# Sync compose file จาก repo → app directory\ncp /share/np-dms/app/source/lcbp3/specs/04-Infrastructure-OPS/04-00-docker-compose/docker-compose-lcbp3.yml /share/np-dms/app/docker-compose-lcbp3.yml\ncd /share/np-dms/app\n# ⚠️ ลบ container เดิมที่อาจสร้างจาก Container Station\ndocker rm -f backend frontend 2>/dev/null || true\n\n# 4a. Start Backend ก่อน\necho "🟢 Starting Backend..."\ndocker compose -f docker-compose-lcbp3.yml up -d backend\n\n# 4b. รอ Backend healthy (ทุก 5 วิ สูงสุด 60 วิ)\necho "⏳ Waiting for Backend health check..."\nfor i in $(seq 1 12); do\n if docker inspect --format='{{.State.Health.Status}}' backend 2>/dev/null | grep -q healthy; then\n echo "✅ Backend is healthy!"\n break\n fi\n if [ "$i" = "12" ]; then\n echo "⚠️ Backend health check timeout - starting frontend anyway"\n fi\n sleep 5\ndone\n\n# 4c. Start Frontend\necho "🟢 Starting Frontend..."\ndocker compose -f docker-compose-lcbp3.yml up -d frontend\n\n# 5. Cleanup\necho "🧹 Cleaning up unused images..."\ndocker image prune -f\n\necho "✅ Deployment Complete!"\n INPUT_ENVS= username=*** GITHUB_ACTION_REPOSITORY=appleboy/ssh-action INPUT_PROXY_KEY= INPUT_PROXY_CIPHER= INPUT_ALLENVS= envs= proxy_fingerprint= allenvs= INPUT_HOST=*** RUNNER_TOOL_CACHE=/opt/hostedtoolcache RUNNER_OS=Linux RUNNER_ARCH=X64 RUNNER_TEMP=/tmp] 2026-02-28T07:27:38.5955085Z 🐳 docker run image=act-dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d-dockeraction:latest platform= entrypoint=[] cmd=[] network="container:GITEA-ACTIONS-TASK-34_WORKFLOW-Build-and-Deploy_JOB-deploy" 2026-02-28T07:27:38.5970807Z Starting container: bfe459c3717df53d68c8dc1a47ecb1***fcb73eb398f254a35c970bc95293697c 2026-02-28T07:27:39.1457321Z ======CMD====== 2026-02-28T07:27:39.1458218Z # ⚠️ QNAP SSH ไม่มี PATH เต็ม ต้อง export เอง 2026-02-28T07:27:39.1458606Z # docker: /share/CACHEDEV1_DATA/.qpkg/container-station/bin/docker 2026-02-28T07:27:39.1458851Z # git: /opt/bin/git 2026-02-28T07:27:39.1459054Z export PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH" 2026-02-28T07:27:39.1459292Z 2026-02-28T07:27:39.1459482Z echo "🚀 Starting Deployment..." 2026-02-28T07:27:39.1459707Z 2026-02-28T07:27:39.1460080Z # 1. Update Code 2026-02-28T07:27:39.1460283Z echo "📂 Pulling latest code..." 2026-02-28T07:27:39.1460478Z cd /share/np-dms/app/source/lcbp3 2026-02-28T07:27:39.1460674Z git pull origin main 2026-02-28T07:27:39.1460884Z 2026-02-28T07:27:39.1461074Z # 2. Build Backend 2026-02-28T07:27:39.1461270Z echo "🏗️ Building Backend..." 2026-02-28T07:27:39.1461498Z docker build -f backend/Dockerfile -t lcbp3-backend:latest . 2026-02-28T07:27:39.1461724Z 2026-02-28T07:27:39.1461906Z # 3. Build Frontend 2026-02-28T07:27:39.1462100Z echo "🏗️ Building Frontend..." 2026-02-28T07:27:39.1462293Z docker build -f frontend/Dockerfile \ 2026-02-28T07:27:39.1462520Z --build-arg NEXT_PUBLIC_API_URL=https://backend.np-dms.work/api \ 2026-02-28T07:27:39.1462775Z -t lcbp3-frontend:latest . 2026-02-28T07:27:39.1462968Z 2026-02-28T07:27:39.1463143Z # 4. Update Containers 2026-02-28T07:27:39.1463330Z echo "🔄 Updating Containers..." 2026-02-28T07:27:39.1463529Z # Sync compose file จาก repo → app directory 2026-02-28T07:27:39.1463778Z cp /share/np-dms/app/source/lcbp3/specs/04-Infrastructure-OPS/04-00-docker-compose/docker-compose-lcbp3.yml /share/np-dms/app/docker-compose-lcbp3.yml 2026-02-28T07:27:39.1464028Z cd /share/np-dms/app 2026-02-28T07:27:39.1464219Z # ⚠️ ลบ container เดิมที่อาจสร้างจาก Container Station 2026-02-28T07:27:39.1464529Z docker rm -f backend frontend 2>/dev/null || true 2026-02-28T07:27:39.1464762Z 2026-02-28T07:27:39.1464943Z # 4a. Start Backend ก่อน 2026-02-28T07:27:39.1465142Z echo "🟢 Starting Backend..." 2026-02-28T07:27:39.1465335Z docker compose -f docker-compose-lcbp3.yml up -d backend 2026-02-28T07:27:39.1465527Z 2026-02-28T07:27:39.1465714Z # 4b. รอ Backend healthy (ทุก 5 วิ สูงสุด 60 วิ) 2026-02-28T07:27:39.1465932Z echo "⏳ Waiting for Backend health check..." 2026-02-28T07:27:39.1466134Z for i in $(seq 1 12); do 2026-02-28T07:27:39.1466330Z if docker inspect --format='{{.State.Health.Status}}' backend 2>/dev/null | grep -q healthy; then 2026-02-28T07:27:39.1466561Z echo "✅ Backend is healthy!" 2026-02-28T07:27:39.1466771Z break 2026-02-28T07:27:39.1466944Z fi 2026-02-28T07:27:39.1467123Z if [ "$i" = "12" ]; then 2026-02-28T07:27:39.1467311Z echo "⚠️ Backend health check timeout - starting frontend anyway" 2026-02-28T07:27:39.1467558Z fi 2026-02-28T07:27:39.1467753Z sleep 5 2026-02-28T07:27:39.1467943Z done 2026-02-28T07:27:39.1468119Z 2026-02-28T07:27:39.1468287Z # 4c. Start Frontend 2026-02-28T07:27:39.1468484Z echo "🟢 Starting Frontend..." 2026-02-28T07:27:39.1468676Z docker compose -f docker-compose-lcbp3.yml up -d frontend 2026-02-28T07:27:39.1468892Z 2026-02-28T07:27:39.1469072Z # 5. Cleanup 2026-02-28T07:27:39.1469258Z echo "🧹 Cleaning up unused images..." 2026-02-28T07:27:39.1469471Z docker image prune -f 2026-02-28T07:27:39.1469664Z 2026-02-28T07:27:39.1469915Z echo "✅ Deployment Complete!" 2026-02-28T07:27:39.1470124Z 2026-02-28T07:27:39.1470338Z ======END====== 2026-02-28T07:27:39.3554832Z out: 🚀 Starting Deployment... 2026-02-28T07:27:39.3555491Z out: 📂 Pulling latest code... 2026-02-28T07:27:39.4639401Z err: From https://git.np-dms.work/np-dms/lcbp3 2026-02-28T07:27:39.4640163Z err: * branch main -> FETCH_HEAD 2026-02-28T07:27:39.4640735Z err: 276d06e..efd5183 main -> origin/main 2026-02-28T07:27:39.4864128Z out: Updating 276d06e..efd5183 2026-02-28T07:27:39.4864771Z out: Fast-forward 2026-02-28T07:27:39.4927658Z out: .../workflow-engine/workflow-engine.controller.ts | 20 +++++++++++++--- 2026-02-28T07:27:39.4928367Z out: .../workflow-engine/workflow-engine.service.ts | 27 ++++++++++++++++++++++ 2026-02-28T07:27:39.4928592Z out: .../***/doc-control/workflows/[id]/edit/page.tsx | 4 ++-- 2026-02-28T07:27:39.4928901Z out: .../(***)/***/doc-control/workflows/page.tsx | 26 +++------------------ 2026-02-28T07:27:39.4929130Z out: frontend/lib/services/workflow-engine.service.ts | 27 ++++++++++++++++++---- 2026-02-28T07:27:39.4929339Z out: frontend/types/workflow.ts | 2 +- 2026-02-28T07:27:39.4929546Z out: 6 files changed, 73 insertions(+), 33 deletions(-) 2026-02-28T07:27:39.4929883Z out: 🏗️ Building Backend... 2026-02-28T07:27:40.1781150Z err: #0 building with "default" instance using docker driver 2026-02-28T07:27:40.1781840Z err: #1 [internal] load build definition from Dockerfile 2026-02-28T07:27:40.1782077Z err: #1 transferring dockerfile: 2.62kB done 2026-02-28T07:27:40.1782287Z err: #1 DONE 0.2s 2026-02-28T07:27:40.4027343Z err: #2 [internal] load metadata for docker.io/library/node:***-alpine 2026-02-28T07:27:42.0564337Z err: #2 DONE 1.8s 2026-02-28T07:27:42.1950563Z err: #3 [internal] load .dockerignore 2026-02-28T07:27:42.1951198Z err: #3 transferring context: 1.09kB done 2026-02-28T07:27:42.1951413Z err: #3 DONE 0.1s 2026-02-28T07:27:42.2989459Z err: #4 [deps 1/6] FROM docker.io/library/node:***-alpine@sha256:e4bf2a82ad0a4037d28035ae71529873c069b13eb0455466ae0bc13363826e34 2026-02-28T07:27:42.2990488Z err: #4 DONE 0.0s 2026-02-28T07:27:42.2990702Z err: #5 [internal] load build context 2026-02-28T07:27:42.6155504Z err: #5 transferring context: 1.72MB 0.2s done 2026-02-28T07:27:42.6156253Z err: #5 DONE 0.3s 2026-02-28T07:27:42.8014374Z err: #6 [deps 3/6] WORKDIR /app 2026-02-28T07:27:42.8015084Z err: #6 CACHED 2026-02-28T07:27:42.8015376Z err: #7 [deps 4/6] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./ 2026-02-28T07:27:42.8015632Z err: #7 CACHED 2026-02-28T07:27:42.8015842Z err: #8 [deps 5/6] COPY backend/package.json ./backend/ 2026-02-28T07:27:42.8016082Z err: #8 CACHED 2026-02-28T07:27:42.8016269Z err: #9 [deps 6/6] RUN pnpm install --frozen-lockfile --filter backend... 2026-02-28T07:27:42.8016503Z err: #9 CACHED 2026-02-28T07:27:42.8016741Z err: #10 [build 5/9] COPY --from=deps /app/node_modules ./node_modules 2026-02-28T07:27:42.8016957Z err: #10 CACHED 2026-02-28T07:27:42.8017170Z err: #11 [deps 2/6] RUN corepack enable && corepack prepare pnpm@latest --activate 2026-02-28T07:27:42.8017383Z err: #11 CACHED 2026-02-28T07:27:42.8017587Z err: #12 [build 6/9] COPY --from=deps /app/backend/node_modules ./backend/node_modules 2026-02-28T07:27:42.8017818Z err: #12 CACHED 2026-02-28T07:27:42.8018027Z err: #13 [build 7/9] COPY backend/ ./backend/ 2026-02-28T07:27:45.2403106Z err: #13 DONE 2.6s 2026-02-28T07:27:45.4303679Z err: #14 [build 8/9] RUN cd backend && pnpm run build 2026-02-28T07:27:47.7906423Z err: #14 2.511 2026-02-28T07:27:47.7907160Z err: #14 2.511 > backend@1.5.1 build /app/backend 2026-02-28T07:27:47.7907389Z err: #14 2.511 > nest build 2026-02-28T07:27:47.7907696Z err: #14 2.511 2026-02-28T07:28:06.5057828Z err: #14 DONE 21.2s 2026-02-28T07:28:06.7371262Z err: #15 [build 9/9] RUN pnpm --filter backend deploy --prod --shamefully-hoist /app/backend-prod 2026-02-28T07:28:09.0274821Z err: #15 2.441 backend |  WARN  The field "pnpm.overrides" was found in /app/backend/package.json. This will not take effect. You should configure "pnpm.overrides" at the root of the workspace instead. 2026-02-28T07:28:09.6361957Z err: #15 3.050  ERR_PNPM_DEPLOY_NONINJECTED_WORKSPACE  By default, starting from pnpm v10, we only deploy from workspaces that have "inject-workspace-packages=true" set 2026-02-28T07:28:09.6362724Z err: #15 3.050 2026-02-28T07:28:09.6362953Z err: #15 3.050 If you want to deploy without using injected dependencies, run "pnpm deploy" with the "--legacy" flag or set "force-legacy-deploy" to true 2026-02-28T07:28:10.9504791Z err: #15 ERROR: process "/bin/sh -c pnpm --filter backend deploy --prod --shamefully-hoist /app/backend-prod" did not complete successfully: exit code: 1 2026-02-28T07:28:11.9348739Z err: ------ 2026-02-28T07:28:11.9349500Z err: > [build 9/9] RUN pnpm --filter backend deploy --prod --shamefully-hoist /app/backend-prod: 2026-02-28T07:28:11.9349911Z err: 2.441 backend |  WARN  The field "pnpm.overrides" was found in /app/backend/package.json. This will not take effect. You should configure "pnpm.overrides" at the root of the workspace instead. 2026-02-28T07:28:11.9350307Z err: 3.050  ERR_PNPM_DEPLOY_NONINJECTED_WORKSPACE  By default, starting from pnpm v10, we only deploy from workspaces that have "inject-workspace-packages=true" set 2026-02-28T07:28:11.9350574Z err: 3.050 2026-02-28T07:28:11.9350782Z err: 3.050 If you want to deploy without using injected dependencies, run "pnpm deploy" with the "--legacy" flag or set "force-legacy-deploy" to true 2026-02-28T07:28:11.9351022Z err: ------ 2026-02-28T07:28:11.9356927Z err: Dockerfile:47 2026-02-28T07:28:11.9357202Z err: -------------------- 2026-02-28T07:28:11.9357445Z err: 45 | 2026-02-28T07:28:11.9357699Z err: 46 | # Deploy with production deps only (pnpm workspace isolation) 2026-02-28T07:28:11.9358814Z err: 47 | >>> RUN pnpm --filter backend deploy --prod --shamefully-hoist /app/backend-prod 2026-02-28T07:28:11.9359164Z err: 48 | 2026-02-28T07:28:11.9359378Z err: 49 | # ========================= 2026-02-28T07:28:11.9359601Z err: -------------------- 2026-02-28T07:28:11.9359968Z err: ERROR: failed to solve: process "/bin/sh -c pnpm --filter backend deploy --prod --shamefully-hoist /app/backend-prod" did not complete successfully: exit code: 1 2026-02-28T07:28:11.9413723Z out: 🏗️ Building Frontend... 2026-02-28T07:28:12.4469275Z err: #0 building with "default" instance using docker driver 2026-02-28T07:28:12.4470254Z err: #1 [internal] load build definition from Dockerfile 2026-02-28T07:28:12.7247587Z err: #1 transferring dockerfile: 2026-02-28T07:28:12.8922804Z err: #1 transferring dockerfile: 2.51kB done 2026-02-28T07:28:12.8923535Z err: #1 DONE 0.5s 2026-02-28T07:28:12.8923796Z err: #2 [internal] load metadata for docker.io/library/node:***-alpine 2026-02-28T07:28:13.4263707Z err: #2 DONE 0.5s 2026-02-28T07:28:13.6013261Z err: #3 [internal] load .dockerignore 2026-02-28T07:28:13.6013997Z err: #3 transferring context: 1.09kB done 2026-02-28T07:28:13.6244816Z err: #3 DONE 0.2s 2026-02-28T07:28:13.8002318Z err: #4 [deps 1/6] FROM docker.io/library/node:***-alpine@sha256:e4bf2a82ad0a4037d28035ae71529873c069b13eb0455466ae0bc13363826e34 2026-02-28T07:28:13.8003165Z err: #4 DONE 0.0s 2026-02-28T07:28:13.8003407Z err: #5 [internal] load build context 2026-02-28T07:28:13.9564006Z err: #5 transferring context: 1.03MB 0.2s done 2026-02-28T07:28:13.9564689Z err: #5 DONE 0.3s 2026-02-28T07:28:14.1235070Z err: #6 [build 5/8] COPY --from=deps /app/node_modules ./node_modules 2026-02-28T07:28:14.1235723Z err: #6 CACHED 2026-02-28T07:28:14.1236016Z err: #7 [deps 2/6] RUN corepack enable && corepack prepare pnpm@latest --activate 2026-02-28T07:28:14.1236331Z err: #7 CACHED 2026-02-28T07:28:14.1236545Z err: #8 [deps 3/6] WORKDIR /app 2026-02-28T07:28:14.1236813Z err: #8 CACHED 2026-02-28T07:28:14.1237009Z err: #9 [deps 4/6] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./ 2026-02-28T07:28:14.1237217Z err: #9 CACHED 2026-02-28T07:28:14.1237420Z err: #10 [deps 5/6] COPY frontend/package.json ./frontend/ 2026-02-28T07:28:14.1237665Z err: #10 CACHED 2026-02-28T07:28:14.1237857Z err: #11 [deps 6/6] RUN pnpm install --frozen-lockfile --filter lcbp3-frontend... 2026-02-28T07:28:14.1238082Z err: #11 CACHED 2026-02-28T07:28:14.1238299Z err: #12 [build 6/8] COPY --from=deps /app/frontend/node_modules ./frontend/node_modules 2026-02-28T07:28:14.1238576Z err: #12 CACHED 2026-02-28T07:28:14.2739757Z err: #13 [build 7/8] COPY frontend/ ./frontend/ 2026-02-28T07:28:16.4757439Z err: #13 DONE 2.4s 2026-02-28T07:28:16.6137644Z err: #14 [build 8/8] RUN cd frontend && pnpm run build 2026-02-28T07:28:19.2945562Z err: #14 2.681 2026-02-28T07:28:19.2946185Z err: #14 2.681 > lcbp3-frontend@1.5.1 build /app/frontend 2026-02-28T07:28:19.2946424Z err: #14 2.681 > next build 2026-02-28T07:28:19.2946675Z err: #14 2.681 2026-02-28T07:28:19.9426429Z err: #14 3.329 [baseline-browser-mapping] The data in this module is over two months old. To ensure accurate Baseline data, please update: `npm i baseline-browser-mapping@latest -D` 2026-02-28T07:28:21.5126060Z err: #14 4.899 Attention: Next.js now collects completely anonymous telemetry regarding usage. 2026-02-28T07:28:21.6594269Z err: #14 4.899 This information is used to shape Next.js' roadmap and prioritize features. 2026-02-28T07:28:21.6595066Z err: #14 4.899 You can learn more, including how to opt-out if you'd not like to participate in this anonymous program, by visiting the following URL: 2026-02-28T07:28:21.6595338Z err: #14 4.899 https://nextjs.org/telemetry 2026-02-28T07:28:21.6595542Z err: #14 4.899 2026-02-28T07:28:21.6595769Z err: #14 4.944 ▲ Next.js 16.0.7 (Turbopack) 2026-02-28T07:28:21.6595995Z err: #14 4.944 2026-02-28T07:28:21.6596202Z err: #14 5.046 ⚠ The "middleware" file convention is deprecated. Please use "proxy" instead. Learn more: https://nextjs.org/docs/messages/middleware-to-proxy 2026-02-28T07:28:21.8821937Z err: #14 5.118 Creating an optimized production build ... 2026-02-28T07:28:22.0693831Z err: #14 5.455 [baseline-browser-mapping] The data in this module is over two months old. To ensure accurate Baseline data, please update: `npm i baseline-browser-mapping@latest -D` 2026-02-28T07:29:16.4593694Z err: #14 59.84 ✓ Compiled successfully in 54s 2026-02-28T07:29:16.6830456Z err: #14 59.92 Running TypeScript ... 2026-02-28T07:29:34.4007095Z err: #14 77.79 Failed to compile. 2026-02-28T07:29:34.4007780Z err: #14 77.79 2026-02-28T07:29:34.5600774Z err: #14 77.79 ./app/(***)/***/doc-control/drawings/contract/categories/page.tsx:110:77 2026-02-28T07:29:34.5601591Z err: #14 77.79 Type error: Argument of type '{ projectId: number; }' is not assignable to parameter of type 'CreateContractCategoryDto'. 2026-02-28T07:29:34.5601895Z err: #14 77.79 Type '{ projectId: number; }' is missing the following properties from type 'CreateContractCategoryDto': catCode, catName, sortOrder 2026-02-28T07:29:34.5602234Z err: #14 77.79 2026-02-28T07:29:34.5602475Z err: #14 77.79   108 | return data; 2026-02-28T07:29:34.5602788Z err: #14 77.79  109 | }} 2026-02-28T07:29:34.5603055Z err: #14 77.79 >[***m 110 | createFn={(data) => drawingMasterDataService.createContractCategory({ ...data, projectId: selectedProjectId })} 2026-02-28T07:29:34.5603366Z err: #14 77.79  | ^[***m 2026-02-28T07:29:34.5603594Z err: #14 77.79  111 | updateFn={(id, data) => drawingMasterDataService.updateContractCategory(id, data)} 2026-02-28T07:29:34.5603862Z err: #14 77.79  112 | deleteFn={(id) => drawingMasterDataService.deleteContractCategory(id)} 2026-02-28T07:29:34.5604155Z err: #14 77.79  113 | columns={columns} 2026-02-28T07:29:34.5604362Z err: #14 77.88 Next.js build worker exited with code: 1 and signal: null 2026-02-28T07:29:34.5604585Z err: #14 77.95  ELIFECYCLE  Command failed with exit code 1. 2026-02-28T07:29:35.5179288Z err: #14 ERROR: process "/bin/sh -c cd frontend && pnpm run build" did not complete successfully: exit code: 1 2026-02-28T07:29:36.4573775Z err: ------ 2026-02-28T07:29:36.4574422Z err: > [build 8/8] RUN cd frontend && pnpm run build: 2026-02-28T07:29:36.4574721Z err: 77.79 2026-02-28T07:29:36.4575023Z err: 77.79   108 | return data; 2026-02-28T07:29:36.4575278Z err: 77.79  109 | }} 2026-02-28T07:29:36.4575581Z err: 77.79 >[***m 110 | createFn={(data) => drawingMasterDataService.createContractCategory({ ...data, projectId: selectedProjectId })} 2026-02-28T07:29:36.4575926Z err: 77.79  | ^[***m 2026-02-28T07:29:36.4576165Z err: 77.79  111 | updateFn={(id, data) => drawingMasterDataService.updateContractCategory(id, data)} 2026-02-28T07:29:36.4576483Z err: 77.79  112 | deleteFn={(id) => drawingMasterDataService.deleteContractCategory(id)} 2026-02-28T07:29:36.4576748Z err: 77.79  113 | columns={columns} 2026-02-28T07:29:36.4576959Z err: 77.88 Next.js build worker exited with code: 1 and signal: null 2026-02-28T07:29:36.4577200Z err: 77.95  ELIFECYCLE  Command failed with exit code 1. 2026-02-28T07:29:36.4577418Z err: ------ 2026-02-28T07:29:36.4581504Z err: Dockerfile:48 2026-02-28T07:29:36.4581827Z err: -------------------- 2026-02-28T07:29:36.4582039Z err: 46 | 2026-02-28T07:29:36.4582234Z err: 47 | # Build Next.js → frontend/.next/standalone 2026-02-28T07:29:36.4582627Z err: 48 | >>> RUN cd frontend && pnpm run build 2026-02-28T07:29:36.4582896Z err: 49 | 2026-02-28T07:29:36.4583083Z err: 50 | # ========================= 2026-02-28T07:29:36.4583348Z err: -------------------- 2026-02-28T07:29:36.4583579Z err: ERROR: failed to solve: process "/bin/sh -c cd frontend && pnpm run build" did not complete successfully: exit code: 1 2026-02-28T07:29:36.4634772Z out: 🔄 Updating Containers... 2026-02-28T07:29:38.8649465Z out: backend 2026-02-28T07:29:38.8650874Z out: frontend 2026-02-28T07:29:38.8666294Z out: 🟢 Starting Backend... 2026-02-28T07:29:39.0574121Z err: Container backend Creating 2026-02-28T07:29:41.4997878Z err: Container backend Created 2026-02-28T07:29:41.5033631Z err: Container backend Starting 2026-02-28T07:29:43.2328464Z err: Container backend Started 2026-02-28T07:29:43.2377840Z out: ⏳ Waiting for Backend health check... 2026-02-28T07:30:03.4092414Z out: ✅ Backend is healthy! 2026-02-28T07:30:03.4093136Z out: 🟢 Starting Frontend... 2026-02-28T07:30:03.5226638Z err: Container backend Running 2026-02-28T07:30:03.5227283Z err: Container frontend Creating 2026-02-28T07:30:04.6052042Z err: Container frontend Created 2026-02-28T07:30:04.6098124Z err: Container backend Waiting 2026-02-28T07:30:05.1115539Z err: Container backend Healthy 2026-02-28T07:30:05.1116560Z err: Container frontend Starting 2026-02-28T07:30:06.7160562Z err: Container frontend Started 2026-02-28T07:30:06.7319282Z out: 🧹 Cleaning up unused images... 2026-02-28T07:30:06.7671669Z out: Total reclaimed space: 0B 2026-02-28T07:30:06.7692720Z out: ✅ Deployment Complete! 2026-02-28T07:30:06.7695856Z ============================================== 2026-02-28T07:30:06.7696146Z ✅ Successfully executed commands to all host. 2026-02-28T07:30:06.7696528Z ============================================== 2026-02-28T07:30:07.5982536Z failed to remove container: Error response from daemon: removal of container bfe459c3717df53d68c8dc1a47ecb1***fcb73eb398f254a35c970bc95293697c is already in progress 2026-02-28T07:30:07.6088377Z Cleaning up container for job deploy 2026-02-28T07:30:08.8347987Z Removed container: 544596ec99aae4e94958af73711d8d1a616d964139c03ef6421768e2572c3903 2026-02-28T07:30:08.8360338Z 🐳 docker volume rm GITEA-ACTIONS-TASK-34_WORKFLOW-Build-and-Deploy_JOB-deploy 2026-02-28T07:30:08.9811898Z 🐳 docker volume rm GITEA-ACTIONS-TASK-34_WORKFLOW-Build-and-Deploy_JOB-deploy-env 2026-02-28T07:30:09.0965636Z Cleaning up network for job deploy, and network name is: GITEA-ACTIONS-TASK-34_WORKFLOW-Build-and-Deploy_JOB-deploy-deploy-network 2026-02-28T07:30:09.5133115Z 🏁 Job succeeded