簡體   English   中英

使用人偶從源代碼構建

[英]Using puppet to build from source

如何在不使用多個Exec命令的情況下使用puppet從源代碼進行構建? 我在鍛造上有可用的模塊嗎?

可以使用Puppet從源代碼構建應用程序而無需使用exec,可能使用自定義的書面類型和提供程序。 否則,是的,它就得在幾個不同的EXEC資源, onlyifcreates等語句來阻止他們運行的每個代理運行時間。

Puppet的配置管理模型被稱為所需狀態模型:您定義系統的最終狀態,然后讓系統運行。 這就是為什么在Puppet中通常避免執行程序的原因:它們不符合所需的狀態模型。 它還使您可以進行諸如更新應用程序之類的操作,或處理諸如創建所需文件的編譯部分失敗之類的未知信息。

我認為, 我完全不建議使用配置管理從源代碼構建應用程序 這樣做有一些固有的問題(這不僅是針對Puppet的,而且是大多數配置管理語言的):

  • 運行速度較慢,因為運行編譯的時間可能會更長,並且檢測到編譯完成通常是比較棘手的任務
  • 半完成狀態或失敗的問題:如果編譯中途中斷,則更難檢測和解決
  • 使編譯成為冪等:您必須將命令包裝在檢測安裝是否已經完成的邏輯中。 但是,這很困難,因為即使在編譯失敗時也會檢測到標志文件或特定的二進制文件
  • 升級或更改:沒有簡單的方法來升級或更改應用程序。 一個軟件包將更容易做到這一點。

聽起來,通過使用FPM之類的工具或僅使用本地軟件包構建工具(例如rpmbuild ,通過打包可以更好地解決問題。

暫無
暫無

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

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