所以這是一個重複發生的問題,我沒有資格解決它,但我需要它修復,所以我將不得不學習。請參閱this question以瞭解過時的/不可行的解決方案,並且for a similar question without answer.製作獅身人面像文件私人
基本問題,我需要爲私有python模塊提供文檔。該項目託管在gitlab上,我使用CI來生成文檔。它們對世界而言是可見的,這並不理想。這是一個known issue,gitlab最終可能會提供一個解決方案。我等不了多久。我的計劃是使用這個項目(crypto-js)代碼並將其包含在docker runner中。不幸的是,我不知道如何去做,或者甚至有可能。
我ci.yml
是:
image: tsgkadot/sphinx-plantuml
stages:
- build
pages:
stage: build
script:
#- pip install -r requirements.txt -U
- sphinx-build -b html ./doc public
artifacts:
paths:
- public
tags:
- docker
至於我可以計算出加密JS的接口,象這樣:
var unencrypted = document.getElementById('unencrypted_html').value;
var passphrase = document.getElementById('passphrase').value;
var encrypted = CryptoJS.AES.encrypt(unencrypted, passphrase);
var hmac = CryptoJS.HmacSHA256(encrypted.toString(), CryptoJS.SHA256(passphrase)).toString();
var encryptedMsg = hmac + encrypted;
其中從獅身人面像生成的HTML文件(縣)將有傳遞給js,輸出替換文件。或者,我在SO上讀到,可以在獅身人面像中包含js,但我不知道文件如何加密自己。我不介意使用一個密碼來加密所有文檔,然後與相關方共享密碼。
我也在gitlab的相關問題上發佈了這些想法,但是由於他們正在尋找更完整的解決方案,似乎沒有什麼進展。
如果有像gitlab這樣的git託管服務提供類似專用於私人存儲庫的頁面,我也很樂意切換到這一點。任何想法或指針如何實現這一點?
它如何與客戶共享?他們是否在線查看或克隆和查看本地? –
該模塊是我和我的同事的代碼,所以想法是讓它的在線文檔(gitlab頁面),代碼本身被克隆並在本地機器上運行。由於各種原因,內部服務器上的自託管git目前是不可能的。 –
有一個有趣的建議:[GitLab討論](https://gitlab.com/gitlab-org/gitlab-ce/issues/33422#note_40554673) –