4 Working with Change Sets

This chapter describes how to create, manage, and deploy change sets in Oracle Communications Evolved Communications Application Server (OCECAS).

See ”About Control Flows” and ”About Change Management” in Evolved Communications Application Server Concepts for an overview of change sets and the change management process.

Managing Change Sets

Change sets are collections of configuration and control flow changes. You create them using the Open Projects section of the Session Design Center home page. Change sets are also known as projects.

To activate a change set, you first deploy it to the Testing environment for testing and make any changes required. Once satisfied that it does what you intend, you then deploy the change set to the Staging and Production environments. The change set can not be modified after you deploy it to Staging or Production. If there are errors in a change set deployed in the Staging or Production environments, you can retract it, create a new corrected change set, and deploy the corrected change set in its place.

When you create a change set, you specify a baseline change set to which you are making the changes. The original baseline change set for OCECAS is the VoLTE, VoWiFi and eSRVCC change set, which consists of the VoLTE and VoWiFi application. As you continue to create change sets over time, you correspondingly increase the number of potential baseline change sets. The baseline change set is referred to as the parent and the new change set is the child.

This chapter assumes that you have an OCECAS Session Design Center GUI running.

Creating a Change Set

To create a change set:

  1. On the Home page of Session Design Center, click View All Projects.

  2. Click New.

    The New Change Set dialog box displays.

  3. In the Name field, enter a unique name.

  4. In the Description field, enter a short description.

  5. To provide a base line for the change set, click the list for Baseline. Select a base line.

  6. Click Create.

Session Design Center creates a change set ID for the new change set and displays it and the name of the change set at the top of the page.

To add a control flow to the change set, or to modify a control flow, see "Working with Control Flows".

To deploy the change set to the production pipeline, see "Deploying Change Sets".

Locating and Viewing Details for a Change Set

To locate a change set, do one of the following:

  • If the change set is not yet deployed to a runtime environment, Session Design Center displays the change set below Open Projects.

  • If the change set is not among the recent entries:

    Click View All Projects.

    To search for a change set, enter its ID in the Search field, or start entering a string. As you type, the string filters the display to show only the change sets with a matching string in either the name or the description

    You also filter the display using the Filter:All/Open/Deployed buttons.

    Click the change set.

If a change set is in Open Projects, or deployed to the Testing environment, a pencil icon displayed to the right side of a change set indicating that the change can be edited. An eye icon indicates that the change set is deployed and is available only to view.

Click a change set row to view its details. The row expands to display any description of the change set, the date and time the change set was created, and the name of the baseline change set. Click Edit Details to change this information.

Modifying a Change Set

You can modify a change set if its deployment status is open or it is deployed to Testing, and it has not yet been deployed to staging or production. Some of the ways in which you can modify a change set are:

You can also modify a change set in other ways, such as adding media resources, media servers, and notification templates.

Modifying the Baseline for a Change Set

To modify the baseline for a change set:

  1. On the Home page, click View All Projects.

  2. Locate the change set. See "Locating and Viewing Details for a Change Set".

  3. Click the arrow to the left of the change set name to expand the details.

  4. Click Edit Details.

  5. For the Baseline field, select a different entry.

  6. Click Save.

Viewing the Changes to a Change Set

To view the changes to a change set:

  1. On the Home page, click View All Projects.

  2. Locate the change set. See "Locating and Viewing Details for a Change Set".

  3. Click on the icon in the last column of the row containing the change set.

    Tip:

    A view icon is displayed for a deployed change set and an edit icon for an open change set.

Bundling Change Sets

The ability to bundle change sets allows you to combine change sets and deploy them as a single unit. Bundling makes deployment and rollback of a group of change sets as easy as deploying and rolling back a single change set.

You might want to create a bundle because a project has resulted in the creation of multiple related change sets that you want to deploy as a unit. Another reason could occur when a deployed change set has been retracted from the staging or production environment due to an error and a new change set has been created to fix the error. If this were to happen multiple times, you potentially could have multiple change sets that fix the problem.

To create a bundle:

  1. On the Home page, click View Environment Configuration.

  2. In the left-hand panel, under Open Projects, click New.

  3. From the New menu, select Change Set Bundle.

    A New Change Set Bundle dialog opens.

  4. In the New Change Set Bundle dialog, enter a Name and a Description for the new change set bundle.

  5. Click Create to create the new change set bundle.

    The new change-set bundle is added to the list under Open Project Bundles.

Note:

A change set bundle does not have a baseline.

Adding Change Sets to a Bundle

To add a change set to bundle, drag the change set from the Open Projects section and drop it on the target bundle. The member change sets in a bundle appear in a list below the name of the bundle.

The following rules apply when adding a change set to a bundle:

  • You can only add an open change set to a bundle. You cannot add a change set that has been deployed to the staging or production environments. To add a change set from the testing environment, you must first revert it and then remove it, which places it back in the Open Projects panel.

  • You cannot add a change set whose parent change set is not part of the bundle. You must first add the parent change set and then the children.

    For example, for change sets A, B, C, and D, assume that A has the last deployed change set as a parent and that B has A as a parent, C has B as a parent, and D has C as a parent. If you create a bundle and add change sets in the order of A, B, D, you will get an error because D's parent (C) is not part of the bundle. The error message is: "Cannot add change set to bundle. Change set's baseline is not part of the bundle."

  • The same rules that apply to non-bundled change sets also apply to bundled change sets.

Working with a Change Set Bundle

After you create a change set bundle, you can deploy it, retract it, and edit it just as you would a change set.

Errors When Deploying a Change Set Bundle

When you deploy a change set, errors appear in two ways.

In the first case, a dialog displays when you attempt to deploy the change set bundle. If the deployment fails, an error displays at the bottom of the dialog and the bundle and all change sets that it contains are not deployed. You must fix the error and deploy the bundle again.

In the second case, the bundle deploys but the heading of the bundle contains text that says "Contains Conflicts." Expand the bundle to show the change sets that it contains and conflict links in red text. Clicking the change set displays a table that shows the details of the conflicts found.

If a Change Set contains conflicts, it should be corrected and re-deployed.

Copying Change Sets

Copying a change set enables you to make changes to a change set that has been deployed to the staging or production environments. A change set in the staging or production environment cannot be changed even if it has been retracted. When you make a copy of a change set, however, you can make changes to the copy, perhaps to fix a problem that existed in the original.

In the testing environment, you can copy a change set after you revert it.

You can copy a change set either in the Projects section of the Session Design Center or in the Environments section.

The following rules apply when copying a change set:

  • You cannot copy a change set bundle.

  • When copying to an existing change set, the destination change set cannot have the same changes as the source.

To Copy a Change Set in Projects

To copy a change set in Projects.

  1. On the Home page, click View All Projects.

  2. In the list of change sets, locate the change set that you want to copy.

  3. Click the copy icon ( Overlapping documents with an arrow running across them ) to the right of the Last Updated date and time.

  4. Click the radio button next to one of these two options:

    • Create a Change Set as Target Named:

    • Select an Existing Change Set as Target:

  5. Enter a target name if you are creating a change set or select a target name if you are copying to an existing change set.

  6. Click Copy.

To Copy a Change Set in Environments

To copy a change set in Environments:

  1. Click View Environment Configuration.

  2. Locate the change set that you want to copy in the testing, staging, or production environment.

  3. Click the drop-down menu icon for the change set.

    Note:

    Only change sets that are available for copying display the drop-down menu icon.
  4. Select Copy from the drop-down menu.

  5. Click the radio button next to one of these two options:

    • Create a Change Set as Target Named:

    • Select an Existing Change Set as Target:

  6. Enter a target name if you are creating a change set or select a target name if you are copying to an existing change set.

  7. Click Copy.

Viewing Copy Progress

To view the progress of the copy, open the change set Changes panel. See "Viewing the Changes to a Change Set" for more information.

When a copy operation is in progress, a progress bar displays at the top of the Changes panel. As the copy progresses, the bar goes from left to right and the list of changes beneath it grows longer as more items are copied into the change set.

When the copy succeeds, the progress bar goes to 100 percent and then disappears.

Errors When Copying

If you are copying to an existing change set, you can receive an error for the following reasons:

  • There are no differences between the source and destination change sets.

  • A conflict exists such as a control flow or resource has been changed in both change sets.

If a copy operation fails, the progress bar in the Changes panel stops at a value less than 100 percent and an error displays below the progress bar. The error is typically:

  • Copy incomplete, caused by transaction timing out.

Deploying Change Sets

The View Environment Configuration link in the Environments section of the landing page displays the runtime environments configured for your OCECAS installation.

About the Deploying to the Production Pipeline

For an overview of the OCECAS pipeline, see "About Change Management and the Production Pipeline" in Evolved Communications Application Server Concepts.

The production pipeline includes the runtime environments in this order:

  1. Testing

  2. Staging

  3. Production

Change sets become active in an environment when they are deployed in the environment. Table 4-1 shows the possible actions you can take on change sets in a runtime environment.

Table 4-1 Actions Available in the Environments

Action Testing Staging Production

Edit

Available, if it has not been deployed. Retracted change sets are also not available for editing.

Not Available

Not Available

Deploy

Available.

You can deploy a change set to the staging environment.

Available.

You can deploy a change set to the production environment.

Not Available

Retract

Available.

A change set can be retracted from the testing environment.

Available.

A change set can be retracted from the staging environment.

Available.

A change set can be retracted from the production environment.

Redeploy

Available.

A retracted change set can be redeployed into the testing environment.

Available.

A retracted change set can be redeployed into the staging environment.

Available

A retracted change set can be redeployed into the production environment.

Remove

Available, if it has not been deployed.

Not available

Not available


Deploying a Change Set

This section assumes that you have a Session Design Center GUI up and running with a change set created but not deployed. See "Creating a Change Set" for details.

Before you can deploy a change set, review it to ensure that the change set compiles correctly. The Changes panel for the change set should not display any error messages.

When you deploy a change set, you can choose to deploy it immediately or specify a later date and time. Once a change set is deployed to the staging or production environment the contents cannot be edited. See "Correcting Problems in Deployed Change Sets".

Deploying a Change Set to the Testing Environment

To deploy a change set to the Testing environment:

  1. In the Home page, click on Environment Configurations.

    The Environments page displays the Open Projects panel, the Testing, Staging and Production environment entries.

  2. In the Open Projects panel, locate the change set.

  3. Place your cursor on the change set. The arrow changes to a cross to indicate you have selected it.

  4. Select and drag the change set to the Staging environment. Release the cursor.

    The Deploying CS- dialog box opens.

  5. Specify when to activate the change set. Select one of:

    • Activate immediately

    • Schedule for activation on

      Enter the date as YYYY-MM-DD. use the up and down arrows to provide the hour and minute as HH:SS.

  6. Click Confirm.

When the change set becomes active it is automatically checked for compile errors. It must be error-free before you deploy it to the Staging environment.

Deploying a Change Set to the Staging or Production Environment

Before you deploy a change set to staging or production environments, test and confirm that it performs correctly. Once deployed to the staging or production environments you can not edit the change set, only retract it.

To deploy a change set into the next runtime environment in a pipeline:

  1. In the Home page, click View Environment Configurations.

    The Environments page displays the Open Projects panel, and the Testing, Staging and Production environments.

  2. Select the change set to deploy.

  3. Click on the arrow on the right side of the change set.

  4. Do one of the following.

    • If you are in the testing environment, select Deploy to Staging.

    • If you are in the staging environment, select Deploy to Production.

    The Deploying CS- dialog box opens.

  5. Specify when to activate the change set. Select one of:

    • Activate immediately

    • Schedule for activation on

      Enter the date as YYYY-MM-DD. use the up and down arrows to provide the hour and minute as HH:SS.

  6. Click Confirm.

Correcting Problems in Deployed Change Sets

This section explains how to correct a changes set if it is not working as expected. You have these choices for correcting change sets:

A parent change set must be deployed in the testing, staging or production environment in order for the child change set to de deployed in that environment.

Correcting a Change Set Without Stopping Service

You can fix minor change set problems in the background without deactivating that change set. This method applies to issues that are not causing major problems.

To fix a problem without disrupting service:

  1. In Open Projects, create a new change to replace the one with the problem. See "Modifying a Change Set".

  2. Retract the change set with the problem.

  3. Deploy the corrected change set into the staging environment, and then into the production environment. See "Deploying a Change Set".

Correcting a Change Set by Removing the Service Immediately

To fix a problems that must be resolved by removing the service immediately, retract the change set from the production environment. Then create a replacement change set and deploy it. The idea is to have a replacement ready, or nearly in time to maintain quality of service.

To disable a change set immediately and replace it:

  1. From the Home page, click View Environment Configuration.The Environments page displays the Open Projects panel with the Testing, Staging, and Production entries. Retract the change set. See "Retracting a Change Set" for details.

  2. In Open Projects, create a new change to replace the one with the problem. See "Modifying a Change Set".

  3. Test the change set.

  4. Deploy the corrected change set to the staging, and then production environments. See "Deploying a Change Set".

Retracting a Change Set

To retract a change set from the appropriate runtime environment:

  1. From the Home page, click View Environment Configuration.

    The Environments page displays the Open Projects panel with the Testing, Staging, and Production entries.

  2. Locate the change set to retract. See "Locating and Viewing Details for a Change Set".

  3. Click the arrow on the right side of the change set.

  4. Select Retract.

    The change set is no longer active in that environment. OCECAS displays the retraction date and time.

Redeploying a Change Set

If you decide that a retracted change set should be returned to service, you can redeploy it. Redeploying uses the same mechanism as deploying.

Note:

before you redeploy a change set, verify that the base line for such a change set is one that is deployed in that environment and does not have issues.

To redeploy a change set into an environment:

  1. In the Home page, click on Environment Configurations.

    The Environments page displays the Open Projects panel, the Testing, Staging and Production environment entries.

  2. Select the change set to redeploy.

  3. Click on the arrow to the right of the change set.

  4. Select Redeploy.