Hion Coding - Blogs share everything
  • HOME
  • ABOUT
  • POSTS
  • CONTACT
  • TOOLS
    CÂU HỎI VÕ ĐÀI TỐI THƯỢNG CONVERT IMAGE TO WEBP
Tạo Release trong Github action - How to do it?

Tạo Release trong Github action - How to do it?

Hion Coding - Blogs share everything
Admin Hion Coding Blogs vochilong.work@gmail.com
26th April 2024

Git/Github

Tạo Release trong Github action - How to do it?

Việc tự động hóa quy trình phát hành (release) trong phát triển phần mềm có thể giúp cải thiện hiệu suất và độ tin cậy của dự án. GitHub Actions là một công cụ mạnh mẽ cho phép tự động hóa các tác vụ như tạo release tags, xây dựng mã nguồn, và triển khai. Bài viết này sẽ hướng dẫn cách tạo release tag tự động sử dụng GitHub Actions cho trang web HionCoding, với các bước rõ ràng và minh họa bằng mã ví dụ.


Phần 1: Giới thiệu về GitHub Actions và Release Tags

GitHub Actions là một tính năng của GitHub cho phép bạn tự động hóa các tác vụ bằng cách sử dụng các tệp YAML để xác định quy trình công việc (workflow). Release tags là một cách để đánh dấu các phiên bản ổn định của dự án, giúp dễ dàng tham khảo trong tương lai và là bước quan trọng trong quá trình phát hành phần mềm.

 

Phần 2: Thiết lập GitHub Actions

Để tạo một GitHub Action nhằm tự động hóa việc tạo release tag, bạn cần tạo một tệp YAML trong thư mục .github/workflows của dự án. Tệp YAML này xác định các bước cần thiết để tạo release tag khi có một sự kiện cụ thể.
Dưới đây tôi có 3 cách để tạo 1 bản release:

name: Create Release Tag

on:
  push:
    branches:
      - main

jobs:
  create_tag:
    runs-on: ubuntu-latest
    
    permissions:
      id-token: write
      contents: write

    steps:
      - name: Checkout Repository
        uses: actions/checkout@v3

      - name: Create tag name
        id: create_tag_name
        run: |
          echo "tag_name=v1.3.3" >> $GITHUB_OUTPUT
          echo "tag_name_gh=v1.3.4" >> $GITHUB_OUTPUT
          echo "tag_name_api=v1.3.5" >> $GITHUB_OUTPUT
        

      - name: Create New Tag
        run: |
          echo "${{ steps.create_tag_name.outputs.tag_name }}"
          tag_name="${{ steps.create_tag_name.outputs.tag_name }}"
          git tag $tag_name
          git push origin $tag_name

      - name: Create Release by actions/create-release
        id: create_release
        uses: actions/create-release@v1
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        with:
          tag_name: "${{ steps.create_tag_name.outputs.tag_name }}"
          release_name: Release "${{ steps.create_tag_name.outputs.tag_name }}"
          body: |
            Changes in this Release
            - First Change
            - Second Change
          draft: false
          prerelease: false

     # By GH
      - name: Install GitHub CLI
        run: |
          sudo apt update
          sudo apt install -y gh

      - name: Create GitHub Release by GH
        env:
          GH_TOKEN: ${{ github.token }}
        run: |
          tag_name="${{ steps.create_tag_name.outputs.tag_name_gh }}"
          gh release create $tag_name -t "Release $tag_name" -n "Description for Release $tag_name"

      - name: Create GitHub Release with API
        run: |
          tag_name="${{ steps.create_tag_name.outputs.tag_name_api }}"
          curl -X POST -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
            -d '{
                "tag_name": "'$tag_name'",
                "target_commitish": "main",
                "name": "Release '$tag_name'",
                "body": "Description for release '$tag_name'",
                "draft": false,
                "prerelease": false
              }' \
            https://api.github.com/repos/${{ github.repository }}/releases

Giải thích:

  • draft: false: Nếu bạn muốn tạo release nháp, đặt thành true.
  • prerelease: false: Đặt thành true nếu đây là một phiên bản tiền phát hành (prerelease).


Kết quả nhận được:

 

Phần Kết Luận:

Bằng cách sử dụng GitHub Actions, bạn có thể tự động hóa quy trình tạo release tag, giúp tăng cường hiệu suất và độ tin cậy trong phát triển phần mềm. Mã ví dụ trong bài viết này sẽ giúp bạn bắt đầu, nhưng bạn có thể tùy chỉnh theo nhu cầu cụ thể của dự án. Chúc bạn thành công trong việc triển khai quy trình phát hành tự động và tận hưởng lợi ích của nó đối với dự án của bạn.

Nếu bạn cần hỗ trợ thêm hoặc có câu hỏi khác về GitHub Actions, hãy tham gia cộng đồng GitHub hoặc tham khảo tài liệu chính thức để tìm hiểu thêm về các tính năng nâng cao và cách áp dụng chúng vào dự án của bạn.

 

HionCoding! Thank you!


Create Release in Github action - How to do it?

26th April 2024

Create Release in Github action - How to do it?

Git/Github

Auto deployment với GitHub Actions cho cPanel hoặc VPS 🚀

31st March 2024

Auto deployment với GitHub Actions cho cPanel hoặc VPS 🚀

Git/Github

Auto deployment with GitHub Actions for cPanel or VPS 🚀

31st March 2024

Auto deployment with GitHub Actions for cPanel or VPS 🚀

Git/Github

Scheduling your GitHub Actions cron-style

9th April 2024

Scheduling your GitHub Actions cron-style

Git/Github

Hion Coding - Blogs share everything


© 2025 Hion Coding DMCA.com Protection Status