Autonomic Computing Toolkit Scenario Guide

Autonomic Computing Toolkit
Solution Installation and Deployment Scenario Guide

Document Number SC30-4092-03

Note

Before using this information and the product it supports, read the general information in Appendix B, Notices.

Third Edition (September 2005)

This edition applies to Release 3 of the Autonomic Computing Toolkit and to all subsequent releases and modifications until otherwise indicated in new drafts.

(C) Copyright International Business Machines Corporation 2005. All rights reserved.
U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.


Contents

Figures

About this guide

  • Changes to this edition
  • Who should read this guide
  • Related publications
  • Accessibility
  • Web sites
  • How to send your comments
  • Introduction

  • Introduction to autonomic computing
  • Introduction to the Autonomic Computing Toolkit
  • Benefits of Solution Installation and Deployment technologies
  • Introduction to the scenarios
  • Working with Solution Installation and Deployment

  • Overview of Solution Installation and Deployment technologies
  • Installable unit
  • Software deployment program
  • Dependency checker
  • Installation database
  • Change manager
  • Touchpoint
  • Hosting environment
  • Root IU
  • Deployment descriptor
  • Features
  • Universal Unique Identifier
  • Installation flow of the component model
  • Solution installation and deployment schemas
  • Scenario design and components
  • Installing the Solution Installation and Deployment samples scenario

  • Solution Installation and Deployment Samples scenario
  • Installing the samples scenario
  • Prerequisites and dependencies
  • Supported platforms
  • Hardware prerequisites
  • Installing the Solution Installation and Deployment samples scenario
  • Uninstalling the Solution Installation and Deployment samples scenario
  • Running the Solution Installation and Deployment samples scenario

  • Activating the console for the scenario
  • Using the console to control the samples
  • Navigation area
  • Work area
  • Samples directory structure
  • Java custom action sample
  • Sample design and components
  • Java custom action control panel
  • Deployment descriptor panel
  • Log view panel
  • IU view panel
  • Running the sample using the console
  • Stopping the sample using the console
  • Re-running the sample
  • Family Full Lifecycle sample
  • Family Full Lifecycle sample design and components
  • Un-install a Fix to the 1.2.0 Base
  • Apply an incremental update to the 1.2.0 base
  • Migrating an incremental update
  • Applying a full update
  • Migrate Full Update
  • Un-install Sample
  • Rerunning the sample
  • Command line operation
  • Java Custom Action sample
  • Family sample
  • Adding Samples to the console
  • Removing Samples from the console
  • Obtaining Solution Installation and Deployment for Development
  • Running the Solution Installation and Deployment FNPIM scenario

  • Overview of the Solution Installation and Deployment FNPIM scenario
  • Before you begin installing the FNPIM sample
  • Prerequisites
  • Supported platforms
  • Running the scenario
  • Uninstalling the scenario
  • Validating the scenario
  • Running the Solution Installation and Deployment InstallAnywhere scenario

  • Overview of the Solution Installation and Deployment InstallAnywhere scenario
  • Before you begin Installing the InstallAnywhere sample
  • Prerequisites
  • Supported platforms
  • Running the scenario
  • Uninstalling the scenario
  • Validating the scenario
  • Appendix A. Getting help, service, and information

    Appendix B. Notices

  • Trademarks
  • Important notes
  • Index


    Figures

    1. Exploiter components diagram
    2. Launch Web console
    3. Navigation area
    4. Work area
    5. Family package layout
    6. Lifecycle sample
    7. Java Logo

    About this guide

    This guide provides information on solution installation and deployment for the Autonomic Computing Toolkit.


    Changes to this edition

    This edition of the Solution Installation and Deployment Scenario Guide includes the following changes:


    Who should read this guide

    This guide is for Autonomic Computing Toolkit users who want to run the Solution Installation and Deployment scenarios and understand how they function.


    Related publications

    The latest softcopy versions of documentation are available on the autonomic computing IBM developerWorks(R) Web site at:

    www.ibm.com/developerworks/autonomic

    The autonomic computing library consists of the following documents:


    Accessibility

    The HTML version of this guide and other related publications is accessibility-enabled for use with the IBM Home Page Reader.


    Web sites

    For the latest news and tips on general autonomic computing topics, go to the autonomic computing Web site at:

    www.ibm.com/autonomic

    You can also download the Autonomic Computing Toolkit, documentation, and access additional information from the developerWorks Web site at:

    www.ibm.com/developerworks/autonomic

    Here you will find information about general autonomic computing concepts, an overview of the Autonomic Computing Toolkit, and most importantly, articles, and tutorials that show you how to apply the tools from the Autonomic Computing Toolkit in real-life situations. After you decide which pieces of the Autonomic Computing Toolkit you need, you can easily download the code right from this Web site.


    How to send your comments

    Your feedback is important to help us provide the highest quality information. If you have any comments about this guide, you can submit them on the IBM autonomic computing Web site at:

    www.ibm.com/developerworks/autonomic

    then select Support for Toolkit forum.


    Introduction

    This chapter gives you an introduction to autonomic computing using the Solution Installation and Deployment scenarios.


    Introduction to autonomic computing

    To satisfy the needs of users, computing systems have become more complex and more costly to install and maintain. Today, system administrators must deal with hundreds of subsystems. With thousands of parameters just to keep this running, administrative costs often far outstrip hardware and software acquisition costs.

    Autonomic computing is about satisfying these needs with dramatically less human administration. Autonomic systems adapt to changing conditions and workloads, heal over errors and failures within themselves, and proactively defend against attack. These systems manage themselves and remove complexity from the lives of administrators and users.


    Introduction to the Autonomic Computing Toolkit

    The Autonomic Computing Toolkit is a collection of technologies, tools, scenarios, and documentation that is designed for users wanting to learn, adapt, and develop autonomic behavior in their products and systems. Scenarios are provided to show how the technologies can be used in realistic situations.


    Benefits of Solution Installation and Deployment technologies

    Solution Installation and Deployment, an IBM Self-Managing Autonomic Technology, enables software solutions to be deployed and supported with reduced human interaction by creating the following common services:

    Using this technology can help you consistently plan for and deploy IBM and non-IBM solutions in less time with fewer resources.


    Introduction to the scenarios

    The Solution Installation and Deployment architecture is demonstrated using a set of scenarios targeting the self-configuring aspect of autonomic computing. These include the following scenarios that focus on different aspects and implementations of the architecture:

    There are five levels of autonomic maturity: basic, managed, predictive, adaptive, and autonomic (see the Autonomic Computing Toolkit User's Guide for more information on autonomic maturity levels). The Solution installation and deployment scenarios aim to be predictive in nature (level 3), enabling the software installation process to require less user intervention. The installation process can predict and alert you when a key dependency is missing, as well as coordinate and track change management actions. This predictive behavior enhances the reliability and maintainability of the system.

    The Samples scenario is a teaching tool, introducing the core components that make up the Solution installation and deployment architecture, and then relating them together to illustrate the benefits of the architecture. It also identifies how installation behavior is defined and carried out, and allows the user to verify each step of the installation by viewing the repository of installed components.

    In contrast, the FNPIM and InstallAnywhere scenarios show you how Solution Installation and Deployment provides true end-to-end packaging and installation services. Both scenarios perform the same installation, but use different installation engine products from an IBM partner, Macrovision.

    Using these scenarios, you will become familiar with the concepts and formats of Solution Installation, an IBM Self-Managing Autonomic Technology. You will see examples of how you can package your own software solutions using these technologies and begin realizing the benefits of a predictive installation process. By describing the solution in advance, you reduce the burden on your customers.


    Working with Solution Installation and Deployment

    This chapter gives an introduction to the Solution Installation and Deployment technologies in relation to scenario operation.


    Overview of Solution Installation and Deployment technologies

    To get the maximum value out of running the scenarios, you should first attain a basic knowledge of the Solution Installation and Deployment technologies. The purpose of the scenarios is to demonstrate the capabilities of Solution Installation and Deployment technology and demonstrate the technology using actual interactive examples. You will see how the installation dependencies are constructed and carried out, and see how these changes affect the results of the installation. There are many other references available that will teach you more about Solution Installation and Deployment. For a start, you can see the main IBM Autonomic Computing Web site at:

    www.ibm.com/autonomic

    Solution Installation and Deployment is a collection of common software packaging and deployment technologies that provides a universal means by which software can be bundled and deployed across most operating environments. In an installation scenario on the predictive autonomic level, it evaluates checks and dependencies of the software that is to be installed as well as dependencies of currently installed software that might be affected by the new installation. An adaptive autonomic solution collects information about a problem, then makes the necessary adjustments to provide a solution.

    The Solution Installation technology creates a baseline for delivering and supporting a component model. Figure 1 illustrates the runtime components: the exploiter components, the Solution Installation components, and the hosting environment components.

    Figure 1. Exploiter components diagram

    This is a graphic of Exploiter Components, including IU, Software deployment program, Solution Installation interface, dependency checker, Installation database, Change manager, Web service interface, Touchpoint, and Hosting environment.

    The scenarios described in this guide refer directly to the following Solution Installation and Deployment terminology:

    Installable unit

    An installable unit (IU) is a software entity that can be deployed to an IT system. This entity could be simple, such as a single module or configuration change, or complex, such as multiple applications across multiple systems. Depending on the architecture of the IU, it contains one deployment descriptor and one or more artifacts to be deployed. The deployment descriptor is an XML file that describes the content of an IU, its checks, and its dependencies. An artifact is a deployable file that defines the required actions to install an IU to a managed resource. Solution Installation and Deployment enables you to define IUs with dependency validation to ensure the integrity of the existing IT environment. The solution installation and deployment technology spans traditional product boundaries by creating a baseline for delivering and supporting a component model. This component-based approach ensures an easy to use, out-of-box experience for customers.

    Software deployment program

    The software deployment program communicates with the Solution Installation components using Solution Installation application programming interfaces (APIs). Macrovision FLEXnet Publisher is an example of a software deployment program.

    Dependency checker

    The dependency checker is an independent component. The dependency checker takes input from the following sources:

    Before installing any artifact, the dependency checker uses this information to determine whether the dependencies are met by the hosting environment. The dependency checker provides methods for determining whether dependencies can be satisfied for change management operations on a specific IU. The dependency checker provides the following functions:

    The following list contains the primary dependencies that can be defined:

    Software
    The versions of the applications that are required on the local machine

    Capacity
    The processor speed or type of card required on the local machine

    Consumption
    The amount of disk space that is required on the local machine

    Property
    The hardware configuration and the version of the operating system required on the local machine

    Installation database

    The installation database refers to the databases and registries that are used during the installation and maintenance of IUs. The installation database holds the following types of data:

    Change manager

    The change manager is a central component of the solution installation and deployment technology. Taking the deployment descriptor as input, the change manager coordinates change management operations across the appropriate hosting environments, utilizing other runtime components such as the dependency checker and communicating with the registry and touchpoints. The primary interface for installation programs is the change manager.

    The change manager does not perform the actual actions of a change management operation. Based on the requested change management operation (create, update, undo, or delete), the descriptor files define the actual actions to be carried out. The change manager passes this information on to the touchpoint associated with the target hosting environment and the touchpoint carries out the actions. However, the change manager does coordinate these operations and tracks their progress and success. If an operation fails, it is the responsibility of the change manager to initiate activities such as backing out the necessary changes to put the system into a known and stable state. In general, the change manager provides the logic to:

    The installation of optional components of an installable unit is supported by features. Feature processing can be quite complex because it introduces new levels of interdependencies. Installation groups are mechanisms for grouping commonly associated features. For instance, by choosing to install a specific installation group, a predefined set of features is selected. After the user selects features, the installation program determines which installment units to deploy.

    Touchpoint

    A touchpoint implements the manageability interface on behalf of a hosting environment. Solution Installation runtime components use the touchpoint to query properties and information about objects hosted by the hosting environment.

    The touchpoint also carries out specific actions passed into it by the Solution Installation runtime. There is one touchpoint for each hosting environment in a system.

    Hosting environment

    A hosting environment is a container for a set of hosted resources. Each instance of a hosting environment contains properties that can be queried through the touchpoint interface, or through the objects it is hosting.

    Examples of hosting environments include the operating system, IBM WebSphere(R) Application Server, a database, or other layered applications. For the operating system hosting environment, such properties as available disk space, number of microprocessors and their speed, total memory, and OS version are specified.

    Root IU

    The Solution Installation and Deployment architecture defines a Root IU as the smallest unit of packaging. Root IUs have features, but solution module definitions (SMDs), container installable units (CIUs), and smallest installable units (SIUs) do not. A single solution is likely to be made up of multiple packages (Root IUs) each containing multiple SMDs, CIUs and SIUs. A root IU defines the deployable units of software in the solution. These units of software are a set of conditioned IUs. The conditioned IUs that can be defined in a root IU are smallest IUs (SIUs), container IUs (CIUs), or solution modules. These IUs can be defined as either base content or selectable content.

    Deployment descriptor

    Every deployment descriptor is a root IU. This root IU can contain or reference other IUs within its definition. The deployment descriptor for the root IU is defined by the rootIU element. Each deployment descriptor contains one and only one rootIU element. The rootIU element contains information about the deployment descriptor and the schema against which the descriptor is created. The deployment descriptor has one or more IU elements with one or more feature and installation groups, a topology element, and a files element that in turn has one or more file elements.

    Features

    Features provide the mechanism that enables a user to select installable units (IUs) to deploy from within the root IU. For example, when you are installing a new product you can choose a typical or custom installation. If you choose a custom installation, the first question you must ask yourself is what features do you want to install: each feature corresponds to an IU, which includes an artifact and descriptor. The artifact can be thought of as the payload that Solution Installation and Deployment technologies deliver. A feature can contain one more nested subfeatures and IUs. Features are associated with IUs. For each defined feature, the defined IU can be partitioned into required content and selectable content. Required content indicates the IUs that have been deployed independent of what the user selects. Selectable content indicates that the user can select content and IUs are deployed based on what the user selects. During the installation process, features are registered. Because features are registered, you can define dependency checks against the features. Each feature has a unique name within a root IU. The change manager uses the unique name to process the feature. In the same way that you can perform a custom installation of a program by selecting options, features support the installation of optional components of an IU. Feature processing can be quite complex because it introduces new levels of interdependencies. Installation groups are mechanisms for grouping commonly associated features. For instance, by choosing to install a specific installation group, a predefined set of features would be selected. Keep in mind that Solution Installation and Deployment technology keeps track of not only these features but any dependencies associated with them.

    Universal Unique Identifier

    The Universal Unique Identifier (UUI) element is a required element that is the unique identifier for the root IU during its life cycle. When an IU is modified during its life cycle, for example, when it is updated, the UUI remains the same. This feature allows Solution Installation and Deployment to keep track of different versions of the product

    Installation flow of the component model

    An installation that uses Solution Installation begins with the software deployment program. The software deployment program locates the IU within the media used to deliver the product (typically a CD or DVD). A pointer to the IU is passed to the dependency checker for loading. The dependency checker locates the deployment descriptor within the IU and parses its contents.

    The software deployment program queries the IU for the software name, along with any installation groups and features that can be selected. The software deployment program presents this information to the user and records the choices made by the user. Based on the list of features selected, the software deployment program queries the IU for variables that can be set by the user (for example, an installation directory).

    With the complete list of selections available, the software deployment program asks the dependency checker to evaluate the installation of this package. The dependency checker compares the requirements of the selected features against the hosting environment into which it is installing. To do this, the dependency checker queries the touchpoint of the hosting environment, and queries the installation database (depending on the type of check), for the current information, and checks that information against the information which is dictated by the deployment descriptor. Typical requirements check for space, operating system or prerequisite software. A list of results is returned to the software deployment program.

    Assuming that overall requirements are positive, the software deployment program calls the change manager to perform the actual installation. The change manager passes the installation artifacts to the touchpoint for implementation. The touchpoint performs each action described in the install artifacts. Typical actions include creating directories and copying files to the target system, updating a file, or adding keys to a registry.

    When the actions are complete, entries are created in the installation database for each IU installed and relationships are created among the IUs where applicable. The change manager returns to the software deployment program indicating a successful change.

    Solution installation and deployment schemas

    The schemas used for the solution installation and deployment technologies are documented in the following specifications:

    Both specifications are included in the Autonomic Computing Toolkit and are available in the Autonomic Computing Information bundle.

    These documents provide the background information needed to understand the Solution Installation and Deployment scenarios.

    IUDD specification

    The purpose of this specification is to define the schema of an XML document describing the characteristics of an IU of software that are relevant for its deployment, configuration, and maintenance. The XML schema is referred to as the IUDD schema.

    IUDDs are intended to describe the aggregation of IUs at all levels of the software stack, including middleware products aggregated together into a platform, and user solutions composed of application-level artifacts which run on such a platform. The XML schema is flexible enough to support the definition of atomic units of software (smallest installable units) as well as complex solutions.

    A solution is any combination of products, components or application artifacts addressing a particular user requirement. This includes what would traditionally be referred to as a product offering (for example, a database product), as well as a solution offering (e.g. a business integration platform comprising multiple integrated products), or a user application (for example, a set of application artifacts like Java Platform 2 Enterprise Edition (J2EE) applications and database definitions). All the software constituents of a solution can be represented by a single IUDD as a hierarchy of installable unit aggregates. The top-level aggregation is the root installable unit. In addition to the installable units that comprise a solution, the IUDD also describes the logical topology of targets onto which the solution can be deployed.

    This specification defines:

    Smallest Installable Unit (SIU)
    The elementary unit of software

    Configuration Unit (CU)
    The elementary unit of configuration

    Container Installable Unit (CIU)
    An aggregated IU that is deployed entirely into a single target hosting environment

    IU package format specification

    An IU is a logical component that can be selected for installation. An IU package (or packaged installable unit) contains files to be installed, files that implement change management operations, and a set of manifest files which include a deployment descriptor that describes the install characteristics of the IUDD, and a media descriptor that describes the binding (or physical locations) of the files. This document describes the IU package format.

    The main objective of this document is to define a common IU package format consistent with the solution installation architecture. Packages in this format need to be installed in local or distributed environments. Different package types are defined for a single zip file, fixed-sized removable media, and network location. Other formats may be accommodated in the future. IU packages can be used with packages in existing packaging standards.

    This document specifies the common IU package format and related design. In particular, the following areas will be covered in this document:


    Scenario design and components

    The Autonomic Computing Toolkit scenarios demonstrate how you can use the autonomic solution installation and deployment technologies to improve the packaging and installation processes for software solutions.

    The Samples scenario bundle must first be installed before the samples can be executed. The installation of the bundle establishes whether the Integrated Solutions Console is to be used to manage and control the samples. Once the Samples scenario is installed, each sample can then be executed and analyzed.

    The Macrovision scenarios operate slightly different than the Samples Scenario in that the installation of the bundle is the actual scenario. These bundles are examples of real packaging and installation implementations. Both scenarios install three IUs, each one containing a single file. The installation bundle is in the form of a Solution Installation and Deployment Solution module bundle. The bundle contains the solution module descriptor XML file (PackagedIU.xml) and the files that are to be installed. The installation executable file contains the solution installation and deployment runtime. First, the installation logic checks for the existence of the solution installation and deployment runtime. If it is not present on the system, the solution installation and deployment runtime is automatically loaded.

    Then the installation logic prompts for the location of the bundle file and passes it to the solution installation and deployment runtime. The solution installation and deployment runtime reads the XML descriptor and checks the dependencies that are specified in the descriptor. The installation logic, for the purposes of this demo, echoes the dependency results to an Integrated Solutions Console panel so the results can be observed. If a dependency fails, the user is notified and corrective action can be taken. After checking dependencies, the installation logic reads the XML descriptor to find out what directories must be created and what files are to be installed. The files are then extracted from the bundle and copied to the file system. The installation logic then displays a completion page, indicating that the installation process has finished.


    Installing the Solution Installation and Deployment samples scenario

    This chapter contains information on installing the Solution Installation and Deployment Samples scenario.


    Solution Installation and Deployment Samples scenario

    The solution installation and deployment technologies address many aspects of complex packaging and installation solutions. For this reason, a set of samples have been created with the purpose of isolating specific features of the technology and demonstrating them in a meaningful and interactive way.

    All the samples are managed and controlled using an Integrated Solutions Console component plug-in. The same plug-in is used to control the Problem Determination scenario, which is also available in the Autonomic Computing Toolkit. This provides similar control over the various scenarios presented in the Toolkit. The samples do not require the Integrated Solutions Console; however, it is the preferred method for demonstrating in the Autonomic Computing Toolkit. Later sections will describe how to run the samples outside of the console using command line operations.

    This Solution Installation and Deployment scenario contains the following samples:

    Java Custom Action Sample
    To show how installation specific actions can be performed using Java methods to accommodate a variety of installation needs

    Family Full Lifecycle Sample
    To demonstrate a series of Solution Installation and Deployment operations to illustrate a typical software product life cycle

    These samples show how the Solution Installation and Deployment technology can be used in realistic situations to achieve self-configuration as defined by the autonomic computing architecture


    Installing the samples scenario

    Before installing the Samples scenario, you will need to make certain that you have completed all prerequisites and dependencies.

    Prerequisites and dependencies

    The samples for Solution Installation and Deployment are included in the Solution Installation and Deployment Samples scenario bundle; it provides the customized components to establish the specific Samples as well as demonstration support code to actually control the Samples operation.

    The Solution Installation and Deployment Samples scenario can be implemented using the Integrated Solutions Console bundle. This bundle is available in the Autonomic Computing Toolkit. Install the Integrated Solutions Console bundle first followed by the Solution Installation and Deployment Samples bundle. You will need the Integrated Solutions Console user ID and password to run the Samples from the console.

    If the Integrated Solutions Console bundle has already been installed on the system for either development purposes, or to run the Problem Determination scenario, then there is no need to obtain and install the bundle again. Simply install the Solution Installation and Deployment Samples scenario to run the Samples.

    To run the Samples by command line does not require the Integrated Solutions Console bundle to be installed. The installation panels for the Samples Scenario allows the user to choose which method is to be used to run the samples.

    Supported platforms

    For supported platforms, see www.ibm.com/developerworks/autonomic/table.html

    Hardware prerequisites

    See the Autonomic Computing Toolkit User's Guide for disk space and platforms supported.

    Installing the Solution Installation and Deployment samples scenario

    To install the Solution Installation and Deployment Samples scenario, perform the following steps:

    1. Verify the system requirements needed to run the scenario (see Prerequisites and dependencies).
    2. Double-click the executable bundle file SI_Samples_v3-0-0 _win32.exe, SI_Samples_v3-0-0_linux.bin, SI_Samples_v3-0-0_aix.bin, SI_Samples_v3-0-0_solaris.bin to begin the installation. The Welcome panel appears.
      Note:
      The IBM OS/400(R) installer supports installation in command line mode only. Invoke the installer using the following command and follow the instructions to install the package:

      java -jar SISamples_v3-0-0_os400.jar -console

      Note:
      The installer should be invoked using Java 1.4.2 only.
    3. Click Next. If the Samples are already installed on the system, an error message will appear. To correct this problem, perform the following steps:
      1. Click Cancel on the error message panel.
      2. Click Yes to exit.
      3. Go to Uninstalling the Solution Installation and Deployment samples scenario and perform the appropriate procedure to uninstall the Samples.
    4. Accept the terms on the License panel and click Next, or do not accept and cancel the installation. The next panel shows the two available installation types. Select Install files and setup the scenario on ISC to run the scenario using a web console and the optional command line operations. Select Install without setting the scenario on ISC to use only command line operations.
    5. Select Yes to indicate that the Integrated Solutions Console will be used to exercise the samples, and that the install is to check for the presence of the Console before installing the Samples. Select No to indicate that the Samples will be executed using the command line and not to check for the Integrated Solutions Console.
    6. Click Next. The install location panel displays the default installation location. Change the location if the default is not acceptable, and then click Next on the installation location panel.
    7. A summary panel is displayed. Review the summary and click Install if the summary is acceptable, or click Back if modifications need to be made.
    8. If you have chosen to use the Integrated Solutions Console, the Deploy SI Samples panel requires the Integrated Solutions Console Administrator user ID and password to be entered. Enter the user ID and password and click Enter.
    9. The samples are then installed on the system in the installation location. The installer has the option to view the Samples readme file when exiting the installation by selecting the View Readme check box. Click Finish when the installation process has completed.
      Note:
      There is also an option to launch the Integrated Solutions Console.

    Uninstalling the Solution Installation and Deployment samples scenario

    To uninstall the Solution Installation and Deployment Samples scenario, perform the following steps:


    Running the Solution Installation and Deployment samples scenario

    This chapter describes how to run the Solution Installation and Deployment Samples scenario. Running the samples with the Integrated Solutions Console is described first, followed by using the alternative command line method.

    If you are using the Integrated Solution Console, you must activate it before control of the scenario can begin.


    Activating the console for the scenario

    In order for the samples to function in the Integrated Solutions Console, the ISC_Portal server must be started.

    Note:
    This server is started when the Integrated Solutions Console is installed. If the system is rebooted, the ISC_ Portal server is in a stopped state and will need to be restarted.

    In order to start the server, run the following commands from the Integrated Solutions Console/AppServer/bin directory on a command line:

    startServer ISC_Portal

    or use the provided shortcuts, shown below, to both start and stop the required server:

    Figure 2. Launch Web console

    Launch Web console

    To activate any of the samples, perform the following steps:

    1. Go to: http://host_name:PortalServer.Port/ibm/console
      Note:
      The PortalServer.Port value can be found in the ISC_INSTALL_LOCATION/runtime/isc.properties file, or use the provided shortcut titled Launch web console.
    2. Log on to the console using the Integrated userID and password.
    3. Expand the Autonomic Computing Scenarios folder, on the left side of the console.
    4. Expand the Solution Installation and Deployment Samples folder.
    5. Expand the Samples folder.
    6. Select a sample to run by choosing the appropriate folder, either the Java custom action sample or the Family Full Lifecycle sample.

    Using the console to control the samples

    The same operational look and feel is shared among all the samples when using the Integrated Solutions Console. This is accomplished by having the Integrated Solutions Console divided into two major screen areas: Navigation on the left and Work on the right. The navigation area is a standard directory structure tree to allow drilling down to specific Solution Installation and Deployment Samples. The work area provides the user interface interaction with the Samples.

    Navigation area

    The navigation area allows the user to drill down to the specific scenario of interest. If the solution installation and deployment sample scenario has been installed, the navigation area will contain a root level folder called Autonomic Computing Scenarios. If this folder does not appear on the navigation area, the samples have not been successfully installed. See Installing the samples scenario and Uninstalling the Solution Installation and Deployment samples scenario for installing and uninstalling the samples.

    Figure 3. Navigation area

    Navigation area

    Expanding the Autonomic Computing Scenarios folder reveals the scenarios that have been installed from the Autonomic Computing Toolkit. For this release of the Toolkit, two scenarios are available; the Problem Determination scenario and the Solution Installation and Deployment Samples scenario. Each installed scenario will be represented as an expandable category under the Autonomic Computing Scenarios folder. Expanding the Solution Installation and Deployment Samples category shows two additional nodes; Solution Install Scenario Description and Samples. Their functions are as follows:

    Work area

    Use the work area to control and display the sample. The work area concept is similar for all scenarios and samples; however, the actual content displayed may differ slightly to accommodate the uniqueness of each scenario or sample.

    Figure 4. Work area

    Work area

    The work area for all samples in the scenario consists of five portlets. The tasks run and the information displayed by these five portlets is similar for all samples.

    Description panel
    Gives an overview of what is being deployed in the portlets, as well as instructions on how to proceed through the samples.

    Control panel
    Allows the user to control the sample demonstration.

    Deployment descriptor panel
    Displays links through which users can view the deployment descriptor XML files for the sample.

    Log view panel
    Dynamically displays the sample log file as the sample is running.

    IU view panel
    Displays the formatted content of the Solution Installation and Deployment registry.

    Description panel

    Each sample has multiple steps that the user controls to proceed through the scenario. The Description panel gives a summary of each of the steps, identifying the Solution Installation and Deployment actions that have occurred. Useful links are also included, where applicable, that provide additional details.

    All description panels include the following sections:

    Control panel

    Use the control panel to start the selected sample by performing an install of the sample, and to stop the selected sample by uninstalling the sample. The control actions appear in the Control panel as links. Selecting a link invokes the corresponding start or stop action. At any point in time, only those links that are allowed will be enabled, depending on the state of the sample.

    Deployment descriptor panel

    The Deployment Descriptor panel contains one or more links to the specific descriptor files that relate to the selected sample. A short description accompanies each descriptor file link identifying it purpose. Selecting a descriptor link displays the contents of the deployment descriptor file in a separate window. The user can view the descriptor file while the sample is executing. Each sample has unique descriptor files.

    Log view panel

    Each sample has a unique log file that is generated dynamically while the sample executes. This log file contains key information on the progress of the sample and is mirrored to the Log View panel for the user to observe while the sample is running. The Log View panel is automatically updated during each phase of the sample to illustrate results of events and actions as they take place. The information in this panel is updated sequentially, with the latest events and actions occurring at the bottom of the panel.

    IU view panel

    The UI View panel allows the installed IUs to be examined as each sample is executed to verify the Solution Installation and Deployment operation. This panel is automatically updated at the completion of each command during the execution of the sample. This panel displays the output of the listIU command. ListIU is a command provided as part of the Solution Installation and Deployment technology that retrieves IU information from the Solution Installation and Deployment repository. By dumping the contents of the repository, the user can verify the success of each installation.

    The information shown in the IU View panel has been filtered and formatted for the Integrated Solutions Console samples scenario. The complete raw information can be observed by using the command line operation:

    <SI_SAMPLES_HOME>/bin/listIU.bat(sh)

    and observing the results in the listIU.out file in the same directory.

    Samples directory structure

    The directory structure established for all samples is described below:

    SolutionInstallSamples
    |
    +---	_uninst
    +---	bin
    |   	+---ISCComponent
    |  		|	 			deploy_scicomp.bat(sh)
    |   	| 				ISC_sisamples.war
    |   	|	 			LaunchWebConsole.htm
    |   	| 				removesicomp.bat(sh)
    |   	| 
    |		  +---configure.bat(sh)		
    |	       delete.bat(sh)
    | 	      fix.bat(sh)
    | 	      install.bat(sh)
    | 	      listIU.bat(sh)
    | 	      listIU.out
    | 	      migrate.bat(sh)
    | 	      rollback.bat(sh)
    | 	      samples.properties
    | 	      setenv.bat(sh)
    | 	      siconfig.properties
    +---docs
    |       ACTK_SIScenario.pdf
    |
    +---lib
    |       sisamples.jar
    |
    +---logs
    +---readme-toolkit
    |       readme.htm
    |
    +---samples
        +---java_custom_action
        |       java_custom_action.zip
        |       MyCustomAction.class
        |       sample.log
        | 
        |
        +---family
    						    		Daughter_1.2.0_Fix.zip
    							    	Daughter_1.2.0_Fix.zip
    						    		Family_1.2.0_Base.zip
    					    			Family_1.5.0_Incremental.zip
    					    			Family_2.0.0_Base.zip
    					    			Response_1.2.0.properties
    					    			Response_1.2.0_fix.properties
    						    		Response_1.2.0_init.properties
    				     		 Response_1.5.0.properties
    				 	    	 Response_2.0.0.properties
    				     	 	Response_2.0.0_migrate.properties
    				  	    	sample.log
     
    

    Each sample subdirectory (java_custom_action and family) contains all the artifacts needed to run the sample and to display the information in the work area of the Integrated Solutions Console.

    The following artifacts will be placed in each sample's subdirectory:

    package.zip
    The Solution Install package containing the deployment descriptor and the artifacts to be installed for a specific sample. Each sample will have one or more unique package.zip files. The zip file is used as input for an installation package.

    sample.log
    This file is automatically created when the sample is installed/uninstalled. Each sample generates a separate sample.log file. The sample file is overwritten each time an install or uninstall of a sample occurs.

    In addition to the sample subdirectories, the scenario home\bin and \lib will also contain the following files:

    samples.properties
    This file will contain the following information for each sample:
    samplename.dd=(comma separated list of deployment descriptor files)
    samplename.information=(Name of the information file).

    listIU.bat
    This script will invoke a Java program list.IU.jar (the sample logfile is overwritten each time an install or uninstall of a sample occurs) to fetch contents of the Solution installation and deployment repository. This script will accept one command line argument
    arg1 : Path of the out file where the results are to be directed.
    (setenv script of Solution Installation will be invoked to set up the classpath)

    listIU.out
    This file is used to populate the Solution Installation registry information panel on the Integrated Solutions Console. This file is refreshed when a sample is installed or uninstalled from the control panel.

    sisamples.jar
    This will contain the Java classes written specifically for the scenario.

    install.bat
    The batch file will install a sample. The sample can be installed by invoking the following command
    Java -Ddebug=true com.ibm.ac.si.cm.cli. ManageIU -o install -r sample1 -p package.zip
    

    uninstall.bat
    The batch file will uninstall a sample. The sample can be un-installed by invoking the following command:
    Java -Ddebug=true com.ibm.ac.si.cm.cli. ManageIU -o delete -r sample1 -p package.zip
    

    update.bat
    This batch file will apply the fix for the Lifecycle sample.

    listIU.out
    This file is used to populate the Solution Installation registry information panel on the Integrated Solutions Console. This file will be refreshed when a sample is installed/uninstalled from the control panel.

    Java custom action sample

    This sample demonstrates the usage of the Java Custom Action feature of the Solution Installation and Deployment technology. This sample demonstrates only one possible custom action that can be performed using this feature. By running and examining this sample, users will understand how to utilize the Java custom action feature in their own installations.

    Sample design and components

    The Java custom action sample shows how to create a new directory with a text file as part of a typical installation. The sample consists of a single zip file containing the files to be installed as an Installable Unit (IU), two XML files that define the installation characteristics and the Java custom action to be executed, and a Java class to perform the custom task.

    Contained within the zip package are the following files:

    By installing the sample, the defined Java custom action for this sample is executed by the installer. The directory created by the Java custom action is <SI_SCENARIO_HOME>/samples/java_custom_action/jca_test and the file created in that new directory is named jca_test.txt.

    The user interacts directly with the sample by:

    The Java Custom Action sample is included in the Solution Installation and Deployment Samples Scenario bundle. An installation option lets the user choose the method of operation for the samples. Choosing to run the samples using the console requires that the Integrated Solution Console be installed.

    The Integration Solutions Console must be activated before control of the sample can begin. See "Activating the console for the scenario". To begin running the sample, navigate to the Java Custom Action Control panel.

    Java custom action control panel

    The Java Custom Action sample uses the following control links to operate the sample:

    The following steps run when you click Install Sample.

    1. Run install script (<SI_SCENARIO_HOME>/bin/install.bat(sh)) to install the sample and redirect the output (overwrite) to the sample log file for display in the Log View panel.
    2. Run listIU and redirect the output (overwrite) to the listIU.out file for display in the IU View panel.
    3. Disable the Install link and enable the Un-install link in the control panel.

    The following steps run when you click Un-install:

    1. Run uninstall script (<SI_SCENARIO_HOME>/bin) to uninstall the sample and redirect the output (overwrite) to the log file for display in the Log View panel.
    2. Run listIU and redirect the output (overwrite) to listIU.out file for display in the IU view panel.
    3. Disable the Un-install link and enable the Install link in the control panel.

    Both the Install and Un-install links invoke the following command to install or uninstall each sample:

    Java -Ddebug=true com.ibm.ac.si.cm.cli.ManageIU -o install/delete -r samplename
     -p packageFile 
     
    

    where:

    Install/delete indicates whether the sample is to be installed or removed.

    SampleName identifies the text string stored in the Solution installation repository and used by the listIU program to retrieve the IU content specific to the sample.

    PackageFile indicates the name of the package file that contains the deployment descriptors and the artifacts to be installed.

    The Solution Installation and Deployment setenv script will be invoked to set up the class path.

    Deployment descriptor panel

    The Java Custom Action sample uses two descriptor files:

    The descriptor files can be visually correlated with the Log view panel output.

    Log view panel

    The Log view panel is used to display the events and actions taken during the installation and un-installation of the Java custom action sample.

    Installing the Java custom action sample yields the following log view output:

    --> ManageIUInstaller started
    Primary Operation is: CREATE
    --> Constructing MediaReader. URI is: java_custom_action.zip
    --> Running Parse Deployment Descriptor via Dependency Checker
    --> Getting Target Hosting Environment.
    --> Running checkSystem...
    --> Executing ChangeManager Change() method
    [ManageIUInstaller has received a change Event: SUBMITTED ]
    [Total Ops: 0, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 1, Total Completed: 0, Total Errors: 0]
    --> ChangeManager Change() method returned to calling program (ManageIU)
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 1, Total Completed: 0, Total Errors: 0]
    Set context = jca_test/jca_test.txt 
    install location = jca_test 
    Executing My Custom Action Code 
    Get Context = jca_test/jca_test.txt 
    [ManageIUInstaller has received a changeCompleted Event: COMPLETED]
    [Total Ops: 1,Total Completed: 1,Total Errors: 0]
    --> ChangeManager Touchpoint and CE Thread completed.
     
    Status of CM Operations
     
    Java Custom Action
    StartTime: 8/12/05 4:50 PM
    EndTime: 8/12/05 4:50 PM
    CMOP: Create
    Errors: []
    State: COMPLETED
     
     
    

    Note that the Primary Operation is Create for the installation, and java_custom_action.zip is the install package being operated on. The change management operation (CMOP) indicates that the IU, java_custom_action, now has a status of Create. This is the only IU in the java_custom_action package.

    ManageIU
    A sample program that can be used to invoke change management operations and is the client installer for the samples, ManageIU takes as a parameter one of the operations. For a complete installation, you may need to invoke more than one operation. For instance, you might use a Create operation to perform the physical installation of a software package and then perform an InitialConfiguration operation to complete the configuration to ensure that the software package is ready to be started and used.

    MediaReader
    When you build the installation program, the developer must create a MediaReader object that contains information about the package to be installed. This information consists of the location of the files, the type of media on which they are located, and provide a request handler. The request handler allows for real-time communication between the Solution Installation technologies and the installation program.

    Parse Deployment Descriptor via Dependency Checker
    Dependencies are defined in the deployment descriptor and available in the parsed deployment descriptor object (IUDD). Dependencies are checked against a change management operation. The operation could be create, delete, or update, for example. In this example, we are dealing with the create operation only.

    IUDD
    Validates an IU deployment descriptor before using it to perform a change management operation. All the software constituents of a solution can be represented by a single Installable Unit Deployment Descriptor (IUDD), described below, as a hierarchy of installable unit aggregates. The top-level aggregation is the root installable unit. In addition to the installable units that comprise a solution, the IUDD also describes the logical topology of targets onto which the solution can be deployed.

    RootIUTypeID
    A RootIUTypeID is used for uniquely identifying the IU deployment descriptor.

    Change Manager
    The change manager does not perform the actual actions of a change management operation. Based on the requested change management operation (create, upgrade, delete, as examples), the descriptor files will define the actual actions to be carried out. The change manager passes this information on to the touchpoint associated with the target hosting environment and those actions will be carried out by the touchpoint. However, the change manager does coordinate these operations and tracks their progress and success. If an operation fails, it is the responsibility of the change manager to then initiate activities such as backing out the necessary changes to put the system into a known and stable state.

    Target hosting environment
    This is the environment where a package is installed. It could be an operating system, a configured application server within a WebSphere cell, a database product.

    Uninstalling the Java Custom Action sample yields the following output:

    --> ManageIUInstaller started
    Primary Operation is: DELETE 
    RootTypeID target is: RootIUTypeID[CC05DC31804627BBA6E6661C48BF1A81,1.2]
    --> Running checkSystem...
    --> Executing ChangeManager Change() method
    [ManageIUInstaller has received a change Event: SUBMITTED ]
    [Total Ops: 0, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 1, Total Completed: 0, Total Errors: 0]
    --> ChangeManager Change() method returned to calling program (ManageIU)
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 1, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a changeCompleted Event: COMPLETED]
    [Total Ops: 1,Total Completed: 1,Total Errors: 0]
    --> ChangeManager Touchpoint and CE Thread completed.
     
    Status of CM Operations
     
    Java Custom Action
    StartTime: 8/12/05 4:53 PM
    EndTime: 8/12/05 4:53 PM
    CMOP: Delete
    Errors: []
    State: COMPLETED
     
     
    

    Note that the primary operation is delete, and the operation is being performed on the RootIU. The change management operation indicates that the Java custom action IU has successfully been deleted.

    IU view panel

    The IU view panel is automatically refreshed at the completion of each action invoked by the control panel.

    Installing the Java Custom Action sample yields the following output:

    -----------------------------------------------------
    JAVACUSTOMACTION
    -----------------------------------------------------
     
    Listing Requested IUInstances.
    Number of instances = 2
     
    Instance 1
    Type : Software Instance
    Version : 1.2
    Subtype : IU
    Name : Java Custom Action
    Version : 1.2
    UUID : 7F48A5596BF97B1676D7AD8DB5634BD1
     
    Instance 2
    Type : Software Instance
    Version : 1.2
    Subtype : Root IU
    Name : Java Custom Action Package
    Version : 1.2
    UUID : CC05DC31804627BBA6E6661C48BF1A81
     
     
    

    The information shown in the View IU panel has been filtered and formatted for the Integrated Solutions Console panel . The complete raw information can be observed by using the command line

    <SI_SAMPLES_HOME>/bin/listIU.bat(sh)

    and observing the results in the listIU.out file in the same bin directory.

    Uninstalling the Java Custom Action sample yields an output with no JAVACUSTOMACTION entries since they have been removed.

    The View IU panel is empty.

    Running the sample using the console

    The Java Custom Action sample is controlled by installing it and uninstalling it. In the Control panel for the Java Custom Action, click Install Sample to begin the sample operation. The sample runs to completion automatically, periodically refreshing the console panels during the process. After installation has completed, the following panels on the console are refreshed as a result of the installation:

    After the sample is installed, the Install Sample link is disabled, and the Un-install Sample link is enabled.

    Stopping the sample using the console

    In the control panel for the Java Custom Action, click Un-install Sample to remove the sample. The sample runs through the uninstall process and completes automatically. After the uninstall has completed, the following panels on the console are refreshed: as a result of the installation:

    After the sample is uninstalled, the Un-install Sample link is disabled, and the autonomic manager Install Sample link is enabled. Uninstalling the sample does not remove the new directory (jca_test) and the new text file (jca_test.txt) since a complete uninstall artifact has not been provided as part of this sample. Refer to the Family sample for an un-installation artifact demonstration.

    Re-running the sample

    The sample can be rerun at any time by performing another install. If the sample is currently installed (Install Sample link is not enabled), click Un-install Sample to remove the sample and then click Install Sample.


    Family Full Lifecycle sample

    The Lifecycle sample was developed to demonstrate a full software life cycle of a solution offering for developers and software package authors utilizing Solution Installation and Deployment technologies. It will demonstrate the following typical life cycle actions:

    Family Full Lifecycle sample design and components

    The sample consists of four Solution Install packages (.zip files) which contain the files to be installed at each phase of the life cycle, and the XML files that define the installation characteristics of each part of the life cycle being demonstrated

    The user interacts directly with the sample by:

    This scenario demonstrates the full life cycle of a software offering based on members of a family. The entire scenario consists of the following four packages:

    Each package is broken down in Figure 5.

    Note:
    The versioning used in this scenario is not indicative of what a normal fixpack or refresh might use, but was chosen for readability.

    Figure 5. Family package layout

    Family package layout


    In summary, the base 1.2.0 package contains two root level features (Parents and Children), one of which (Parents) contains two subfeatures (Dad and Mom). Children, Dad, and Mom features each contain one IU. The objective is to demonstrate a path that will get to the 2.0.0 level where we would have the same number of features, but with an additional IU as part of Children, while also introducing a new feature available for installation.

    To better correlate this life cycle sample with a real product scenario, consider the Family IU to be a product with a set of features (optional components of that product). This product is installed and configured as part of an initial deployment. Later, a fix is required to one component of the product. The fix is installed but it later turns out to have some negative effects and is removed. Sometime later, a fixpack (incremental update) becomes available for the product. The fixpack happens to include some new function (maybe a new language pack). The fixpack is applied to the product. Again, configuration might be required and in our case, we assume some migration of data was needed with the fixpack. At some point later, a complete refresh is available for the product. The refresh is applied and each of the components is replaced. Finally, the product is no longer needed and is uninstalled.

    Figure 6. Lifecycle sample

    Lifecycle sample

    The sample can be run using the Integrated Solutions Console found in the Autonomic Computing Toolkit, or from the command line. The Solution Installation and Deployment Samples Scenario bundle contains the Lifecycle sample, and requires that the Integrated Solutions Console be installed.

    Family Full Lifecycle control panel

    The Lifecycle sample uses the following control links to operate the sample:

    Family 1.2.0 Install V1.2.0
    Starts the scenario by initiating the installation of the sample

    Family 1.2.0 Configure Base
    Performs the required configuration of the base 1.2.0 installation.

    Family 1.2.0 Install fix
    Installs a fix on the 1.2.0 base

    Family 1.2.0 Un-install fix
    Uninstalls the previous fix from the 1.2.0 base

    Family 1.5.0 Install Incremental Update
    Installs a regularly scheduled update to the 1.2.0 base

    Family 1.5.0 Migrate Update
    Migrates the update change on the 1.2.0 base

    Family 1.5.0 Un-install V1.2.0
    Stops the scenario by uninstalling the 1.2.0 base

    Family 2.0.0 Install Full Update V2.0.0
    Installs a new version of Family (v2.0.0) over the 1.2.0 base

    Family 2.0.0 Migrate to V2.0.0
    Migrates the new 2.0.0 version

    Family 2.0.0 Un-install V2.0.0
    Stops the scenario by initiating the un-installation of the sample

    The links are only enabled according to how a typical software product life cycle might occur. For example, the Family1.2.0 uninstall link will not be enabled until the Family1.2.0 base has been installed. Not only does this give control over how the sample can be executed, but it also provides alternate paths that the life cycle might take. This allows the user to study a variety of path options.

    Other than enabling and disabling the various control links, this control panel does not change during the operation of the sample.

    The sample can be executed using the Integrated Solution Console found in the Autonomic Computing Toolkit, or from the command line. The Solution Installation and Deployment Samples Scenario bundle contains the Lifecycle sample, and requires that the Integrated Solution Console be installed.

    In addition to be installed, the Integration Solutions Console must be activated before control of the sample can begin. Navigate to the Lifecycle Control panel to begin running the sample.

    Family full life cycle deployment descriptor panel

    The Family full life cycle sample uses the following descriptor files:

    In addition, this sample provides a link that displays the complete list of descriptors and the relationships between them in a content specific layout.

    The Deployment Descriptor panel remains unchanged throughout the course of the sample. The links are always enabled, independent of which part of the life cycle sample is being executed.

    Log view panel

    The Log View panel is used to display the events and actions taken during the install and uninstall of the Family full life cycle sample. It is dynamically updated as each control link is invoked from the Control panel and the packages of the Family product applied. The exact content of the Log View panel will be discussed in the next section that describes each phase of the Family full life cycle sample.

    IU view panel

    The IU View panel is used to verify each phase of the Family full life cycle sample. It is dynamically updated as each control link is invoked from the Control panel. The exact content of the IU View panel varies depending on which phase of the Family full life cycle sample is being executed, and is discussed in the next section.

    The information shown in the View IU panel has been filtered and formatted for the Integrated Solutions Console panel. The complete raw information can be observed by using the command line:

    <SI_SAMPLES_HOME>/bin/listIU.bat(sh)

    and observing the results in the listIU.out file in the same bin directory.

    Running the Family full life cycle from the console

    This section describes how to run the Family full life cycle sample. The sample can be run using the Integrated Solutions Console or a command line interface. For each phase of the Family full life cycle sample, both methods will be described.

    Starting the Sample

    The Family full life cycle sample is controlled by installing several packages representing a typical product Family full life cycle. Since this sample has several installations, and some are optional, several paths exist for running the sample. We will cover one possible path described below. The user can experiment with other paths and observe the differences in behavior.

    1. In the Control panel for the Family full life cycle sample, click the Install V1.2.0 link under Family 1.2.0 to begin the sample. When the base 1.2.0 installation has been completed, the Configure base link becomes enabled.
    2. Click Configure base to configure the base 1.2.0 installation. When the configuration has completed, the Apply fix link, the Apply Incremental Update link, and the Uninstall V1.2.0 links become active. The user has the option to apply either or both of these installations. For this path, the fix will be applied and then rolled back before installing the incremental update.
    3. Click Install fix to install the fix. When the fix installation has completed, the Rollback fix link becomes active.
    4. Click Un-install fix to revert the installation back to the base configuration. When the rollback completes, the Apply fix link and the Apply incremental update link become active.
    5. Click Install incremental update. When the Apply incremental update has completed, the Migrate update link becomes active.
    6. Click Migrate update to migrate the incremental update to the 1.2.0 base installation. When the migrate has completed, the Un-install V1.2.0 link is enabled as well as the Install full update V2.0.0 link. If Un-install V1.2.0 is selected, the sample is removed and the scenario is completed. If Install full update V2.0.0 is selected, the update will be installed on top of the V1.2.0 base.
    7. Click Install full update V2.0.0 to install the new version.
    8. Click Migrate to V2.0.0 to migrate the new installation.
    9. Click Install V2.0.0 to end the Family full life cycle sample and remove the Full update V2.0.0
    10. You have left the V1.2.0 base, which completes the V2.0.0 installation.

    During each step of the life cycle installation, the following panels on the console are automatically refreshed:

    View Log panel
    Displays the events and actions taken during the installation.

    View IU panel
    The information retrieved from the repository showing the Family full life cycle sample Solution Installation and Deployment information for the current stage.

    Installing the Family 1.2.0 base package

    A base installable unit is a software package that contains a major release of a product. This type of software package is used for the initial deployment of the software. This type of IU modifies the version, release, and modification parts of the overall version.

    The deployment descriptor that describes the installation characteristics of the base package is available in the Samples Descriptors panel in the Work Area. To access the descriptor, click base/packagedIU.xml. This descriptor references other deployment descriptors in the same base package called install artifacts. Install artifacts are used to create a new instance of an IU or to update an existing instance of an IU. Actions that are defined in an Install artifact refer to bundled files in the base software package.

    Click View the complete list of descriptors on the Descriptor panel to view the following three install artifacts used in the base package:

    The Family 1.2.0 base package is installed using the Integrated Solutions Console by selecting Install V1.2.0. Installing the Lifecycle Family 1.2.0 base package yields the following Log View panel output, and indicates that three IUs were successfully created (Daughter, Mom and Dad):

    --> ManageIUInstaller started
    Primary Operation is: CREATE
    --> Constructing MediaReader. URI is: Family_1.2.0_Base.zip
    --> Running Parse Deployment Descriptor via Dependency Checker
    --> Getting Target Hosting Environment.
    --> Running checkSystem...
    --> Executing ChangeManager Change() method
    [ManageIUInstaller has received a change Event: SUBMITTED ]
    [Total Ops: 0, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 0, Total Errors: 0]
    --> ChangeManager Change() method returned to calling program (ManageIU)
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 1, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 2, Total Errors: 0]
    [ManageIUInstaller has received a changeCompleted Event: COMPLETED]
    [Total Ops: 3,Total Completed: 3,Total Errors: 0]
    --> ChangeManager Touchpoint and CE Thread completed.
     
    Status of CM Operations
     
    Daughter IU
    StartTime: 8/12/05 4:57 PM
    EndTime: 8/12/05 4:57 PM
    CMOP: Create
    Errors: []
    State: COMPLETED
     
    Mom IU
    StartTime: 8/12/05 4:57 PM
    EndTime: 8/12/05 4:57 PM
    CMOP: Create
    Errors: []
    State: COMPLETED
     
    Dad IU
    StartTime: 8/12/05 4:57 PM
    EndTime: 8/12/05 4:57 PM
    CMOP: Create
    Errors: []
    State: COMPLETED
     
     
    

    Installing the Family 1.2.0 base yields the following View IU panel output and represents the installed instances of Package 1 (Family 1.2.0 Base ) shown in Figure 5:

    -----------------------------------------------------
    FAMILY
    -----------------------------------------------------
     
    Listing Requested IUInstances.
    Number of instances = 8
     
    Instance 1
    Type : Software Instance
    Version : 1.2.0
    Subtype : IU
    Name : Dad IU
    Version : 1.2.0
    UUID : 991974510BA426FE1F53841402351130
     
    Instance 2
    Type : Software Instance
    Version : 1.2.0
    Subtype : IU
    Name : Mom IU
    Version : 1.2.0
    UUID : 991974510BA426FE1F53841402351129
     
    Instance 3
    Type : Software Instance
    Version : 1.2.0
    Subtype : IU
    Name : Daughter IU
    Version : 1.2.0
    UUID : 991974510BA426FE1F53841402351128
     
    Instance 4
    Type : Software Instance
    Version : 1.2.0
    Subtype : Root IU
    Name : Family RootIU
    Version : 1.2.0
    UUID : 991974510BA426FE1F53841402351114
     
    Instance 5
    Type : Feature Instance
    Name : Children_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    Instance 6
    Type : Feature Instance
    Name : Dad_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    Instance 7
    Type : Feature Instance
    Name : Mom_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    Instance 8
    Type : Feature Instance
    Name : Parents_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
     
    

    Configuring the Family 1.2.0 base package

    In order to complete the installation of the 1.2.0 base package, an initial configuration must be executed. InitialConfig artifacts are used to define actions that will transition a newly created instance of an IU from the Created state to the Usable state.

    ClickView the complete list of descriptors on the Descriptor panel to view the following three InstallConfig artifacts used in the base package:

    The Family 1.2.0 base package is configured using the Integrated Solutions Console by selecting Configure base for Family 1.2.0 in the Control panel.

    Selecting the Family 1.2.0 Configure base link yields the following Log View output:

    --> ManageIUInstaller started
    Primary Operation is: INIT_CONFIG 
    RootTypeID target is: RootIUTypeID[991974510BA426FE1F53841402351114,1.2.0]
    --> Running checkSystem...
    --> Executing ChangeManager Change() method
    [ManageIUInstaller has received a change Event: SUBMITTED ]
    [Total Ops: 0, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 0, Total Errors: 0]
    --> ChangeManager Change() method returned to calling program (ManageIU)
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 1, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 2, Total Errors: 0]
    [ManageIUInstaller has received a changeCompleted Event: COMPLETED]
    [Total Ops: 3,Total Completed: 3,Total Errors: 0]
    --> ChangeManager Touchpoint and CE Thread completed.
     
    Status of CM Operations
     
    Daughter IU
    StartTime: 8/12/05 4:59 PM
    EndTime: 8/12/05 4:59 PM
    CMOP: InitialConfig
    Errors: []
    State: COMPLETED
     
    Mom IU
    StartTime: 8/12/05 4:59 PM
    EndTime: 8/12/05 4:59 PM
    CMOP: InitialConfig
    Errors: []
    State: COMPLETED
     
    Dad IU
    StartTime: 8/12/05 4:59 PM
    EndTime: 8/12/05 4:59 PM
    CMOP: InitialConfig
    Errors: []
    State: COMPLETED
     
     
    

    Note that the primary operation is init_config and is being applied to the Root IU. The change management operations indicates that IUs Daughter, Dad, and Mom have the status of Initial Configure. These are the IUs that compose the Family 1.2.0 base package.

    Selecting the Family 1.2.0 Configure base base installation yields the identical View IU panel output l, so it is not repeated here.

    Installing a fix for the Family 1.2.0 base Package

    Software fixes are a common occurrence in a product life cycle. The fix included in the Family Full Lifecycle sample demonstrates a situation where the "Daughter IU" from the 1.2.0 base installation needs a fix to be applied.

    A fix installable unit is a software package that contains fixes that have yet to be included in either a full update IU or incremental update IU. This type of IU modifies the level of software installed, but it does not modify the version, release, or modification parts of the overall version.

    The deployment descriptor that describes the installation characteristics of the fix package is available in the Samples Descriptors panel in the Work Area, and named fix/packagedIU.xml. This descriptor also references other deployment descriptors in the same fix package.

    Click View the complete list of descriptors on the Descriptor panel to view the following FixInstallArtifacts descriptor used in the fix package:

    DaughterFixInstallArtifact.xml

    The 1.2.0 base fix is installed using the Integrated Solutions Console by selecting Install Fix for Family 1.2.0 in the Control panel. The Install Fix link was enabled after the successful installation of the 1.2.0 base package.

    Installing the Lifecycle Family 1.2.0 Fix package yields the following Log View panel output, indicating the Daughter IU has been updated:

    --> ManageIUInstaller started
    Primary Operation is: UPDATE
    --> Constructing MediaReader. URI is: Daughter_1.2.0_Fix.zip
    --> Running Parse Deployment Descriptor via Dependency Checker
    --> Running checkSystem...
    --> Executing ChangeManager Change() method
    [ManageIUInstaller has received a change Event: SUBMITTED ]
    [Total Ops: 0, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 1, Total Completed: 0, Total Errors: 0]
    --> ChangeManager Change() method returned to calling program (ManageIU)
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 1, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a changeCompleted Event: COMPLETED]
    [Total Ops: 1,Total Completed: 1,Total Errors: 0]
    --> ChangeManager Touchpoint and CE Thread completed.
     
    Status of CM Operations
     
    Daughter IU
    StartTime: 8/12/05 5:04 PM
    EndTime: 8/12/05 5:04 PM
    CMOP: Update
    Errors: []
    State: COMPLETED
     
     
    

    Installing the Family 1.2.0 fix package yields the following additional IU output from the 1.2.0 base IU list and represents the installed instances of Package 1 (Family 1.2.0 Base) shown in Figure 5:

     
    -----------------------------------------------------
    FAMILY
    -----------------------------------------------------
     
    Listing Requested IUInstances.
    Number of instances = 11
     
    Instance 1
    Type : Software Instance
    Version : 1.2.0
    Subtype : IU
    Name : Dad IU
    Version : 1.2.0
    UUID : 991974510BA426FE1F53841402351130
     
    Instance 2
    Type : Software Instance
    Version : 1.2.0
    Subtype : IU
    Name : Mom IU
    Version : 1.2.0
    UUID : 991974510BA426FE1F53841402351129
     
    Instance 3
    Type : Software Instance
    Version : 1.2.0
    Subtype : IU
    Name : Daughter IU
    Version : 1.2.0
    UUID : 991974510BA426FE1F53841402351128
     
    Instance 4
    Type : Software Instance
    Version : 1.2.0
    Subtype : Root IU
    Name : Family RootIU
    Version : 1.2.0
    UUID : 991974510BA426FE1F53841402351114
     
    Instance 5
    Type : Feature Instance
    Name : Children_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    Instance 6
    Type : Feature Instance
    Name : Dad_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    Instance 7
    Type : Feature Instance
    Name : Mom_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    Instance 8
    Type : Feature Instance
    Name : Parents_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    Instance 9
    Type : Feature Instance
    Name : Children_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
     
    Instance 10
    Type : Fix Instance
    Name : Daughter_IU_1.2.0_Fix
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    Instance 11
    Type : Fix Instance
    Name : Family_RootIU_1.2.0_Daughter_Fix_1
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    

    Note that the primary operation is Update. The package that has been applied is Daughter_1.2.0_fix.zip. The change management operation status is Completed, which indicates that the IU Daughter was successfully updated. The fix has only been applied to the single IU named Daughter.

    You will notice a couple of things in the output that are different from the previous listIU output. First, you see that there are two fixes registered: one for the RootIU and one for the Daughter_IU. Also, you will notice that the number of features has doubled. This is because the fix needs its own copy of the features for Solution Installation internal workings, so this is normal behavior.

    Un-install a Fix to the 1.2.0 Base

    It is not uncommon that a fix applied to a product does not work or causes undesirable side effects. This phase of the life cycle sample demonstrates removing a previously applied fix.

    The Family Lifecycle 1.2.0 fix package is uninstalled using the Integrated Solutions Console by selecting Un-install Fix for Family 1.2.0 in the Control panel.

    The Family Lifecycle 1.2.0 Un-install Fix yields the following Log View output:

     

     

    --> ManageIUInstaller started
    Primary Operation is: UNDO
    --> Running checkSystem...
    --> Executing ChangeManager Change() method
    [ManageIUInstaller has received a change Event: SUBMITTED ]
    [Total Ops: 0, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 1, Total Completed: 0, Total Errors: 0]
    --> ChangeManager Change() method returned to calling program (ManageIU)
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 1, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a changeCompleted Event: COMPLETED]
    [Total Ops: 1,Total Completed: 1,Total Errors: 0]
    --> ChangeManager Touchpoint and CE Thread completed.
     
    Status of CM Operations
     
    Inst. ID: InstanceID[Fix,Daughter_IU_1.2.0_Fix,mrid:http://w3.ibm.com/namespaces/2003/OS_componentTypes:Operating_System,null,FAMILY]
    StartTime: 8/12/05 5:06 PM
    EndTime: 8/12/05 5:06 PM
    CMOP: Undo
    Errors: []
    State: COMPLETED
     
     
    

    Note that the primary operation is Undo, and the change management operation for Daughter_IU_1.2.0_Fix has been completed successfully.

    Applying the Family 1.2.0 Un-install Fix yields the same output produced by the Family 1.2.0 base installation. This verifies that the fix rollback has occurred successfully and restored the 1.2.0 base back to its original configuration. See the IU List for the 1.2.0 Base install for details.

    For the remaining steps, you can apply the fix again if you like. However, for simplicity of demonstration, we will keep the fix removed as we move forward with the sample.

    Apply an incremental update to the 1.2.0 base

    The incremental update in this sample represents a scheduled update to the base product. In our incremental update, we are going to update the Daughter_IU.

    An Incremental Update Installable Unit is a software package that contains the minor release only of a product. This type of IU modifies the version, release, and modification parts of the overall version.

    The deployment descriptor that describes the installation characteristics of the incremental update package is available in the Samples Descriptors panel in the Work Area, and named incremental/packagedIU.xml. This descriptor references other deployment descriptors in the same base package called install artifacts. Install artifacts are used to create a new instance of an IU or to update an existing instance of an IU. Actions that are defined in an Install artifact refer to bundled files in the incremental update software package.

    Click View the complete list of descriptors on the Descriptor panel to view the following installation artifacts used in the incremental update package:

    The Family 1.2.0 Incremental update package is installed using the Integrated Solutions Console by selecting Install Incremental Update for Family 1.2.0 in the Control panel.

    Installing the Lifecycle 1.2 .0Install Incremental Update (with the fix removed) yields the following Log View panel output:

     

     

    --> ManageIUInstaller started
    Primary Operation is: UPDATE
    --> Constructing MediaReader. URI is: Family_1.5.0_Incremental.zip
    --> Running Parse Deployment Descriptor via Dependency Checker
    --> Running checkSystem...
    --> Executing ChangeManager Change() method
    [ManageIUInstaller has received a change Event: SUBMITTED ]
    [Total Ops: 0, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 1, Total Completed: 0, Total Errors: 0]
    --> ChangeManager Change() method returned to calling program (ManageIU)
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 1, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a changeCompleted Event: COMPLETED]
    [Total Ops: 1,Total Completed: 1,Total Errors: 0]
    --> ChangeManager Touchpoint and CE Thread completed.
     
    Status of CM Operations
     
    Daughter IU
    StartTime: 8/12/05 5:08 PM
    EndTime: 8/12/05 5:08 PM
    CMOP: Update
    Errors: []
    State: COMPLETED
     
     
    

    Note that the primary operation is Update, and the update package being applied is Family_1.5.0_incremental.zip. The change management operations indicate that the IU Daughter has been successfully updated. The incremental update package contains a single IU: Daughter update.

    Installing the Family 1.2 Incremental Update package yields the following View IU panel output:

    -----------------------------------------------------
    FAMILY
    -----------------------------------------------------
     
    Listing Requested IUInstances.
    Number of instances = 11
     
    Instance 1
    Type : Software Instance
    Version : 1.5.0
    Subtype : IU
    Name : Daughter IU
    Version : 1.5.0
    UUID : 991974510BA426FE1F53841402351128
     
    Instance 2
    Type : Software Instance
    Version : 1.2.0
    Subtype : IU
    Name : Dad IU
    Version : 1.2.0
    UUID : 991974510BA426FE1F53841402351130
     
    Instance 3
    Type : Software Instance
    Version : 1.2.0
    Subtype : IU
    Name : Mom IU
    Version : 1.2.0
    UUID : 991974510BA426FE1F53841402351129
     
    Instance 4
    Type : Software Instance
    Version : 1.2.0
    Subtype : IU
    Name : Daughter IU
    Version : 1.2.0
    UUID : 991974510BA426FE1F53841402351128
     
    Instance 5
    Type : Software Instance
    Version : 1.2.0
    Subtype : Root IU
    Name : Family RootIU
    Version : 1.2.0
    UUID : 991974510BA426FE1F53841402351114
     
    Instance 6
    Type : Software Instance
    Version : 1.5.0
    Subtype : Root IU
    Name : Family RootIU
    Version : 1.5.0
    UUID : 991974510BA426FE1F53841402351114
     
    Instance 7
    Type : Feature Instance
    Name : Children_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    Instance 8
    Type : Feature Instance
    Name : Dad_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    Instance 9
    Type : Feature Instance
    Name : Mom_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    Instance 10
    Type : Feature Instance
    Name : Parents_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    Instance 11
    Type : Feature Instance
    Name : Children_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
    

    As with previous versions of this output, you see that the number of features have doubled to indicated their association with the update. Also, you see updated IUs, the Root IUs; Family and Daughter are listed twice at versions 1.2.0 and 1.5.0. This illustrates how Solution Installation and Deployment keeps track of updates, the original IU plus the updated IU. Note the differences in the full update section.

    Migrating an incremental update

    Migrate the Family 1.2.0 incremental update package by selecting the Migrate Update link for Family 1.2.0 in the control panel. The Incremental/packagedIU.xml descriptor file references Migrate artifacts descriptors in the incremental update package. Migrate artifacts are used to define actions that will transition an updated instance of an IU from the Created state to the Usable state.

    Use the View the complete list of descriptors link on the Descriptor panel to view the following Migrate artifacts used in the incremental update package. Selecting the Migrate Update link yields the following Log View output:

    --> ManageIUInstaller started
    Primary Operation is: MIGRATE
    RootTypeID target is: RootIUTypeID[991974510BA426FE1F53841402351114,1.5.0]
    --> Running checkSystem...
    --> Executing ChangeManager Change() method
    [ManageIUInstaller has received a change Event: SUBMITTED ]
    [Total Ops: 0, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 1, Total Completed: 0, Total Errors: 0]
    --> ChangeManager Change() method returned to calling program (ManageIU)
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 1, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a changeCompleted Event: COMPLETED]
    [Total Ops: 1,Total Completed: 1,Total Errors: 0]
    --> ChangeManager Touchpoint and CE Thread completed.
     
    Status of CM Operations
     
    Daughter IU
    StartTime: 8/12/05 5:10 PM
    EndTime: 8/12/05 5:10 PM
    CMOP: Migrate
    Errors: []
    State: COMPLETED
     
    

    The primary operation is Migrate, and is being applied to the root IU. The change management operation indicates that the IU Daughter has been migrated.

    Applying a full update

    Having demonstrated a fix and an incremental update, it's time to apply a full update to this scenario. This full update will take the existing 1.2.0 base and upgrade it to the 2.0.0 version of the product.

    A Full Update Installable Unit is a software package that contains the major release of a product plus a minor release (maintenance release or service pack). During installation, either the minor release is deployed or both the major release and the minor release are deployed. This type of software package is used for the initial deployment of the software or for the upgrade pf previously deployed software. This type of IU modifies the version, release, and modification parts of the overall version.

    The deployment descriptor that describes the installation characteristics of the full update package is available in the Samples Descriptors panel in the Work Area, and named fullupdate/packagedIU.xml. This descriptor references other deployment descriptors in the same full update package (called install artifacts).

    Use the View the complete list of descriptors link on the Descriptor panel to view the following install artifacts used in the full update package:

    The Family 2.0.0 Full Update package is installed using the Integrated Solutions Console by selecting the Install Full Update V 2.0.0 link from the Control panel.

    Installing the Family Lifecycle 2.0.0 Full Update package yields the following Log View output:

    --> ManageIUInstaller started
    Primary Operation is: UPDATE
    --> Constructing MediaReader. URI is: Family_2.0.0_Base.zip
    --> Running Parse Deployment Descriptor via Dependency Checker
    --> Running checkSystem...
    --> Executing ChangeManager Change() method
    [ManageIUInstaller has received a change Event: SUBMITTED ]
    [Total Ops: 0, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 0, Total Errors: 0]
    --> ChangeManager Change() method returned to calling program (ManageIU)
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 1, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 2, Total Errors: 0]
    [ManageIUInstaller has received a changeCompleted Event: COMPLETED]
    [Total Ops: 3,Total Completed: 4,Total Errors: 0]
    --> ChangeManager Touchpoint and CE Thread completed.
     
    Status of CM Operations
     
    Daughter IU
    StartTime: 8/12/05 5:13 PM
    EndTime: 8/12/05 5:13 PM
    CMOP: Update
    Errors: []
    State: COMPLETED
     
    Mom IU
    StartTime: 8/12/05 5:13 PM
    EndTime: 8/12/05 5:13 PM
    CMOP: Update
    Errors: []
    State: COMPLETED
     
    Dad IU
    StartTime: 8/12/05 5:13 PM
    EndTime: 8/12/05 5:13 PM
    CMOP: Update
    Errors: []
    State: COMPLETED
     
     
    

    Note that the primary operation is Update, and the package being applied is Family_2.0.0_base.zip. The change management operations indicate IUs Daughter, Dad, and Mom have been successfully updated.

    The output from the View IU panel shows the RootIU, four IUs, and four features as being registered; all at version 2.0.0:

    -----------------------------------------------------
    FAMILY
    -----------------------------------------------------
     
    Listing Requested IUInstances.
    Number of instances = 9
     
    Instance 1
    Type : Software Instance
    Version : 2.0.0
    Subtype : IU
    Name : Mom IU
    Version : 2.0.0
    UUID : 991974510BA426FE1F53841402351129
     
    Instance 2
    Type : Software Instance
    Version : 2.0.0
    Subtype : IU
    Name : Dad IU
    Version : 2.0.0
    UUID : 991974510BA426FE1F53841402351130
     
    Instance 3
    Type : Software Instance
    Version : 2.0.0
    Subtype : IU
    Name : Daughter IU
    Version : 2.0.0
    UUID : 991974510BA426FE1F53841402351128
     
    Instance 4
    Type : Software Instance
    Version : 2.0.0
    Subtype : Root IU
    Name : Family RootIU
    Version : 2.0.0
    UUID : 991974510BA426FE1F53841402351114
     
    Instance 5
    Type : Feature Instance
    Name : Children_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    Instance 6
    Type : Feature Instance
    Name : Dad_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    Instance 7
    Type : Feature Instance
    Name : Mom_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114
     
    Instance 8
    Type : Feature Instance
    Name : Parents_Feature
    RootIU UUID : 991974510BA426FE1F53841402351114 
    

    Notice that each of the IUs has now been replaced with a single instance at version 2.0.0. Solution Install does not remember full updates as the original plus some delta. It is a complete replacement of the IU.

    Migrate Full Update

    Migrate the Family 2.0.0 Full Update by selecting Migrate update link for Family 2.0.0 in the Control panel. The fullupdate/packagedIU.xml descriptor references Migrate artifact descriptors in the full update package. Migrate artifacts are used to define actions that will transition an updated instance of an IU from the Created state to the Usable state.

    Use the Complete list of descriptors link on the Descriptor panel to view the following Migrate artifact usedin the full update package:

    Migrating the Family Lifecycle 2.0.0 Migrate Full Update yields the following Log View panel output:

    --> ManageIUInstaller started
    Primary Operation is: MIGRATE
    RootTypeID target is: RootIUTypeID[991974510BA426FE1F53841402351114,2.0.0]
    --> Running checkSystem...
    --> Executing ChangeManager Change() method
    [ManageIUInstaller has received a change Event: SUBMITTED ]
    [Total Ops: 0, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 0, Total Errors: 0]
    --> ChangeManager Change() method returned to calling program (ManageIU)
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 1, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 2, Total Errors: 0]
    [ManageIUInstaller has received a changeCompleted Event: COMPLETED]
    [Total Ops: 3,Total Completed: 3,Total Errors: 0]
    --> ChangeManager Touchpoint and CE Thread completed.
     
    Status of CM Operations
     
    Dad IU
    StartTime: 8/12/05 5:14 PM
    EndTime: 8/12/05 5:14 PM
    CMOP: Migrate
    Errors: []
    State: COMPLETED
     
    Daughter IU
    StartTime: 8/12/05 5:14 PM
    EndTime: 8/12/05 5:14 PM
    CMOP: Migrate
    Errors: []
    State: COMPLETED
     
    Mom IU
    StartTime: 8/12/05 5:14 PM
    EndTime: 8/12/05 5:14 PM
    CMOP: Migrate
    Errors: []
    State: COMPLETED
     
     
    

    Note that the primary operation is Migrate, and is being applied to the Root IU. The change management operation indicates that the IUs Daughter, Dad, and Mom have been migrated.

    Un-install Sample

    At the end of the Lifecycle sample, the product goes end-of-life and is removed. The full update descriptor references Uninstall artifact descriptors in the full update package. Un-install artifacts are used with a Delete operation to define actions that will remove an instance of IU or fix.

    Click View the complete list of descriptors on the Descriptor panel to view the Uninstall artifacts used in the full update package.

    To un-install the Lifestyles 2.0.0 base, select Un-install V2.0.0 on the Integrated Solution Console control panel for the 2.0.0 base.

    Un-installing the Family Lifecycle 2.0.0 package yields the following Log View output:

     
    --> ManageIUInstaller started
    Primary Operation is: DELETE
    RootTypeID target is: RootIUTypeID[991974510BA426FE1F53841402351114,2.0.0]
    --> Running checkSystem...
    --> Executing ChangeManager Change() method
    [ManageIUInstaller has received a change Event: SUBMITTED ]
    [Total Ops: 0, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 0, Total Errors: 0]
    --> ChangeManager Change() method returned to calling program (ManageIU)
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 0, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 1, Total Errors: 0]
    [ManageIUInstaller has received a change Event: EXECUTING ]
    [Total Ops: 3, Total Completed: 2, Total Errors: 0]
    [ManageIUInstaller has received a changeCompleted Event: COMPLETED]
    [Total Ops: 3,Total Completed: 3,Total Errors: 0]
    --> ChangeManager Touchpoint and CE Thread completed.
     
    Status of CM Operations
     
    Dad IU
    StartTime: 8/12/05 5:16 PM
    EndTime: 8/12/05 5:16 PM
    CMOP: Delete
    Errors: []
    State: COMPLETED
     
    Mom IU
    StartTime: 8/12/05 5:16 PM
    EndTime: 8/12/05 5:16 PM
    CMOP: Delete
    Errors: []
    State: COMPLETED
     
    Daughter IU
    StartTime: 8/12/05 5:16 PM
    EndTime: 8/12/05 5:16 PM
    CMOP: Delete
    Errors: []
    State: COMPLETED
     
     
    

    Note that the primary operation is Delete, and is being applied to the Root IU. The change management operations indicate that the IUs Daughter, Dad, and Mom have been successfully deleted.

    The List IU panel is blank indicating that all Lifecycle IUs have been removed. This completes the software life cycle sample.

    Rerunning the sample

    The sample can be rerun at anytime by performing another install. If the sample is currently installed (Family 1.2.0 Install V1.2.0 link or Family 2.0.0 Install Full Update V2.0.0 link is not enabled), click either the Family 1.2.0 Un-install V1.2.0 link or the Family 2.0.0 Un-install V 2.0.0 link to remove the sample and enable the Install links.


    Command line operation

    This section provides details on how you can use the command line interface to demonstrate the Solution Installation and Deployment samples. Running the samples using the command line does not require the Integrated Solutions Console to be installed.

    There are two samples - Java Custom Action and Family Full Lifecycle. See the previous sections on using the console for additional details on the samples operation. All the artifacts for the samples are present in the

    <SI_SCENARIO_HOME>/samples/<Sample_Name>

    folder. The following terms are used in the command specified in this doc. These terms should be replaced with appropriate value, as defined, while executing the samples.

    Please execute the commands below to execute and view the samples. (All the commands are one line commands only) Please note the following:

    Java Custom Action sample

    The java custom action sample is demonstrated by performing an installation and, once the sample is understood, uninstalling it.

    To install the java custom action sample, issue the following installation command:

    install.bat(sh) JCA_DIR JAVACUSTOMACTION java_custom_action.zip

    To delete the java custom action sample, issue the following command:

    delete.bat(sh) JCA_DIR JAVACUSTOMACTION RootIUTypeID[cc05dc31804627bba6e6661c48bf1a81,1.2]

    Family sample

    The location where the artifacts for this sample will be copied is defined in the properties file present in FAMILY_DIR. Please update all the properties files with the (same) value where you want the artifacts to be copied. To identify the property to be updated, look for a value having #installLocation in its name. You may change this location, if you want. After executing each command, you may go and view the artifacts in the location defined in the properties file. To explore this sample completely, please execute the commands in the order in which they are specified here. (Do not skip any command, unless this is suggested)

    Install Family v1.2.0

    install.bat(sh) FAMILY_DIR FAMILY Family_1.2.0_Base.zip Response_1.2.0.properties

    Configure Family v1.2.0

    configure.bat(sh) FAMILY_DIR FAMILY RootIUTypeID[991974510ba426fe1f53841402351114,1.2.0] Response_1.2.0_init.properties

    Apply a fix to Family v 1.2.0

    You may skip this step and move directly to the incremental fix.

    fix.bat(sh) FAMILY_DIR FAMILY Daughter_1.2.0_Fix.zip Response_1.2.0_fix.properties

    Rollback the fix

    You may retain the fix and move to next step if you want.

    rollback.bat(sh) FAMILY_DIR FAMILY RootIUTypeID[991974510ba426fe1f53841402351114,Family_RootIU_1.2.0_JudyDaughter_Fix_1] Response_1.2.0_fix.properties

    Migrate Family v1.5

    migrate.bat(sh) FAMILY_DIR FAMILY RootIUTypeID[991974510ba426fe1f53841402351114,1.5.0] Response_1.5.0.properties

    Delete the complete Family base

    Do not delete the base if you want to upgrade the sample from v1.2.0 to v2.0.0.

    Please note that this command will remove the fix and the incremental update, if they are present.

    delete.bat(sh) FAMILY_DIR FAMILY RootIUTypeID[991974510ba426fe1f53841402351114,1.2.0] Response_1.2.0.properties

    Update from Family v1.2.0 to Family v2.0.0

    update.bat(sh) FAMILY_DIR FAMILY Family_2.0.0_Base.zip Response_2.0.0.properties

    Migrate Family v2.0

    migrate.bat(sh) FAMILY_DIR FAMILY RootIUTypeID[991974510ba426fe1f53841402351114,2.0.0] Response_2.0.0_migrate.properties

    Delete Family v2.0

    delete.bat(sh) FAMILY_DIR FAMILY RootIUTypeID[991974510ba426fe1f53841402351114,2.0.0] Response_2.0.0.properties

    Adding Samples to the console

    The Integrated Solutions Console component plug-in has been desig