Upload
myra-douglas
View
213
Download
0
Embed Size (px)
Citation preview
®
IBM Software Group
© 2008 IBM Corporation
Setting up Build Forge demo projects for ALMWindows onlyMay 6.2008 – work in progressStuart Poulin [email protected] 206-686-9824
IBM Software Group | Rational software
Disclaimer and Non-Disclosure
IBM Rational Plans are subject to change
Nothing in this document is intended to create any representations or warranties
IBM Rational warranties are contained in the applicable license agreements
IBM Software Group | Rational software
Demo to Present
Setting up Build Forge ALM project examples
IBM Software Group | Rational software
Audience
Users setting up the ALM Baseline/Build demos on Windows
IBM Software Group | Rational software
Pre-setup Install CQ and ALM
Recommend DB2
ALMProjects included in the ALM Schema should be:
Project_ToDo
Project_ToDoNAS (not authorized to Submit)
Project_ToDoOffering
Project_ToDoNonUCM_Component
Project_ToDoNonUCM_Offering
Each of these ALM projects will have a corresponding Build Forge project in a later step
Be sure “PATH” contains “ratlperl”
Install ClearCase
Install Build Forge DB2 is recommended for Build Forge
Setup a Build Forge server on the same machine
IBM Software Group | Rational software
Pre-setup
Install Build Forge DB2 is recommended for Build Forge
Setup a Build Forge server on the same machine
Add to your PATH the Build Forge install directory (under program files)
IBM Software Group | Rational software
Setup up an ALMHOME env variable for the ALMscripts
Scripts come packaged in: “\Program Files\IBM Rational\clearquest\packages\ALMWork\X.Y\pkg_util”
where X.Y indicate the latest version
It’s OK to use this directory or copy these out to a new directory
Files Included in this directory on next slide
IBM Software Group | Rational software
Baseline/Build scripts provided with ALM
Designed to interface UCM and NonUCM Change Management (CM) systems to ALM
Written in RATLPerl. Released as source to allow you to extend for your own process if needed
All explained in ALM documentation and have a commandline –help for addition information.
IBM Software Group | Rational software
Baseline/Build scripts provided with ALM in pkg_util dir
Create_baseline_record.pl Creates an ALMBaseline record from the commandline
Create_build_record.pl Given an ALMBaseline record creates a BTBuild record off it
Update_baseline_record.pl Updates an existing ALMBaseline record from UCM or supplied commandline
Update_build_record.pl Update an existing BTBuild record from the commandline
Runbasicquery.pl Runs a CQ stored query given commandline params for filters and saves the output to a
file.
IBM Software Group | Rational software
Setup ClearCase UCM
Review the Build Forge Project00_ALM_SETUP README step will have latest information on setup.
Do Not Run this project at this time. Just review the Readme.
IBM Software Group | Rational software
ClearCase UCM Setup
Create a pvob. Suggested: alm_demo_<date> Where <date> is in the format of YYMMDD
Example: ALM_demo_080401
Create a component VOB for the Project_ToDO ALM project. Suggested name: comp_todo_<date>
If not automatically created by the above step, manually create a UCM component in above PVOB. Suggested is to call the component the exact same name as the VOB
cleartool lsvob -s \alm_demo_080506 \comp_todo_080506
IBM Software Group | Rational software
Project Explorer
IBM Software Group | Rational software
UCM project comp_todo_<date>
Create a project in the PVOB Suggested is to name it the same as the VOB and UCM component above:
proj_comp_todo_<date>
The length of this name will exceed 25 characters but for the demo this warning can be ignored
Include the above component as modifiable in the project.
Enable ClearQuest integration when creating the project. See next slide for policies
IBM Software Group | Rational software
IBM Software Group | Rational software
OK to ignore
IBM Software Group | Rational software
IBM Software Group | Rational software
IBM Software Group | Rational software
IBM Software Group | Rational software
IBM Software Group | Rational software
UCM ClearQuest Policies 0 = DO NOT CHECK
1 = CHECK
---------------------------------------------
For Delivery
0 Perform ClearQuest Action Before Delivery
1 Transfer ClearQuest Mastership Before Delivery
0 Perform ClearQuest Action After Delivery
1 Transition to Complete After Delivery
1 Transfer ClearQuest Mastership After Delivery
For Changing Activity
0 Perform ClearQuest Action before Changing Activity
1 Perform ClearQuest Action After Changing Activity
1 Transition to Complete After Changing Activity
======================================================
IBM Software Group | Rational software
UCM ClearQuest Policies
IBM Software Group | Rational software
UCM ClearQuest Policies
For any UCM project created below enable the CQ connection and use the same policies.
IBM Software Group | Rational software
UCM project comp_todo_<date> continued
Create a view on the integration view of this project. Suggested name: proj_comp_todo_<date>_int
This is the default name minus your login user name
Example: proj_comp_todo_080506_int
Join this project to create a dev stream and view. Reuse the integration view for this join operation.
Suggested join stream name: dev_proj_comp_todo_<date>
IBM Software Group | Rational software
IBM Software Group | Rational software
Views on streams
IBM Software Group | Rational software
UCM project Comp_ToDoNAS
Create a component VOB for the Project_ToDoNas project. Suggested name: comp_todonas_<date>
Create a UCM Component: comp_todonas_<date>
Create project to match as above: proj_comp_todonas_<date>
Add the UCM component as modifiable to the project.
Use the same ClearQuest Policies
Create an integration view as above: proj_comp_todonas_int_<date>
Join this project as above and create a view: dev_proj_comp_todonas_080506
IBM Software Group | Rational software
IBM Software Group | Rational software
UCM project todo_offering_<date>
Create a "New Component Without a VOB“ Suggested name: offering_todo_080506<date>
Create a new UCM project for this component. Suggested name: proj_offering_todo_<date>
Create an integration view on this project. Suggested name: proj_offering_todo_int_<date>
This project will be rebased from Baselines from the comp_todo, and comp_todonas projects and composite baselines will be created. It does not have any modifiable components of it's own.
There is no need to "Join" this project.
IBM Software Group | Rational software
UCM project todo_offering_<date>
Add all components as non-modifiable to this project.
Setup baseline dependencies so offering_todo_<date> depends on comp_todo_<date>comp_todonas_<date>
IBM Software Group | Rational software
UCM project todo_offering_<date> Components
IBM Software Group | Rational software
UCM project todo_offering_<date> Baseline Dependencies
IBM Software Group | Rational software
UCM project todo_offering_<date>
Create a composite baseline in this project
IBM Software Group | Rational software
Complete UCM Projects and Components
IBM Software Group | Rational software
ClearCase UCM Setup
When complete in the ClearCase project Explorer under Components you should see:
comp_todo_<date>
comp_todonas_<date>
offering_todo_<date>
UCM Projects should be:
proj_comp_todo_<date> (Project Name)
– proj_comp_todo_<date>_Integration (Integration Stream)
– proj_comp_todo_dev_<date> (Developer Stream)
proj_comp_todonas_<date> (Project Name)
– proj_comp_todonas_<date>_Integration (Integration Stream)
– proj_comp_todonas_dev_<date> (Developer Stream)
proj_offering_todo_<date> (Project Name)
– proj_offering_todo_<date>_Integration (Integration Stream)
IBM Software Group | Rational software
IBM Software Group | Rational software
Import the Build Forge Projects
File BF_EXPORTED_YYMMDD.zip Where YYMMDD is the latest Year, Month, Day for the file
http://bvrgsa.ibm.com/~swpoulin/public/ALM/BF_EXPORTED_080422.zip
Unzip to a directory
Cd to BF_EXPORTED directory
Run: ratlperl bf_import_all.pl This will import all the projects and environments into your build forge.
Be sure: Be sure to set and test connection to a server
To set a selector for each project. Something default will work.
IBM Software Group | Rational software
Edit Build Forge Environments
00_ALM_GLOBAL __EDIT_VARS_BELOW_FOR_YOUR_ENV
ALMHOME = path to ALM baseline and build scripts previously mentioned
PATH = Add these to your path
ALMUSER = The login name for CQ ALM of the user authorized to create Baseline and Build scripts. For example: ReleaseEngineer_ToDo
ALMPW = The password for this user
ALMDBNAME = the DB Name for the CQ ALM. For example: ALMRW
ALMDBSET = The DBSET name. For example: SAMPLE
Stop editing at __DO_NOT_EDIT_BELOW__
These are stored queries used by the projects
IBM Software Group | Rational software
00_ALM_NonUCM
00_ALM_NonUCM __OPTIONAL_EDIT_VARS_BELOW__
Given values will work fine for a demo
ALM_PVOB_Project_ToDoNonUCM_Component
For NonUCM this would be a “repository” for where files are stored. Since the demo doesn’t use a real repository a made up one is used
ALM_PVOB_Project_ToDoNonUCM_Offering
Same as above, a made repository
ALM_Stream_Project_ToDoNonUCM_Component
A made up “stream” or “branch” name. If a real external cm system were used this would be a real branch name
IBM Software Group | Rational software
00_ALM_Project_NonUCM_ALL
Nothing to edit
IBM Software Group | Rational software
00_ALM_UCM
__DO_NOT_EDIT_BELOW__ Don’t edit these
These will be set by the 00_ALM_SETUP project later
__EDIT_VARS_BELOW__ Get these from ClearCase UCM
ALMPVOB = the name of your UCM PVOB: alm_demo_<date>
ALM_Stream_Project_ToDo = Integration stream name for Project_ToDo: proj_comp_todo_<date>_Integration
ALM_View_Project_ToDo = View on the integration stream of Project_ToDo: proj_comp_todo_int_<date>
IBM Software Group | Rational software
00_ALM_UCM Continued
ALM_Stream_Project_ToDoNAS = Integration stream name for Project_ToDoNAS: proj_comp_todonas_<date>_Integration
ALM_View_Project_ToDoNAS = The view on the integration stream: proj_comp_todonas_int_<date>
ALM_Stream_Project_ToDoOffering = Integration stream name for Project_ToDoOffering: proj_offering_todo_<date>_Integration
ALM_View_Project_ToDoOffering = View on integration stream for Project_ToDoOffering: proj_offering_todo_int_<date>
IBM Software Group | Rational software
Nothing to Edit in Environments – just review
01_ALM_Project_ToDo
02_ALM_Project_ToDoNAS
03_ALM_Project_ToDoOffering
04_ALM_Project_ToDoNonUCM_Component
05_ALM_Project_ToDoNonUCM_Offering
IBM Software Group | Rational software
Examples Projects supplied with ALM
UCM examplesProject_ToDo
Agile,
Create Activities when needed. All will be tracked with UCM
Default “Task” and “Request” for project
Project_ToDoNAS NAS = “Not Authorized to Submit”
Example of a more strict project where ALMActivities must be assigned to a dev before they can work them in UCM
Project_ToDoOffering “Offering” or “Product” level project
Uses Composite Baselines to group components into an offering
IBM Software Group | Rational software
Example Projects continued
NonUCM examples Project_ToDoNonUCM_Component
Time based rules to find activities completed since last Baseline
Mixed UCM and NonUCM Project_ToDoNonUCM_Offering
Uses Composite ALMBaseline record to group UCM and NonUCM components together
IBM Software Group | Rational software
Build Forge Environments for ALM demo UCM
00_ALM_Global Login, DB info, and pointers to standard ALM queries used by all the ALM the projects
Sections are Marked for what you should edit for your site__EDIT_VARS_BELOW__
00_ALM_UCM Edit Section: __EDIT_VARS_BELOW__
Provide: PVOB, Stream Names, and integration View names
Project ID’s will be filled out from 00_ALM_Setup_ENV project
RUN THIS LATER when told to in this presentation
01_ALM_Project_ToDo Does nothing
.include 00_ALM_UCM
Setup just for consistency: When we get to NonUCM we will need to track more variables
IBM Software Group | Rational software
Build Forge Environments for ALM demo UCM
02_ALM_Project_ToDoNAS .include 00_ALM_UCM
03_ALM_Project_ToDoOffering .include 00_ALM_UCM
Stores Baselines and streams used in Composite for reference
IBM Software Group | Rational software
NonUCM
00_ALM_NonUCM Stores variables and pointers to queries used by NonUCM projects
04_ALM_Project_ToDoNonUCM_Component .include 00_ALM_NonUCM
05_ALM_Project_ToDoNonUCM_Offering .include 00_ALM_NonUCM
.include 00_ALM_UCM (both)
Stores PVOB/Location and Baseline names from contributing components
IBM Software Group | Rational software
00_ALM_SETUP_ENV Build Forge Project
Now is the time to run this project
Step: Setup Project IDs Connects to ALM and queries ALM0000XXXX IDs of the Project_ToDo% and populates
ENV variables:
00_ALM_UCM:
ALM_Project_ToDo_ID
ALM_Project_ToDoNAS_ID
ALM_Project_ToDoOffering_ID
00_ALM_NonUCM
ALM_Project_ToDoNonUCM_Component_ID
ALM_Project_ToDoNonUCM_Offering_ID
Check that these get set
IBM Software Group | Rational software
“Seed ALMBaseline Records” “Seed ALMBaseline Records” are used to set
an initial ALMBaseline for an ALMProject
UCM uses these to diffbl with the first ALMBaseline record created after the seed.
NonUCM uses the timestamp to query for ALMActivities completed on a project since the “Seed”.
Once a normal ALMBaseline is created the seed baselines are no longer used.
IBM Software Group | Rational software
00_ALM_SETUP_ENV Continued
Seed Project ToDo UCM Baselines Creates “Seed” Baseline Records
For following ALM projects
Project_ToDo
Project_ToDoNas
Project_ToDoOffering
Input environment: 00_ALM_UCM
ALMPVOB
ALM_Project_ToDo_ID
ALM_Stream_Project_ToDo
ALM_Project_ToDoNAS_ID
ALM_Stream_Project_ToDoNAS
ALM_Project_ToDoOffering_ID
ALM_Stream_Project_ToDoOffering
IBM Software Group | Rational software
Seed Project ToDo UCM Baselines continued
Creates baseline record in each of the above ALM Projects
Next Baseline created will be able to diffbl to these seed baselines
Baselines created after above baseline will diffbl with previous baseline
IBM Software Group | Rational software
00_ALM_SETUP_ENV Continued
Seed Project ToDoNonUCM Baselines Creates “Seed” Baseline Records
For following ALM projects
Project_ToDoNonUCM_Component
Project_ToDoNonUCM_Offering
Input environment:
ALM_PVOB_Project_todoNonUCM_Component
ALM_Stream_Project_toDoNonUCM_Component
ALM_PVOB_Project_todoNonUCM_Offering
ALM_Stream_Project_toDoNonUCM_Offering
Creates seed baselines for above.
Timestamp of these baselines is used to query for ALMActivities completed since the seed
IBM Software Group | Rational software
00_ALM_SET_ENV Complete
Check that Project_ID variables are set in Build Forge Environments
Check that seed baselines are created
Once complete you should be able to step through each demo presentation for each project.