BuildForge 可以搭配 Rational ClearQuest 使用來更新建置記錄。
Build Forge 與 ClearQuest 有兩項整合:
- 根據工作狀態自動建立或更新建置記錄。當專案環境中設定了所需的環境變數時,即會自動啟動這項功能。
- ClearQuest 配接器
這些功能彼此完全獨立。特別是,配接器會與針對其建立的環境相關聯。該環境中的變數與設定來啟動自動建置記錄的變數無關。
設定自動產生建置記錄
系統可以在 IBM Rational® ClearQuest® 資料庫中自動建立建置記錄,包含與日誌資料的鏈結。另外,當工作通過時,系統就能更新 ClearQuest 資料庫,以註明工作已經完成,並記錄結束時間以及所完成的步驟摘要。這項特性需要 Rational ClearQuest 7.0 版或更新版本。
當您配置專案以更新 ClearQuest 資料庫時,系統會執行建立或更新建置記錄,如下所示:
- 工作開始
- 當系統啟動工作時,系統就會建立 ClearQuest 建置記錄。建置記錄會是「已提交」狀態,並且包含工作日誌 URL、開始時間、版次名稱和 ID,以及指出「建置 XYZ 已啟動」的日誌項目。如果來源控制配接器取消工作(例如,因為找不到來源變更),則不會建立 ClearQuest 建置記錄。
註: 如果專案與其他專案鏈結,則新專案會取得專屬的唯一 ClearQuest 建置 ID。
- 工作通過/失敗
- 當工作通過或失敗時,系統會將 ClearQuest 內的建置狀態變更為「已完成」或「失敗」,再設定建置的結束時間,然後將工作步驟的摘要儲存在 ClearQuest 建置日誌中。摘要包含每個步驟的名稱、結果狀態與伺服器。
- 工作重新啟動
- 當工作重新啟動時,系統會將 ClearQuest 內的建置狀態變更為「已送出」,並建立 ClearQuest 建置日誌項目,指出「建置 XYZ 已重新啟動。」
您會透過特殊環境變數來配置自動更新建置記錄。若要將專案鏈結至 ClearQuest 資料庫,請確定下表內的變數已併入專案的環境中。
註: 這些變數必須呈現在專案環境中。光是將它們新增至步驟是不夠的。但是,您可以使用設定為「併入」類型的變數,經由另一個環境來併入這些變數。此外,由於 CQ_RELEASE_NAME 值是唯一可能會依專案而有所不同的值,您可能會想建立一個內含其他變數的環境,然後使用「併入」類型的變數將該環境併入在專案環境中,而在專案環境中,您也可以將 CQ_RELEASE_NAME 指定為專案特有的環境變數。
為了啟動自動更新 Build Forge 工作的建置記錄,必須為專案設定下列環境變數。這些變數不會於步驟層次上作用。
變數
|
說明
|
CQ_DBNAME
|
(必要)。您要更新的 ClearQuest 資料庫名稱。
|
CQ_DBSET
|
ClearQuest 資料庫設定值。非必要。預設值為空白。
|
CQ_INTERACTION
|
如果您的專案環境已定義了正確的環境變數,以允許建立 ClearQuest 建置記錄,但是您並不要建立建置記錄,請將此變數設定為 OFF 以停止建立建置記錄。
如果要啟用建置記錄的建立,請將這個環境變數設定為 ON。
註: 如果您正使用其中一個 ClearQuest 配接器,請將這個環境變數設定為 OFF。配接器會與建置記錄直接互動。
|
CQ_PASSWORD
|
(必要)。登入 ClearQuest 資料庫時所要使用的密碼。不是必要的;預設為空白。
|
CQ_RELEASE_NAME
|
(必要)。在您要更新的 ClearQuest 資料中的版次名稱。
|
CQ_USER
|
(必要)。登入 ClearQuest 資料庫時所要使用的使用者名稱。
|
ClearQuest 配接器額外的設定需求
ClearQuest 配接器範本範例,提供在 ClearQuest 中掃描 ClearCase 及更新建置記錄的方法。這通常關係到在 Build Forge 中執行的建置是成功還是失敗。請參閱配接器需求以取得一般需求。此外,還需要完成下列配置。
- 掃描原始檔所需的 ClearCase 存取權。在工作執行期間,配接器會透過代理程式及 ClearCase 用戶端來執行 cleartool 指令。配接器將使用 ClearQuest Perl API (cqperl) 執行這些指令。
- 更新建置記錄所需的 ClearQuest 存取權。在工作執行期間,配接器會直接在主控台主機上執行 cqperl Script。這些 Script 將由主控台主機上安裝的 Cqperl 公用程式解譯,並透過主控台主機上安裝的 ClearQuest 用戶端來執行。
請執行下列動作:
- 在可以連接至 ClearCase 伺服器的主機上安裝 Build Forge 代理程式。
- 在代理主機上安裝 ClearCase 完整用戶端。
- 設定代理程式的環境,以便透過 ClearCase 用戶端來執行指令。
- 在 Build Forge 主控台主機上安裝 ClearQuest 完整用戶端。
- 將 cqperl (ClearQuest Perl API) 目錄新增至系統路徑。
- 定義連線,Build Forge 主機上的 ClearQuest 用戶端使用此連線來存取 ClearQuest 資料庫。在 ClearQuest 用戶端主機上執行下列動作。
- 使用 cqreg 指令新增資料庫集 (cqreg add_dbset)。
- 使用 CQ 的「維護工具」,設定通往 ClearQuest 資料庫的連線。
- 決定所需 ClearCase 視圖的實作方式、啟動方式及啟動時間。

您不需要安裝代理程式。ClearQuest 配接器會透過用戶端,利用 ClearQuest Perl API 與 ClearQuest 直接通訊。
重要: ClearQuest 配接器只能在步驟中以點指令來呼叫。它不是來源配接器,因此不能使用配接器鏈結。
ClearQuest 配接器範本範例
所提供的配接器範本範例如下所示。
- ClearQuestBaseClearCaseByDate
- 在 ClearCase 視圖中,查詢兩個日期之間的變更。預設日期為現行時間戳記與配接器前次執行的時間戳記。
- 針對每個已變更的檔案,找出可用來識別 ClearQuest 變更 ID 的 CrmRequest 超鏈結屬性。新增工作資訊以試圖解析變更 ID,以解析 ClearQuest 中的問題記錄(如果 ClearQuest 狀態容許解析該問題記錄的話)。
- 針對每個已變更的檔案,將下列資訊寫入 BOM 報告:檔名、問題 ID、問題狀態和 ClearQuest 的所有錯誤。
配接器範本中定義的變數:
- CurDate
- LAST_RUN
- VIEW
- VOB_PATH
- CQ_USER
- CQ_PASSWORD
- BFSERVER
- UNIXCLIENT
- _CHAR_NATIVE
- ClearQuestClearCaseByActivity
- 找出與 ClearCase 活動清單相關聯的 ClearQuest 問題記錄。
- 它會針對所找到的每個問題記錄新增工作資訊,以解析 ClearQuest 中的問題記錄(如果 ClearQuest 狀態容許解析該問題記錄的話)。
- 將下列資訊寫入 BOM 報告:和 ClearCase 活動 ID 及 ClearQuest 問題狀態相關聯的檔案。
配接器範本中定義的變數:
- CurDate
- VIEW
- VOB_PATH
- ACTIVITIES
- CQ_USER
- CQ_PASSWORD
- PROJECT_VOB
- BFSERVER
- UNIXCLIENT
- _CHAR_NATIVE
- ClearQuestUCMClearCaseByDate
- 在 ClearCase 視圖中,查詢兩個日期之間的變更。預設日期為現行時間戳記與配接器前次執行的時間戳記。其使用 Rational Unified Change Management (UCM) 來產生結果。
- 針對每個已變更的檔案,將下列資訊寫入 BOM 報告:檔名、問題 ID、問題狀態和 ClearQuest 的所有錯誤。
配接器範本中定義的變數:
- CurDate
- LAST_RUN
- VIEW
- VOB_PATH
- CQ_USER
- CQ_PASSWORD
- BFSERVER
- UNIXCLIENT
- _CHAR_NATIVE
ClearQuest 配接器變數
這份表格是配接器範本之變數清單的參照。
表 1. 進行 Rational ClearQuest 整合所需的環境變數 變數
|
說明
|
ACTIVITIES |
如果是使用 ClearQuestClearCaseByActivity 配接器,即為以空格區隔的活動 ID 集。範例:SAMPL0001@\ProjectVob |
BFSERVER |
將這個變數設為 Build Forge 主控台的主機名稱。 |
CQ_PASSWORD
|
(必要)。登入 ClearQuest 資料庫時所要使用的密碼。不是必要的;預設為空白。
|
CQ_USER
|
(必要)。登入 ClearQuest 資料庫時所要使用的使用者名稱。
|
CurDate |
利用 .date 指令產生日期,來提供目前日期給配接器。請勿變更此值。 |
LAST_RUN |
若為 ByDate 配接器,系統會使用此值來判斷是否發生任何變更;此值是前次順利執行的日期。您可以在測試配接器時操作此值,挑選在某些變更發生之前的日期,以強迫配接器執行。如果配接器容許繼續執行,它會自動將此值更新為現行日期。預設值為 1-Jan-05.00:00:00。 |
UNIXCLIENT |
用來設定平台專用的資訊。如果用戶端是在 Windows 上執行,請設為 0。如果用戶端是在 UNIX 或 Linux 上執行,請設為 1。 |
VIEW |
將這個變數設為您要搭配配接器使用的 ClearCase 視圖名稱。 |
VOB_PATH |
將這個值設為元件 VOB 的名稱及其子目錄(後者為選用)。請使用逗點區隔的清單來指定多個名稱。 |
_CHAR_NATIVE |
供內部使用且一律設為 1。 |
重新啟動 ClearQuest-integrated 工作
一旦完成了 ClearQuest-integrated,通常無法在 Rational Build Forge 重新啟動它。有一個簡單的暫行解決方法,就是您可以將此工作當成新工作來啟動。
若要啟用重新啟動,您必須使用 ClearQuest 設計程式工具來編輯 ClearQuest 綱目。必須修改「建置」記錄的工作流程,才能將「已完成」的狀態轉移為「提交」。