From cf43ba662d5f9a48292ecbaab173bff27cad5d74 Mon Sep 17 00:00:00 2001 From: sit002 Date: Tue, 2 Dec 2025 16:21:06 +0800 Subject: [PATCH] Update content [skip ci] --- .gitea/workflows/autograde.yml | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/.gitea/workflows/autograde.yml b/.gitea/workflows/autograde.yml index 718c7cf..fb2ad39 100644 --- a/.gitea/workflows/autograde.yml +++ b/.gitea/workflows/autograde.yml @@ -5,38 +5,39 @@ on: branches: - main tags: - - 'submit' # 学生打 submit 标签触发评分 - - 'submit-*' # 或 submit-v1, submit-final 等 - workflow_dispatch: # 手动触发 + - 'submit' # 仍然允许标签触发 + - 'submit-*' + workflow_dispatch: permissions: contents: read pull-requests: write jobs: - # 检查是否应该跳过 CI - check-skip: + # 检查是否应该触发 CI(仅在 commit message 包含 “完成作业” 时执行) + check-trigger: runs-on: docker container: image: alpine:latest outputs: - should_skip: ${{ steps.check.outputs.skip }} + should_run: ${{ steps.check.outputs.trigger }} steps: - - name: Check for skip CI + - name: Check commit message for trigger keyword id: check run: | - COMMIT_MSG="${{ github.event.head_commit.message }}" - # 检查是否包含 [skip ci], [ci skip], [no ci] 等 - if echo "$COMMIT_MSG" | grep -qiE '\[(skip ci|ci skip|no ci|skip actions)\]'; then - echo "skip=true" >> $GITHUB_OUTPUT - echo "⏭️ Skipping CI due to commit message: $COMMIT_MSG" + COMMIT_MSG="${{ github.event.head_commit.message || '' }}" + echo "Commit message: $COMMIT_MSG" + if echo "$COMMIT_MSG" | grep -q "完成作业"; then + echo "trigger=true" >> $GITHUB_OUTPUT + echo "✅ Commit contains \"完成作业\",即将执行评分" else - echo "skip=false" >> $GITHUB_OUTPUT + echo "trigger=false" >> $GITHUB_OUTPUT + echo "⛔ 只有包含“完成作业”的提交才会执行自动评分" >&2 fi grade: - needs: check-skip - if: needs.check-skip.outputs.should_skip != 'true' + needs: check-trigger + if: needs.check-trigger.outputs.should_run == 'true' runs-on: docker container: image: gradle:9.0-jdk21