create_baseline_record.pl

create_baseline_record.pl Script 是如何使用 ClearQuest® API,來建立及移入 ALMBaseline 記錄的範例。

create_baseline_record Perl Script 可建立 ALMBaseline 記錄。此作業會將新的 ALMBaseline 記錄連接回 UCM 基準線。它會將找到的新 ALMActivity 移入 ALMBaseline 記錄。ALMBaseline 記錄包含在 UCM 基準線中找到的 ALMActivity 記錄之參照。此 Script 會將該記錄與先前儲存的 ALMBaseline 記錄進行比較。此 Script 會搜尋 UCM 活動,以尋找交付給或重設基線至串流的活動,並在 ALMBaseline 記錄中建立 ALMActivity 的參照。您無需為每個 UCM 基準線各建立一個 ALMBaseline 記錄。

您可以透過建立基準線,在元件層次進行建置、測試及發行。產品供應項目隨後可能會將所有元件基準線都包含在供應項目中。在本範例中,產品是由所有元件組成。若要在非 UCM 中模擬此情況,您可以使用下列指令行選項:-add_composed_of_baseline <baseline> 及 -add_pvob_or_location <location>。您必須針對每個複合式基準線,同時使用這兩個選項。只要提供基準線及 pvob 名稱,即會將對應的 ALM 記錄參照新增至新基準線記錄的已組成的基準線欄位中。

create_baseline_record.pl Script 可以從指令行執行,並且具有 -help 選項,用於提供所有指令行選項的相關資訊。

在新專案中設定基準線記錄

新專案可以是先前未在其中執行 UCM 工作的任何專案,或是為了與 ALM 配合運作而建立的新專案。UCM 中的已匯入基準線,是從 ClearCase® 匯入的標籤,並且包含起始元件基準線。若要讓匯入的基準線來決定串流,您可以使用 -ucmstream 選項,將該串流傳遞至 create_baseline_record.pl Script,亦可在該專案中建立新的基準線。您至少需要一項已完成的活動,才能建立基準線。如果您將這個新基準線傳遞至 create_baseline_record.pl Script,此 Script 即可決定自從在專案中建立這個新基準線但尚未匯入的串流。如果您稍後匯入標籤,則以後必須在該專案中建立基準線,並將這個新基準線與 create_baseline_record.pl Script 搭配使用。

附註:如果您使用 mkbl -identical 選項強制建立基準線,它會導致與該專案中的所有元件產生相依關係,而這可能會阻止您在未來重新配置該專案。

指令行範例

Perl Script 位於您所用 ALMWork 套件版本的 pkg_util 目錄中(例如,在 Windows 上,是位於 <install directory>\IBM\RationalSDLC\ClearQuest\packages\ALMWork\1.0\pkg_util 中;在 UNIX 系統及 Linux 上,則位於 <install directory>/IBM/RationalSDLC/ClearQuest/packages/ALMWork/1.0/pkg_util 中)。您可以將這些範例 Script 複製到建置環境中並加以自訂。

這些 Script 的更新版本,將隨 ALM 的每個新版本一起提供。如果您已自訂這些 Script 的副本,則應將其與新的範例 Script 進行比較以檢查是否有任何變更,必要的話,請將這些變更套用至自訂 Script。

若為 Windows (cmd.exe):
set ALM="C:\path\to\almscripts"
ratlperl "%ALM%\create_baseline_record.pl" ^
-user ReleaseEngineer -pw "" -dbname ALM -dbset CQMS.ALM.HOST ^
-projectid ALM00000002 ^
-baseline BASELINE01 ^
-pvob project_vob01 ^
-logfile %ALM%\logs\BASELINE01.log
若為 UNIX 系統及 Linux (/bin/sh):
ALM="/path/to/almscripts"
cqperl "${ALM}/create_baseline_record.pl" \
-user ReleaseEngineer -pw "" -dbname ALM -dbset CQMS.ALM.HOST \
-projectid ALM00000002 \
-baseline BASELINE01 \
-pvob project_vob01 \
-logfile "${ALM}/logs/BASELINE01.log"

意見