0Pricing
DevOps Bootcamp · บทเรียน

บทนำสู่ GitHub Actions

ทำความเข้าใจแนวคิดหลักของ GitHub Actions รวมถึงเวิร์กโฟลว์ เหตุการณ์ งาน และขั้นตอน

บทนำสู่ GitHub Actions เป็นบทเรียน DevOps Bootcamp ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน DevOps Bootcamp และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส DevOps Bootcamp มีบทเรียนทั้งหมด 4 บทเรียน

บทนำสู่ GitHub Actions

ยินดีต้อนรับสู่ GitHub Actions! ฟีเจอร์อันทรงพลังบน GitHub นี้ช่วยให้คุณทำงานต่าง ๆ ในคลังโค้ดของคุณโดยอัตโนมัติได้

ลองนึกภาพว่าเป็นผู้ช่วยหุ่นยนต์ส่วนตัวสำหรับโค้ดของคุณ ซึ่งสามารถสร้างโครงการ เรียกใช้การทดสอบ หรือแม้แต่เผยแพร่เว็บไซต์ของคุณโดยอัตโนมัติทุกครั้งที่คุณแก้ไขโค้ด

ในบทเรียนนี้ เราจะสำรวจแนวคิดหลัก ได้แก่ เวิร์กโฟลว์ เหตุการณ์ งาน และ ขั้นตอน

เวิร์กโฟลว์: แบบแปลนระบบอัตโนมัติของคุณ

หัวใจสำคัญของ GitHub Actions คือ เวิร์กโฟลว์ เวิร์กโฟลว์คือกระบวนการอัตโนมัติที่เรียกใช้งานหนึ่งงานขึ้นไป

  • เวิร์กโฟลว์จะกำหนดไว้ในไฟล์ YAML
  • ไฟล์เหล่านี้อยู่ในไดเรกทอรี .github/workflows ของคลังโค้ดของคุณ
  • ไฟล์เวิร์กโฟลว์แต่ละไฟล์จะแทนกระบวนการทำงานอัตโนมัติแยกจากกัน

เมื่อเกิดเหตุการณ์บางอย่าง เช่น การส่งโค้ดขึ้นคลัง เวิร์กโฟลว์ของคุณก็จะเริ่มทำงาน

โครงสร้างของไฟล์เวิร์กโฟลว์

เวิร์กโฟลว์ของ GitHub Actions เขียนด้วย YAML ซึ่งเป็นมาตรฐานการจัดลำดับข้อมูลที่มนุษย์อ่านได้ง่าย ต่อไปนี้คือตัวอย่างโครงสร้างพื้นฐาน

name: My First Workflow

on: [push]

jobs:
  my_first_job:
    runs-on: ubuntu-latest
    steps:
      - name: Greet Me
        run: echo "Hello CoddyKit!"

เหตุการณ์: ตัวกระตุ้นระบบอัตโนมัติ

เหตุการณ์ คือกิจกรรมเฉพาะที่กระตุ้นให้เวิร์กโฟลว์ทำงาน เหตุการณ์จะบอก GitHub Actions ว่า เมื่อใด ควรเริ่มกระบวนการทำงานอัตโนมัติ

เหตุการณ์ที่พบบ่อย ได้แก่

  • push: เมื่อมีการส่งโค้ดขึ้นคลัง
  • pull_request: เมื่อมีการสร้าง อัปเดต หรือปิดคำขอรวมโค้ด
  • schedule: ใช้เรียกใช้ตามเวลาที่กำหนด เช่น งาน cron

คุณสามารถระบุเหตุการณ์หนึ่งรายการขึ้นไปในไฟล์เวิร์กโฟลว์โดยใช้คีย์เวิร์ด on:

name: On Push Example

on: [push, pull_request] # This workflow runs on push or pull request events

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v3
      - name: Run a simple command
        run: echo "Code was pushed or PR updated!"

งาน: การจัดระเบียบงานย่อย

งาน คือชุดของ ขั้นตอน ที่ทำงานบนตัวเรียกใช้เดียวกัน เวิร์กโฟลว์ประกอบด้วยงานหนึ่งงานขึ้นไป ซึ่งอาจทำงานพร้อมกันหรือทำงานตามลำดับ

  • งานแต่ละงานจะทำงานในสภาพแวดล้อมเสมือนอินสแตนซ์ใหม่ที่ระบุด้วย runs-on
  • ค่าของ runs-on ที่พบบ่อย ได้แก่ ubuntu-latest windows-latest และ macos-latest

งานจะกำหนดสิ่งที่ต้องทำ เช่น การสร้างแอปพลิเคชันหรือการเรียกใช้การทดสอบ

ขั้นตอน: คำสั่งแต่ละรายการ

ภายในงานหนึ่งงาน ขั้นตอน คือการทำงานแต่ละรายการที่ถูกเรียกใช้ ขั้นตอนหนึ่งอาจเป็น

  • สคริปต์บรรทัดคำสั่ง (โดยใช้ run)
  • แอ็กชัน (โดยใช้ uses) ซึ่งเป็นโค้ดที่นำกลับมาใช้ซ้ำได้

ขั้นตอนจะทำงานตามลำดับที่กำหนดไว้ หากขั้นตอนหนึ่งล้มเหลว โดยค่าเริ่มต้น งานนั้นจะล้มเหลวและข้ามขั้นตอนถัดไป

name: Steps Demo

on: [push]

jobs:
  my_job:
    runs-on: ubuntu-latest
    steps:
      - name: Step 1: Say Hello
        run: echo "Hello from Step 1!"
      - name: Step 2: List files
        run: ls -la
      - name: Step 3: Echo another message
        run: echo "Step 3 completed."

แอ็กชัน: บล็อกโค้ดที่นำกลับมาใช้ซ้ำได้

แอ็กชัน คือหน่วยย่อยที่สุดของระบบอัตโนมัติ เป็นโค้ดที่นำกลับมาใช้ซ้ำได้และทำงานเฉพาะอย่าง

แทนที่จะเขียนสคริปต์ที่ซับซ้อนสำหรับงานทั่วไป คุณสามารถใช้แอ็กชันที่มีอยู่ใน GitHub Marketplace หรือสร้างแอ็กชันของคุณเอง

  • ใช้คีย์เวิร์ด uses: เพื่ออ้างอิงแอ็กชัน
  • แอ็กชันอาจมาจาก GitHub เช่น actions/checkout จากอิมเมจ Docker หรือจากไฟล์ JavaScript

วิธีนี้ช่วยประหยัดเวลาและส่งเสริมความสม่ำเสมอ

name: Using Actions

on: [push]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository code
        uses: actions/checkout@v4 # This action checks out your repo
      - name: Setup Node.js environment
        uses: actions/setup-node@v4
        with:
          node-version: '20'
      - name: Install dependencies
        run: npm install

การสร้างเวิร์กโฟลว์ฉบับสมบูรณ์

มารวมทุกสิ่งที่เราเรียนรู้เข้าด้วยกันเป็นตัวอย่างเวิร์กโฟลว์เดียวที่เรียกใช้ได้ เวิร์กโฟลว์นี้จะตรวจสอบโค้ดของคุณและแสดงข้อความทักทาย

ไฟล์ YAML นี้จะบันทึกเป็น .github/workflows/greeting.yml ในคลังโค้ดของคุณ

name: Simple Greeting Workflow

on: [push] # Triggers on any push to the repository

jobs:
  greet_job:
    runs-on: ubuntu-latest # Runs on a fresh Ubuntu virtual machine
    steps:
      - name: Checkout the repository
        uses: actions/checkout@v4 # Action to get your code
      - name: Say hello
        run: echo "Hello, GitHub Actions User!" # A simple command-line step
      - name: Show current directory
        run: pwd # Another command to show where we are

การทำงานของเวิร์กโฟลว์

เมื่อเกิดเหตุการณ์ เช่น push GitHub Actions จะดำเนินการดังนี้

  1. อ่านไฟล์เวิร์กโฟลว์ YAML ที่เกี่ยวข้องจาก .github/workflows/
  2. เริ่มต้นเครื่องเสมือน หรือ ตัวเรียกใช้ สำหรับแต่ละ งาน
  3. เรียกใช้ ขั้นตอน แต่ละขั้นภายในงานตามลำดับ
  4. รายงานสถานะ (สำเร็จ/ล้มเหลว) ของแต่ละขั้นตอนและงานโดยรวม

คุณสามารถติดตามกระบวนการนี้ได้ในแท็บ "Actions" ของคลังโค้ด GitHub

ตรวจสอบอย่างรวดเร็ว: องค์ประกอบของเวิร์กโฟลว์

ข้อใดต่อไปนี้คือองค์ประกอบสำคัญที่พบในไฟล์เวิร์กโฟลว์ของ GitHub Actions

สรุป: บทนำสู่ GitHub Actions

ทำได้ดีมาก! คุณได้เรียนรู้แนวคิดพื้นฐานของ GitHub Actions แล้ว

  • เวิร์กโฟลว์: แบบแปลนระบบอัตโนมัติของคุณในไฟล์ YAML
  • เหตุการณ์: ตัวกระตุ้นที่เริ่มเวิร์กโฟลว์
  • งาน: ชุดขั้นตอนที่ทำงานบนตัวเรียกใช้
  • ขั้นตอน: คำสั่งแต่ละรายการหรือแอ็กชันที่นำกลับมาใช้ซ้ำได้
  • แอ็กชัน: หน่วยงานที่นำกลับมาใช้ซ้ำได้สำหรับงานทั่วไป

ต่อไป เราจะเจาะลึกการสร้างเวิร์กโฟลว์ CI/CD ที่ใช้งานได้จริงยิ่งขึ้น

คำถามที่พบบ่อย

บทเรียน “บทนำสู่ GitHub Actions” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “บทนำสู่ GitHub Actions” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส DevOps Bootcamp ให้อัปเกรดเป็น CoddyKit PRO คอร์ส DevOps Bootcamp มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “บทนำสู่ GitHub Actions”

ทำความเข้าใจแนวคิดหลักของ GitHub Actions รวมถึงเวิร์กโฟลว์ เหตุการณ์ งาน และขั้นตอน คุณปฏิบัติ DevOps Bootcamp ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน DevOps Bootcamp หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน DevOps Bootcamp บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “บทนำสู่ GitHub Actions” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน DevOps Bootcamp นี้ได้ไหม

ได้ บทเรียน DevOps Bootcamp ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. บทนำสู่ GitHub Actions
  2. การสร้างเวิร์กโฟลว์ CI/CD
  3. Actions แบบกำหนดเองและ Marketplace
  4. ข้อมูลลับและตัวแปรสภาพแวดล้อมใน Actions
← กลับไปที่ DevOps Bootcamp