| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 | 
							- name: Build Xray-core
 
- on:
 
-   workflow_dispatch:
 
-     inputs:
 
-       build_type:
 
-         description: "选择构建类型"
 
-         required: true
 
-         default: "stable"
 
-         type: choice
 
-         options:
 
-           - stable
 
-           - pre-release
 
-   release:
 
-     types: [published]
 
-     repositories: [XTLS/Xray-core]
 
- jobs:
 
-   build-xray:
 
-     runs-on: ubuntu-latest
 
-     steps:
 
-       - name: Check Out Repo
 
-         uses: actions/checkout@v4
 
-       # 自动触发时获取 release 版本号
 
-       - name: Get Release Version (Auto Trigger)
 
-         if: github.event_name == 'release'
 
-         run: |
 
-           echo "XRAY_VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_ENV
 
-           echo "BUILD_TYPE=stable" >> $GITHUB_ENV
 
-       # 手动触发时获取最新版本号
 
-       - name: Get Latest Version (Manual Trigger)
 
-         if: github.event_name == 'workflow_dispatch'
 
-         run: |
 
-           if [ "${{ inputs.build_type }}" == "stable" ]; then
 
-             VERSION=$(curl -fsSL https://api.github.com/repos/XTLS/Xray-core/releases/latest | grep '"tag_name":' | head -n 1 | awk -F '"' '{print $4}' | sed 's/v//')
 
-             echo "BUILD_TYPE=stable" >> $GITHUB_ENV
 
-           else
 
-             VERSION=$(curl -fsSL https://api.github.com/repos/XTLS/Xray-core/tags | grep '"name":' | head -n 1 | awk -F '"' '{print $4}' | sed 's/v//')
 
-             echo "BUILD_TYPE=pre-release" >> $GITHUB_ENV
 
-           fi
 
-           echo "XRAY_VERSION=$VERSION" >> $GITHUB_ENV
 
-       - name: Login to Docker Hub
 
-         uses: docker/login-action@v3
 
-         with:
 
-           username: ${{ secrets.DOCKER_HUB_USERNAME }}
 
-           password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
 
-       - name: Login to GHCR
 
-         uses: docker/login-action@v3
 
-         with:
 
-           registry: ghcr.io
 
-           username: ${{ github.actor }}
 
-           password: ${{ secrets.GITHUB_TOKEN }}
 
-       # 稳定版构建
 
-       - name: Build Stable Image
 
-         if: env.BUILD_TYPE == 'stable'
 
-         run: |
 
-           docker build -f ./xray/Dockerfile.latest -t ${{ secrets.DOCKER_HUB_USERNAME }}/xray:latest ./xray
 
-           docker tag ${{ secrets.DOCKER_HUB_USERNAME }}/xray:latest ${{ secrets.DOCKER_HUB_USERNAME }}/xray:${{ env.XRAY_VERSION }}
 
-           docker push ${{ secrets.DOCKER_HUB_USERNAME }}/xray:latest
 
-           docker push ${{ secrets.DOCKER_HUB_USERNAME }}/xray:${{ env.XRAY_VERSION }}
 
-           docker tag ${{ secrets.DOCKER_HUB_USERNAME }}/xray:latest ghcr.io/${{ github.repository }}/xray:latest
 
-           docker tag ${{ secrets.DOCKER_HUB_USERNAME }}/xray:latest ghcr.io/${{ github.repository }}/xray:${{ env.XRAY_VERSION }}
 
-           docker push ghcr.io/${{ github.repository }}/xray:latest
 
-           docker push ghcr.io/${{ github.repository }}/xray:${{ env.XRAY_VERSION }}
 
-       # Pre-release 构建
 
-       - name: Build Pre-release Image
 
-         if: env.BUILD_TYPE == 'pre-release'
 
-         run: |
 
-           docker build -f ./xray/Dockerfile -t ${{ secrets.DOCKER_HUB_USERNAME }}/xray:${{ env.XRAY_VERSION }} ./xray
 
-           docker push ${{ secrets.DOCKER_HUB_USERNAME }}/xray:${{ env.XRAY_VERSION }}
 
-           docker tag ${{ secrets.DOCKER_HUB_USERNAME }}/xray:${{ env.XRAY_VERSION }} ghcr.io/${{ github.repository }}/xray:${{ env.XRAY_VERSION }}
 
-           docker push ghcr.io/${{ github.repository }}/xray:${{ env.XRAY_VERSION }}
 
 
  |