Dot-Net
如何使用私有文件配置 TeamCity?
我正在為持續集成和(希望)持續部署設置 TeamCity。一些建構步驟將涉及私有文件,例如
- 用於強命名 .NET 程序集的 .snk 文件
- 用於發布工件的密碼/令牌文件(例如到 NuGet 或 CodePlex)
由於這些文件包含私有數據,我不想將它們放入(可公開訪問的)原始碼控制系統中。
我正在為AutoFixture設置http://teamcity.codebetter.com ,因此我沒有對伺服器的物理訪問權限。我希望有一個功能可以讓我上傳此類文件,但找不到任何此類文件。
什麼是最合適的解決方案?
TeamCity 支持多個 VCS 根,因此您可以使用這些私有文件添加一個額外的 VCS 根。
顯然,這將要求第二個儲存庫是私有的 - 但這就是您想要的任何方式。在原始碼管理中擁有這些文件是一件好事。
我會把我需要的文件放在原始碼控制中,但我會先加密它們。然後我會在建構中設置一個參數,該參數是解密文件所需的密碼或密鑰。該建構將對文件進行解密,對其進行任何需要的簽名或發布,然後將其刪除(如果系統允許,請擦除它們)。這應該足以保證事情的安全,除非團隊城市受到損害,如果是這樣的話,無論如何你基本上都會沉沒。
根據您使用的原始碼控制工具,可能會將文件設置為僅對某些經過身份驗證的使用者可見。Perforce 確實具有這種能力,但我從未見過更流行的 DVCS 系統。