diff --git a/.gitea/demo.yaml b/.gitea/demo.yaml deleted file mode 100644 index 1c48526..0000000 --- a/.gitea/demo.yaml +++ /dev/null @@ -1,83 +0,0 @@ -name: CodeChecker 变更检测 -run-name: ${{ gitea.actor }}的CodeChecker变更检测 - -on: - push: - # branches: - # - check-code-dev-test - workflow_dispatch: - -env: - # CodeChecker 私库坐标:com.codechecker:code-checker:1.0.0 - CODE_CHECKER_VERSION: "1.0.0" - CODE_CHECKER_REPO_URL: "http://192.168.3.25:18081/nexus/repository/maven-releases" - -jobs: - code-check: - if: ${{ gitea.ref != 'refs/heads/pre' && gitea.ref != 'refs/heads/dev' && gitea.ref != 'refs/heads/master-2.0' }} - runs-on: jdk11 - steps: - # 浅克隆:CodeChecker 仅需 HEAD 与 HEAD~1,避免全量拉取 - # 指定 --branch 确保非默认分支推送时也能正确检出 gitea.sha - - name: 检出代码 - run: | - git config --global http.sslVerify false - git clone --depth 2 --single-branch --branch "${{ gitea.ref_name }}" \ - "https://${{ gitea.token }}@git.niujiekeji.com/${{ gitea.repository }}.git" . - # 将 commit 绑定回本地分支,避免 detached HEAD 导致分支识别为「未知」 - git checkout -B "${{ gitea.ref_name }}" "${{ gitea.sha }}" - # git config --global http.sslVerify false - # git clone --depth 2 --single-branch --branch "${{ gitea.ref_name }}" \ - # "https://${{ gitea.token }}@git.niujiekeji.com/${{ gitea.repository }}.git" . - # git checkout ${{ gitea.sha }} - - - name: 检查配置文件 - run: | - if [ ! -f .gitea/config/code-check-config.yaml ]; then - echo "错误: 缺少 .gitea/config/code-check-config.yaml" - exit 1 - fi - - - name: 从 Nexus 私库下载 CodeChecker - run: | - GROUP_PATH="com/codechecker/code-checker" - JAR_NAME="code-checker-${CODE_CHECKER_VERSION}.jar" - JAR_URL="${CODE_CHECKER_REPO_URL}/${GROUP_PATH}/${CODE_CHECKER_VERSION}/${JAR_NAME}" - JAR_PATH="/tmp/${JAR_NAME}" - - echo "下载: ${JAR_URL}" - if command -v curl >/dev/null 2>&1; then - curl -fsSL -o "${JAR_PATH}" "${JAR_URL}" - elif command -v wget >/dev/null 2>&1; then - wget -q -O "${JAR_PATH}" "${JAR_URL}" - else - echo "错误: Runner 缺少 curl 或 wget,无法从 Nexus 下载 jar" - exit 1 - fi - - if [ ! -s "${JAR_PATH}" ]; then - echo "错误: 下载失败或文件为空: ${JAR_PATH}" - exit 1 - fi - - ls -lh "${JAR_PATH}" - - - name: 验证 JDK - run: | - echo "Java: $(java -version 2>&1 | head -1)" - - - name: 执行 CodeChecker 变更检测 - run: | - OLD_SHA=$(git rev-parse HEAD~1 2>/dev/null || echo "") - if [ -z "$OLD_SHA" ]; then - echo "首次提交,跳过变更检测" - exit 0 - fi - COMMIT_TIME=$(git log -1 --format=%cd --date=format:'%Y-%m-%d %H:%M:%S') - java -jar "/tmp/code-checker-${CODE_CHECKER_VERSION}.jar" \ - --config .gitea/config/code-check-config.yaml \ - --repo-root . \ - --old-sha "$OLD_SHA" \ - --new-sha "$(git rev-parse HEAD)" \ - --modifier "${{ gitea.actor }}" \ - --modify-time "$COMMIT_TIME"