添加 .gitea/workflows/check-path.yml
This commit is contained in:
29
.gitea/workflows/check-path.yml
Normal file
29
.gitea/workflows/check-path.yml
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
name: 检查提交路径权限
|
||||||
|
on: [push, pull_request]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
check-path:
|
||||||
|
name: 校验提交路径
|
||||||
|
environment: gitea
|
||||||
|
runs-on: gitea-runner
|
||||||
|
steps:
|
||||||
|
- name: 拉取代码
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: 设置用户名(获取 GITEA_USERNAME)
|
||||||
|
run: echo "用户名是: $GITEA_USERNAME"
|
||||||
|
|
||||||
|
- name: 检查是否修改了他人目录
|
||||||
|
run: |
|
||||||
|
# 获取所有修改目录
|
||||||
|
CHANGED_DIRS=$(git diff --name-only HEAD~1 | xargs -n1 dirname | sort -u)
|
||||||
|
echo "修改的目录为:$CHANGED_DIRS"
|
||||||
|
|
||||||
|
for dir in $CHANGED_DIRS; do
|
||||||
|
if [[ "$dir" != "$GITEA_USERNAME" && ! "$dir" =~ ^\. ]]; then
|
||||||
|
echo "错误:你不能修改别人($dir)的目录!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
echo "✅ 提交路径符合权限要求。"
|
||||||
Reference in New Issue
Block a user