簡體   English   中英

預先接收鈎子以檢查二進制文件

[英]Pre-receive hook to check the binary file

我試圖限制在我們的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中有hooks文件,我的代碼在python中,所以在ruby代碼中不起作用。 如何在ruby hook中加載python文件?

另外我也不知道在def scanDir(dirName):我應該給什么路徑 def scanDir(dirName):我盡力嘗試了關卡,但是我無法在ruby中做到這一點,因為我是新手。

任何人都可以幫助添加掛鈎以限制二進制文件嗎?

GitLab掛鈎可以使用任何語言

目前尚不清楚為什么不能僅按​​原樣使用python代碼。


FWIW,翻譯后的代碼為:

def scan_dir(dir_name)
  Dir["#{dir_name}/**/*"].any? do |f|
    %w|.txt .pdf .dll|.include?(File.extname(f))
  end
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM