Build Service

Jump to: navigation, search


Geeko openSUSE Build Service (openSUSE 共構平台)是一個開放且完整的發行版本開發平台,他提供了未來基於 openSUSE 的發行版本的基礎建設。

他提供了軟體開發者一個編譯、釋出軟體的工具,軟體開發者可以對廣大的使用者群眾發布軟體,包含了在不同硬體架構下自行開發基於 openSUSE 的發行版本。



特色

在上面的介紹中,我們提到了共構平台是一個開放且完整的發行版本開發平台,他提供了未來基於 openSUSE 的發行版本的基礎建設。

它的另一個特色是讓您可以在這平台上為其他發行版本編譯和包裝套件,像是 Fedora、Debian、Ubuntu以及其他更多發行版本。

openSUSE 的使用者可以很容易的由使用者端的瀏覽器網路介面 http://software.opensuse.org/ 瀏覽與下載最新的套件。

開放的介面允許外加的服務(例如 SourceForge)和網頁介面和共構平台協同工作與使用它所提供的資源。

在未來的進階功能,它將伴隨使用者/可信賴的管理工具提供給每個人使用,且將開發更多的建構目標(例如 LSB 和 Xen 影像)。

優點

對開發者

  • 您不再需要各種不同硬體的"編譯農場"來為不同的架構包裝套件。
  • 製造更好的軟體:有些軟體計畫仍然使用16位元處理程序而想知道為什麼他們的程式碼無法在32位元或64位元平台上編譯。
  • 自動解決與其他套件的相依性問題。如果某個套件相依於其他套件,當其他套件被重新建立時,會自動觸發此套件重新建立。
  • 連結到其他專案:您的套件可以使用其他專案的最新套件來被測試。例如:某開發者有一個 Amarok 的補釘,他想去測試它是否也能在某個環境下適用。他可以連結到 KDE 專案並使用做為開發環境來測試它。結果會是:它的修正後版本的 Amarok 將會隨著 KDE 專案每次的新建立而被觸發重新建立。

對使用者

  • 總是能得到所使用發行版本的最新版軟體。使用共構平台中的信任關係,使用者可以聲明"我信任某某專案",然後他可以由這個專案中安裝套件。
  • 取得較舊發行版本的升級。(像是取得 SL 10.0 適用的 KDE 3.5.3)
  • 不同發行版本間更加趨於一致。共構平台的套件會將人們聚在一起 - 想想關於"為什麼他們要這樣做?位什麼他們要使用這些目錄? - 我也想要在我的發行版本這樣做"。(但這是將來的事... :-)

如何尋找與安裝這些套件?請看這裡

對發行套件建立者

  • 共構平台能很容易的建立完整的發行版本或修改影像來適用各種不同用途。一個初版的 KIWI 已經釋出了,這個影像可以由網路開機或作為 Xen 或 VMware 的影像。

願景

這裡有我們的願景 ,我們也維護了一份記錄較小變更的日誌

如何使用

共構平台可以使用網頁介面命令列工具或任何其他使用公開 API 的工具。套件打包者可能也想閱讀 cross distribution package how toBuild Service Tutorial

目前帳號僅提供給有經驗的套件打包者,因為現在共構平台仍在 alpha 狀態。想要得到一個帳號,請閱讀這個章節。您將被問到您想要用 Build Service 做些什麼,然後您的帳號將在數天內被啟用(或拒絕)。

Build Service Tips & Tricks 也有些關於共構平台的提示。

Summer of the Code

There are several Google Summer of the Code projects going on in the context of the openSUSE Build Service:

Build Service 的程式碼

SVN Repository

Build Service 工具的程式碼與文件放在 forge.novell.com。這個資料庫包含了客戶端工具與伺服器端的程式碼。

Forge 現在的 svn 伺服器有些問題,在這些問題解決之前是無法 checkout 的。

套件

套件近期將在建構伺服器中提供,但他們還不是很完備。在我們宣布它準備好之前,還有許多必要的工作待完成。目前套件可以在 openSUSE:/Tools repository 中找到。請搜尋名稱為 obs-* (openSUSE Build Server) 的套件。

如何參與貢獻

如同其他的開放原碼專案一樣,請開始撰寫補釘或實現您想開發的概念。實現或遞交可用的程式碼的人即可取得 SVN 資料庫的存取權限。

At the moment you also have the opportunity to participate in Google's Summer of Code with an openSUSE Build Service project. See the Summer of Code 2006 page for details and project ideas.

文件

  • We do provide two talks from FOSDEM about the Build Service. The first talk gives an overview about the idea of the Build Service and it's architecture. The second talk describes the project model in detail and explains how to build for multiple distributions, including openSUSE, Fedora, Mandriva and Debian.
  • 有個重要的部分是關於 API 的文件。 API 是一個可以在 Build Server 上工作的簡單且通用介面。您可以使用它整合進您的工具來提交程式碼更新,檢查專案的目前狀態或者做些其他非常不同且非常酷的事情。
  • 不喜歡我們提供的網頁介面或命令列工具嗎?您可以改進它或寫一個您自己的。這兩者的程式碼都可從 forge 資料庫中取得。

連絡我們

訂閱 opensuse-buildservice mailing list (archive)。任何回饋都非常歡迎,更歡迎您提供補釘、新的工具與新的點子。

部分成員也常掛在 freenode 的 #openSUSE-buildservice 頻道。

您的 openSUSE Build Service Team

網頁客戶端介面

命令列工具

目前有2個 Build Service 的命令列工具。請參考:

另外,如果您是 build service 的開發者,您可能會對藉由 curl 使用 Build Service rest API 目錄感到興趣。