Commit graph

4 commits

Author SHA1 Message Date
Your Name
025ca2ce48 CD: uat.yml แก้ Run workflow จาก UI ไม่ได้บน Forgejo 11 — อาการ: กด Run workflow แล้วไม่มีช่องกรอก version แต่ backend ขวางด้วย "Require value for input" (Forgejo 11 base Gitea 1.22 = UI ยังไม่ render workflow_dispatch input fields, Gitea เพิ่มใน 1.23-1.24) — แก้ 2 ชั้น: (1) input เติม type: string ตาม GitHub spec เผื่อ renderer ต้องเจอ type ถึงวาดช่อง (2) required: false + step Resolve รองรับค่าว่าง: dispatch โดยไม่ใส่ version = deploy :latest (image ล่าสุดที่ build.yml push ตอน tag v* — คือเวอร์ชันที่เพิ่ง deploy Test ไป) ใส่ค่ามา (1.2.3/v1.2.3/deploy1.2.3) ก็ map เป็น v1.2.3 เหมือนเดิม + เขียน if/else แยก event แทน &&/|| เพราะ input ว่างจะ short-circuit ตกไปใช้ ref_name (ชื่อ branch) เกิดเป็น image vdev — verify: js-yaml ผ่าน + ทดสอบ resolve ครบ (deploy1.2.3/v1.2.3/1.2.3 → v1.2.3, ว่าง → latest)
Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-17 17:15:24 +07:00
Your Name
8ba911a119 CD: uat.yml ไม่ build image เอง reuse ของ build.yml + ขึ้น UAT ผ่าน Forgejo UI ได้ — ลบ job build ทั้ง job (เดิม build ซ้ำทุกครั้ง) แทนด้วย steps ใหม่ใน deploy job: Resolve image tag map deploy1.2.3/1.2.3/v1.2.3 → v1.2.3 เสมอ (ตัด prefix deploy ตัด v เติม v กลับ — ใช้ image เดียวกับที่ build.yml push ตอน tag v*) + login registry + docker manifest inspect เช็ค image มีจริงก่อน SSH (fail-fast พร้อมข้อความบอกให้ push tag v* ก่อน ถ้ายังไม่มี) + workflow_dispatch เพิ่ม input version (required) — กด Run workflow ใน UI ใส่เวอร์ชันได้เลยไม่ต้องสร้าง tag deploy* (ทางเดิมยังใช้ได้) — deploy job เปิด if ให้รันกรณ้ dispatch (always() && !failure() && !cancelled() — ผ่านเมื่อ validate-schema success หรือ skip แต่ยัง block ถ้า fail เหมือนเดิม) + notify ถอด needs.build ที่ลบไป + field Tag โชว์เวอร์ชันจาก input ตอน dispatch แทนชื่อ branch + field Image Tag ดึงจาก output ของ deploy job — กติกาคงเดิม: image เกิดจาก build.yml ตอน push tag v* (deploy Test ไปด้วย) เท่านั้น UAT แค่ reuse — verify: js-yaml parse ผ่าน + ทดสอบ normalize ครบ 3 รูปแบบ (deploy1.2.3/v1.2.3/1.2.3 → v1.2.3)
Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-17 16:56:38 +07:00
Your Name
34c3cf2a8f fix
All checks were successful
Deploy eCourt Note Web to UAT Server / Validate Database Schema (Drizzle) (push) Successful in 2s
Deploy eCourt Note Web to UAT Server / Build Web Docker Image (push) Successful in 41s
Deploy eCourt Note Web to UAT Server / Deploy eCourt Note Web to UAT Server (push) Successful in 3s
Deploy eCourt Note Web to UAT Server / Notify Deployment Status (push) Successful in 1s
2026-09-17 14:22:56 +07:00
Your Name
2f260e0f3b CD: เพิ่ม workflow uat.yml deploy เครื่อง UAT — mirror build.yml ทุกอย่าง เปลี่ยนตัวเดียว: DEPLOY_HOST อ่านจาก vars.SSH_UAT_DEPLOY_HOST ใหม่ (ตั้งเพิ่มใน Forgejo ก่อนใช้ ไม่งั้น deploy job SSH ไป string ว่าง) — trigger tag v*.*.* เดิม (push tag เดียว deploy Test + UAT พร้อมกัน), registry/image เดิม push :v* และ :latest ซ้ำกัน (commit เดียวกัน เนื้อหาเหมือน ไม่ชนกัน), SSH user/port/password ชุดเดิม, script ~/repo/replace-env.sh + deploy.sh เดิม (เครื่อง UAT ต้องมีไฟล์สองตัวนี้ + รับ credentials เดิม), Discord webhook/Web URL ตัวเดิม — เปลี่ยนเฉพาะข้อความ workflow/job/notification เป็น "UAT" ให้แยก notification สองเครื่องได้
Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-17 14:06:19 +07:00