first commit
This commit is contained in:
27
.gitea/workflows/master.yaml
Normal file
27
.gitea/workflows/master.yaml
Normal file
@@ -0,0 +1,27 @@
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
jobs:
|
||||
version:
|
||||
name: "CD > 計算版本號"
|
||||
runs-on: ubuntu
|
||||
outputs:
|
||||
version: ${{ steps.version.outputs.version }}
|
||||
steps:
|
||||
- name: 計算版本號
|
||||
id: version
|
||||
uses: https://gitea.jsc.idv.tw/actions/calculate-version@${{ vars.ACTION_CALCULATE_VERSION }}
|
||||
release:
|
||||
name: "CD > 發布專案"
|
||||
runs-on: ubuntu
|
||||
needs: version
|
||||
steps:
|
||||
- name: 發布專案
|
||||
uses: akkuman/gitea-release-action@${{ vars.ACTION_RELEASE_VERSION }}
|
||||
with:
|
||||
tag_name: "v${{ needs.version.outputs.version }}"
|
||||
- name: 清理成品
|
||||
uses: https://gitea.jsc.idv.tw/actions/cleanup-release@${{ vars.ACTION_CLEANUP_RELEASE_VERSION }}
|
||||
with:
|
||||
RUNNER_TOKEN: ${{ secrets.RUNNER_TOKEN }}
|
||||
10
Dockerfile
Normal file
10
Dockerfile
Normal file
@@ -0,0 +1,10 @@
|
||||
FROM alpine:latest
|
||||
|
||||
# 安裝必要的工具
|
||||
RUN apk add --no-cache --no-check-certificate bash curl
|
||||
|
||||
COPY entrypoint.sh /entrypoint.sh
|
||||
|
||||
RUN chmod +x /entrypoint.sh
|
||||
|
||||
ENTRYPOINT ["/entrypoint.sh"]
|
||||
16
action.yaml
Normal file
16
action.yaml
Normal file
@@ -0,0 +1,16 @@
|
||||
name: 'HEALTH CHECK'
|
||||
description: '檢查服務健康狀態'
|
||||
author: 'Jeffery'
|
||||
inputs:
|
||||
CHECK_URL:
|
||||
description: '檢查URL'
|
||||
required: true
|
||||
HEALTH_CODE:
|
||||
description: '健康碼'
|
||||
default: '200'
|
||||
runs:
|
||||
using: 'docker'
|
||||
image: 'Dockerfile'
|
||||
env:
|
||||
CHECK_URL: ${{ inputs.CHECK_URL }}
|
||||
HEALTH_CODE: ${{ inputs.HEALTH_CODE }}
|
||||
27
entrypoint.sh
Normal file
27
entrypoint.sh
Normal file
@@ -0,0 +1,27 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo "=================================================="
|
||||
|
||||
echo "參數檢查"
|
||||
|
||||
echo "--------------------------------------------------"
|
||||
|
||||
# 顯示 CHECK_URL 參數,並檢查是否為空或 "null",如果是則輸出錯誤訊息並退出
|
||||
echo "CHECK_URL=$CHECK_URL" && ([ -z "$CHECK_URL" ] || [ "$CHECK_URL" = "null" ]) && exit 1
|
||||
|
||||
# 顯示 HEALTH_CODE 參數,並檢查是否為空或 "null",如果是則輸出錯誤訊息並退出
|
||||
echo "HEALTH_CODE=$HEALTH_CODE" && ([ -z "$HEALTH_CODE" ] || [ "$HEALTH_CODE" = "null" ]) && exit 1
|
||||
|
||||
echo "=================================================="
|
||||
|
||||
echo "取得狀態碼"
|
||||
|
||||
echo "--------------------------------------------------"
|
||||
|
||||
# 使用 curl 從 CHECK_URL 取得狀態碼,並將結果存儲在 STATUS_CODE 變數中
|
||||
STATUS_CODE=$(curl -s -o /dev/null -w "%{http_code}" "$CHECK_URL") && echo "STATUS_CODE=$STATUS_CODE"
|
||||
|
||||
# 將狀態碼輸出到環境變數
|
||||
echo "status_code=$STATUS_CODE" >> $GITHUB_OUTPUT
|
||||
|
||||
echo "=================================================="
|
||||
Reference in New Issue
Block a user