{"id":363,"date":"2026-10-13T21:31:38","date_gmt":"2026-10-13T21:31:38","guid":{"rendered":"http:\/\/www.scmgalaxy.com\/tutorials\/2014\/07\/27\/getting-started-with-rational-build-forge\/"},"modified":"2026-10-13T21:31:38","modified_gmt":"2026-10-13T21:31:38","slug":"getting-started-with-rational-build-forge","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/getting-started-with-rational-build-forge\/","title":{"rendered":"Getting Started with IBM Rational Build Forge: Learning Path, Workflow, and Integrations"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><em>Originally published on 2014-07-27; fully revised and updated.<\/em><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2014\/07\/rational-build-forge.png\" alt=\"Rational Build Forge\"\/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">IBM Rational Build Forge is an enterprise automation platform used to orchestrate build and release tasks across distributed systems. This guide is for DevOps, release engineering, and middleware teams that want a clear starting point: what Build Forge helps with, how to learn it quickly, and which integrations to prioritize first.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The original post was mostly a curated set of IBM links. This updated version organizes that material into a practical onboarding path, adds a workflow diagram, and includes realistic starter scripts you can adapt for early projects.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What Rational Build Forge helps teams do<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Based on the original IBM description, Rational Build Forge is intended to accelerate build and release work while reusing existing tooling and processes. The post also references IBM Rational Automation Framework for automating environment build-outs, configuration management, and deployments across heterogeneous middleware environments.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Manage development and build execution from a central system.<\/li><li>Reduce repetitive manual tasks for developers and release teams.<\/li><li>Leverage existing scripts and build investments instead of replacing everything.<\/li><li>Support build, configuration, and deployment automation in mixed environments.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">What the original IBM release material highlighted<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The source post points to an IBM podcast covering then-new releases of Rational Build Forge and Rational Automation Framework.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"http:\/\/www.ibm.com\/software\/rational\/podcasts\/2011\/#160\" target=\"_blank\" rel=\"noopener\">Podcast: All new Rational Automation Framework and Rational Build Forge<\/a><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Follow a structured learning path<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The original post recommends seven basic tutorials (each described there as roughly 30 minutes) with both video and PDF walkthroughs. This is a strong progression from simple project setup to operational administration topics.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Tutorial<\/th><th>Focus area<\/th><th>Video<\/th><th>Tutorial PDF<\/th><\/tr><\/thead><tbody><tr><td>1. Creating and scheduling a project (Hello World)<\/td><td>Create a simple project and schedule runs<\/td><td><a href=\"http:\/\/www.ibm.com\/developerworks\/offers\/lp\/demos\/summary\/r-rbfproject.html\" target=\"_blank\" rel=\"noopener\">Video<\/a><\/td><td><a href=\"http:\/\/public.dhe.ibm.com\/software\/dw\/demos\/rbftut1\/Tutorial_1.pdf\" target=\"_blank\" rel=\"noopener\">Tutorial (65KB)<\/a><\/td><\/tr><tr><td>2. Libraries and pass\/fail chains<\/td><td>Reusable logic and chained outcomes<\/td><td><a href=\"http:\/\/www.ibm.com\/developerworks\/offers\/lp\/demos\/summary\/r-rbflibraries.html\" target=\"_blank\" rel=\"noopener\">Video<\/a><\/td><td><a href=\"http:\/\/public.dhe.ibm.com\/software\/dw\/demos\/rbftut2\/Tutorial_2.pdf\" target=\"_blank\" rel=\"noopener\">Tutorial (113KB)<\/a><\/td><\/tr><tr><td>3. Administration (controlling user access)<\/td><td>Access control and permissions<\/td><td><a href=\"http:\/\/www.ibm.com\/developerworks\/offers\/lp\/demos\/summary\/r-rbfcontroluseraccess.html\" target=\"_blank\" rel=\"noopener\">Video<\/a><\/td><td><a href=\"http:\/\/public.dhe.ibm.com\/software\/dw\/demos\/rbftut3\/Tutorial_3.pdf\" target=\"_blank\" rel=\"noopener\">Tutorial (176KB)<\/a><\/td><\/tr><tr><td>4. Log Filters (with Apache Ant)<\/td><td>Build output parsing and visibility<\/td><td><a href=\"http:\/\/www.ibm.com\/developerworks\/offers\/lp\/demos\/summary\/r-rbfantbuilds.html\" target=\"_blank\" rel=\"noopener\">Video<\/a><\/td><td><a href=\"http:\/\/public.dhe.ibm.com\/software\/dw\/demos\/rbftut4\/Tutorial_4.pdf\" target=\"_blank\" rel=\"noopener\">Tutorial (208KB)<\/a><\/td><\/tr><tr><td>5. Environment Variables<\/td><td>Parameterization across environments<\/td><td><a href=\"http:\/\/www.ibm.com\/developerworks\/offers\/lp\/demos\/summary\/r-rbfenvironvariables.html\" target=\"_blank\" rel=\"noopener\">Video<\/a><\/td><td><a href=\"http:\/\/public.dhe.ibm.com\/software\/dw\/demos\/rbftut5\/Tutorial_5.pdf\" target=\"_blank\" rel=\"noopener\">Tutorial (414KB)<\/a><\/td><\/tr><tr><td>6. Dot Commands<\/td><td>Advanced execution behavior<\/td><td><a href=\"http:\/\/www.ibm.com\/developerworks\/offers\/lp\/demos\/summary\/r-rbfdotcommands.html\" target=\"_blank\" rel=\"noopener\">Video<\/a><\/td><td><a href=\"http:\/\/public.dhe.ibm.com\/software\/dw\/demos\/rbftut6\/Tutorial_6.pdf\" target=\"_blank\" rel=\"noopener\">Tutorial (798KB)<\/a><\/td><\/tr><tr><td>7. Agent Update<\/td><td>Updating execution agents<\/td><td><a href=\"http:\/\/www.ibm.com\/developerworks\/offers\/lp\/demos\/summary\/r-rbfagentupdate.html\" target=\"_blank\" rel=\"noopener\">Video<\/a><\/td><td><a href=\"http:\/\/public.dhe.ibm.com\/software\/dw\/demos\/ibfagent\/Running_the_Agent_Update.pdf\" target=\"_blank\" rel=\"noopener\">Tutorial (92KB)<\/a><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Typical Build Forge execution workflow<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A common starting pattern is to define a project, attach script-based steps, inject environment values, and run through agents with log-driven pass\/fail outcomes.<\/p>\n\n\n\n<pre class=\"mermaid\">\nflowchart LR\n    A[Define project] --> B[Add steps and scripts]\n    B --> C[Set environment variables]\n    C --> D[Trigger run]\n    D --> E[Agent executes tasks]\n    E --> F[Collect logs and status]\n    F --> G{Run successful}\n    G -- yes --> H[Publish results and notify]\n    G -- no --> I[Fix issues and rerun]\n    I --> D\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Example starter scripts for early projects<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">These examples are generic scripts that can be executed by automation agents in a Build Forge-style pipeline. They align with the source topics (Hello World, Ant builds, and pass\/fail behavior).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Hello World execution step<\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript language-bash\"><span class=\"hljs-meta\">#!\/usr\/bin\/env bash<\/span>\n<span class=\"hljs-keyword\">set<\/span> -euo pipefail\n\necho Hello_from_Build_Forge_agent\ndate -u +%Y-%m-%dT%H:%M:%SZ<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\">Apache Ant build step with environment variables<\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript language-bash\"><span class=\"hljs-meta\">#!\/usr\/bin\/env bash<\/span>\n<span class=\"hljs-keyword\">set<\/span> -euo pipefail\n\nexport APP_ENV=${APP_ENV:-dev}\n<span class=\"hljs-keyword\">export<\/span> BUILD_NUMBER=${<span class=\"hljs-attr\">BUILD_NUMBER<\/span>:-local}\n\nant -f build.xml clean package -Dapp.env=${APP_ENV} -Dbuild.number=${BUILD_NUMBER}<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\">Pass\/fail chain behavior via exit codes<\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php language-bash\"><span class=\"hljs-comment\">#!\/usr\/bin\/env bash<\/span>\nset -euo pipefail\n\n.\/compile.sh\n.\/run-unit-tests.sh\n.\/package.sh\n\n<span class=\"hljs-keyword\">echo<\/span> Pipeline_completed_successfully\n<span class=\"hljs-keyword\">exit<\/span> <span class=\"hljs-number\">0<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">Integration resources across the application lifecycle<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The original article also points to integration guidance for Rational Team Concert, Rational Asset Manager, ClearCase, ClearQuest, and Build Forge adaptors.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Integration resource<\/th><th>Main outcome<\/th><th>Link<\/th><\/tr><\/thead><tbody><tr><td>Rational Team Concert and Build Forge demo<\/td><td>Bridge collaborative lifecycle management and enterprise release engineering<\/td><td><a href=\"http:\/\/www.ibm.com\/developerworks\/offers\/lp\/demos\/summary\/r-rbfrtc.html\" target=\"_blank\" rel=\"noopener\">Demo<\/a><\/td><\/tr><tr><td>Build and deploy automation powered by Jazz<\/td><td>Overview of integration capabilities (source references Build Forge 7.1.3)<\/td><td><a href=\"https:\/\/www14.software.ibm.com\/webapp\/iwm\/web\/signup.do?source=dw-c-wcsdpr&amp;S_PKG=500008194\" target=\"_blank\" rel=\"noopener\">Webcast replay<\/a><\/td><\/tr><tr><td>Build Forge with ClearCase and ClearQuest<\/td><td>Setup and configuration guidance for cross-product integration<\/td><td><a href=\"https:\/\/jazz.net\/library\/article\/677\" target=\"_blank\" rel=\"noopener\">Article<\/a><\/td><\/tr><tr><td>Build Forge Adaptors white paper<\/td><td>Adaptor templates, variable handling, execution control, and notifications<\/td><td><a href=\"https:\/\/jazz.net\/library\/content\/articles\/build-forge\/7.1.2\/adaptors\/RationalBuildForge_Adaptors.pdf\" target=\"_blank\" rel=\"noopener\">White paper (291KB)<\/a><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">What the Rational Team Concert demo specifically covers<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Create a Build Forge environment that stores Rational Team Concert connection information.<\/li><li>Use the JazzJBE adaptor with Rational Team Concert source control and publish build results using Ant tasks.<\/li><li>Set up a Build Forge engine and build definition in Rational Team Concert.<\/li><li>Run a Build Forge project from Rational Team Concert.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Best practices for enterprise adoption<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Start with a small Hello World project before modeling larger release flows.<\/li><li>Standardize environment variables early to avoid environment drift.<\/li><li>Use pass\/fail chains and clear log filters so failures are actionable.<\/li><li>Apply role-based access controls before broad rollout.<\/li><li>Keep scripts in version control and treat Build Forge projects as code-backed automation assets.<\/li><li>Validate older integration links and product compatibility before implementation, especially in modern toolchains.<\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>A practical, structured starting guide to IBM Rational Build Forge based on the original IBM resources. Learn the tutorial sequence, execution workflow, and integration options across the application lifecycle.<\/p>\n","protected":false},"author":1,"featured_media":3660,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[2],"tags":[448,1623,1626,588,1624,1351,1625,92,719,346,1627],"class_list":["post-363","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorised","tag-build-forge","tag-build-forge-updates","tag-ibm-rational-build-forge-updates","tag-integration","tag-new-build-forge","tag-rational-build-forge","tag-rational-build-forge-updates","tag-release","tag-start","tag-updates","tag-whats-new-in-rational-build-forge"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/363","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=363"}],"version-history":[{"count":4,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/363\/revisions"}],"predecessor-version":[{"id":79237,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/363\/revisions\/79237"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media\/3660"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=363"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=363"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=363"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}