ทำ Github Action แบบเร็วๆ

github_techtalkthai_banner_2-600x300-2

ลองการทำ CI/CD ด้วย Github Action

สร้างไฟล์ Workflow ใน Project

$ mkdir <project>/.github/workflows
$ touch main.yml

ในไฟล์ main.yml

  • Name

เป็นการกำหนดชื่อ workflows

name: CI
...

  • On

เป็นตัวกำหนดให้ทำงานเมื่อมีการทำกระทำอะไร เช่น push pull หรือ ระบุว่าจาก branch ไหน เพื่อทำ คำสั่งที่เรากำหนด

...
on:
  push:
    branches: [ master ]
...
...

  • Job

เป็นตัวที่กำหนดชุดคำสั่ง และขั้นตอนต่างๆ ที่เราต้องการจะทำ

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - name: Run a one-line script
      run: pwd

ไฟล์ main.yml ทั้งหมดจะประมาณนี้

name: CI
on:
  push:
    branches: [ master ]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - name: Run a one-line script
      run: pwd

ลองทดสอบ push ไปยัง github

$ git add -A
$ git commit -m 'demo git action'
$ git push origin master 

1

2

3


และสามารถ ใส่ตัวแปรที่มีความสำคัญได้เช่นกัน

  • ไปที่ Settings ใน project ไปที่ Secrets

4


  • กดที่ new secret

5


  • เพิ่ม secret

6

จากนั้น วิธีการ เรียกใช้จะเป็น ${{ secrets.<ตัวแปรที่เรากำหนด> }}

name: CI
on:
  push:
    branches: [ master ]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - name: Run a one-line script
      run: pwd
    - name: Demo secrets
      run: echo ${{ secrets.demo }}

  • จากนั้น push ไปยัง github อีกครั้ง

7

ก็จะประมาณนี้


  • ตัวอย่าง

ตัวอย่าง Github Action