diff --git a/.github/workflows/logic_CI.yml b/.github/workflows/logic_CI.yml index 8b3103fbf..467361642 100644 --- a/.github/workflows/logic_CI.yml +++ b/.github/workflows/logic_CI.yml @@ -1,11 +1,15 @@ name: Go Build & Release on: + push: + branches: + - main workflow_dispatch: inputs: servicePort: description: '服务启动端口' required: true + default: 8080 type: number jobs: @@ -41,43 +45,54 @@ jobs: - name: Set up Go uses: actions/setup-go@v4 with: - go-version: '1.20' + go-version: '1.25' - name: 编译logic服务 - run: go build -o ./logic_${{ needs.prepare-version.outputs.build_version }} -v ./logic - # 移除了public目录,直接在当前目录生成可执行文件 + run: | + mkdir -p build + go build -o ./build/logic_${{ needs.prepare-version.outputs.build_version }} -v ./logic + + - name: 上传到七牛云 + uses: cumt-robin/upload-to-qiniu-action@v1 + with: + access_key: ${{ secrets.QINIU_AK }} + secret_key: ${{ secrets.QINIU_SK }} + bucket: ${{ secrets.QINIU_BUCKET_NAME }} + region: z2 + local_dir: build + upload_prefix: releases/ - name: Upload Build Artifact uses: actions/upload-artifact@v4 with: name: logic_${{ needs.prepare-version.outputs.build_version }} - path: ./logic_${{ needs.prepare-version.outputs.build_version }} - # 直接上传可执行文件 + path: ./build/logic_${{ needs.prepare-version.outputs.build_version }} - - name: 推送到服务器并通过screen启动服务 - uses: easingthemes/ssh-deploy@main - env: - SSH_PRIVATE_KEY: ${{ secrets.BLAZING }} - REMOTE_HOST: "125.208.20.223" - REMOTE_PORT: 22916 - REMOTE_USER: "root" - SOURCE: "logic_${{ needs.prepare-version.outputs.build_version }}" # 只指定可执行文件作为源 - TARGET: "/home/" - ARGS: "-avz --chown=git:git" # 保持权限参数 - SCRIPT_AFTER: | - SCREEN_NAME="logic-${{ needs.prepare-version.outputs.build_version }}" - screen -S $SCREEN_NAME -X quit 2>/dev/null || true - screen -dmS $SCREEN_NAME /home/logic_${{ needs.prepare-version.outputs.build_version }} -port=${{ github.event.inputs.servicePort }} - echo "======================================" - echo "服务启动成功!" - echo "Screen会话名:$SCREEN_NAME" - echo "服务端口:${{ github.event.inputs.servicePort }}" - echo "对应Commit:${{ github.sha }}" - echo "管理命令:" - echo " - 进入会话:screen -r $SCREEN_NAME" - echo " - 查看所有会话:screen -ls" - echo " - 停止服务:screen -S $SCREEN_NAME -X quit" - echo "======================================" + # - name: 推送到服务器并通过screen启动服务 + # uses: easingthemes/ssh-deploy@main + # env: + # SSH_PRIVATE_KEY: ${{ secrets.BLAZING }} + # REMOTE_HOST: "125.208.20.223" + # REMOTE_PORT: 22916 + # REMOTE_USER: "root" + # SOURCE: "logic_${{ needs.prepare-version.outputs.build_version }}" # 只指定可执行文件作为源 + # TARGET: "/home/" + # ARGS: "-avz --chown=git:git" # 保持权限参数 + # SCRIPT_AFTER: | + # SCREEN_NAME="logic-${{ needs.prepare-version.outputs.build_version }}" + # screen -S $SCREEN_NAME -X quit 2>/dev/null || true + # screen -dmS $SCREEN_NAME /home/logic_${{ needs.prepare-version.outputs.build_version }} -port=${{ github.event.inputs.servicePort }} + # echo "======================================" + # echo "服务启动成功!" + # echo "Screen会话名:$SCREEN_NAME" + # echo "服务端口:${{ github.event.inputs.servicePort }}" + # echo "对应Commit:${{ github.sha }}" + # echo "七牛云下载地址: https://${{ secrets.QINIU_CDN_DOMAIN }}/releases/logic_${{ needs.prepare-version.outputs.build_version }}" + # echo "管理命令:" + # echo " - 进入会话:screen -r $SCREEN_NAME" + # echo " - 查看所有会话:screen -ls" + # echo " - 停止服务:screen -S $SCREEN_NAME -X quit" + # echo "======================================" create-release: needs: [prepare-version, build] @@ -108,6 +123,7 @@ jobs: - 对应Commit: ${{ github.sha }} - 可执行文件: logic_${{ needs.prepare-version.outputs.build_version }} - 启动命令: ./logic_${{ needs.prepare-version.outputs.build_version }} -port=${{ github.event.inputs.servicePort }} + - 七牛云下载地址: https://${{ secrets.QINIU_CDN_DOMAIN }}/releases/logic_${{ needs.prepare-version.outputs.build_version }} files: logic_${{ needs.prepare-version.outputs.build_version }} # 只上传可执行文件 draft: false prerelease: false diff --git a/.vscode/settings.json b/.vscode/settings.json index 47bf3adb5..fcf20cd80 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -2,11 +2,12 @@ "goBuild.savedBuildConfig": { "outputName": "", "outputDir": "./public", + "zcliEnabled": false, "targetOS": "linux", "targetArch": "current", "enableRace": false, "enableOptimization": true, - "stripSymbols": false, + "stripSymbols": true, "cgoEnabled": false, "buildTags": "", "customLdflags": "", @@ -15,8 +16,9 @@ "keepWorkDir": false, "forceRebuild": false, "dryRun": false, - "trimPath": false, + "trimPath": true, "currentPreset": "dev" }, - "go.toolsEnvVars": {} + "go.toolsEnvVars": {}, + "goBuild.zcli.enabled": false }