我试图限制在我们的GitLab实例中提交的二进制文件(dll,pdf,exe)。如果提交有二进制文件,我的moto需要中止提交。我有用于在Python中中止提交的代码,
#!/usr/bin/env python3
import os
def scanDir(dirName):
for root, dirs, files in os.walk(dirName):
for fileName in files:
if fileName.split('.')[-1] in ["txt","dll","pdf"]:
return 1
return 0
我在Gitlab中的问题在ruby中有钩子文件,我的代码在python中,所以它在ruby代码中不起作用。 (How to load the python file in ruby hook?)
此外,我不知道路径应该是什么?def scanDir(dirName):
我尝试了最好的水平,但我无法在红宝石中做到这一点,因为我是红宝石的新手。
任何人都可以帮忙添加钩子来限制二进制文件吗?
答案 0 :(得分:0)
GitLab hooks might be in any language
目前还不清楚为什么你不能按原样使用你的python代码。
FWIW,翻译后的代码为:
def scan_dir(dir_name)
Dir["#{dir_name}/**/*"].any? do |f|
%w|.txt .pdf .dll|.include?(File.extname(f))
end
end