首先,我是CI和GitLab的新手,所以我可能會說些沒什麼意義的東西。如果發生這種情況,我很抱歉,請詢問更多詳情/信息。在GitLab中運行管道時使用外部數據庫
我有一個在GitLab上託管的項目(Laravel),我正在使用它們的CI來運行測試。目前,我的測試沒有使用任何數據庫,一切正常。
我現在處於需要做數據測試的情況。我面臨的問題是我有三個數據庫:一個是由我的應用程序管理的數據庫,另外兩個是舊數據庫。
每次管道運行時都會重新創建一個由應用程序管理的管道,它是一次性的(用於測試),我使用工廠來處理數據。所以,這裏沒有問題。
然而,正如我所說,另外兩個是遺留的,除了能夠讀取數據之外,我無法控制它們。
我的測試,以及其中一些需要來自這些數據庫的數據,但我不知道如何編寫gitlab-ci YAML文件來使用託管在另一臺服務器(UAT服務器)上的數據庫。
我希望有人能幫忙。
但究竟是什麼問題?您只需將測試指向數據庫並使用它。那麼更多關於如何建立安全連接?也許如何連接到在你的本地網絡中運行的數據庫?如何從遺留數據庫轉儲數據並在CI中重新創建它們? –
指向數據庫需要在YAML文件中有用戶名和密碼,我不喜歡出於安全原因(他們將明確表示)。我會考慮如果我能夠以某種方式限制訪問權限(我已經在我的網站上使用IP地址),但我想不出一種方法來實現它。 每次重新創建數據庫似乎都很昂貴,我需要將轉儲存儲在某個地方,同樣出於安全原因,我也不喜歡。 – giuliot
第一個可以通過https://docs.gitlab.com/ee/ci/variables/#secret-variables解決,也許是一個VPN來建立安全連接。或者,也許只需在舊數據庫的同一LAN上設置專用運行程序即可。但看起來你的問題更多的是關於你對安全性的關注,而不是CI配置。 –