Lesson 7: Running a deployment

Run the deployment that you scheduled in Lesson 6.

The tutorial assumes that you are doing each lesson in the order it is presented. Before you start this lesson, make sure that you complete the previous lessons.

The also tutorial assumes that you are using the default releaser user account or another user account assigned to the Release Manager role. You assigned this role to the approval request and manual tasks earlier in the tutorial. If you are using your own role, make sure it has the same permissions that are granted to the Release Manager role. See the prerequisites for information about creating roles with the required permissions.

After you launch a scheduled deployment, you manage it with three pages:

  • The Overview page provides feedback about the status of the deployment, and it has controls for adding tags to the deployment. Tags can be especially useful for automatic tasks, and they are covered in later tutorials. If the deployment participates in a multi-release event, the participating deployments are also displayed here. The Count Down areas display the planned end time and countdown. The countdown value represents the deployment's planned duration. The planned end time is calculated by added the duration to the scheduled start time. Depending on when you start the deployment, the deployment can start ahead or behind schedule. You can change the scheduled start time if it is no longer valid.
  • You use the Deployment Execution page to provide approvals, start the deployment, and complete tasks. After you start the deployment, the Count Down begins to count down and you can see at a glance if the deployment is ahead or behind schedule.
  • You select application versions with the Applications and Versions page. The Applications and Versions page is used in later tutorials.

You can add tasks and segments to the deployment before or after you start it. You can create tasks or use the Show Suggested Task action to insert tasks from other deployment plans into the deployment. Tasks from any deployment plan that is attached to the current release can be inserted. Changes that you make to the deployment become part of the plan and are available in future deployments.

You can filter the task list by using the Filter tool (). You can use the Filter Plan widget to filter tasks by various criteria, including type, status, and user. You can also hide tasks that are not applicable to the current deployment.

After you schedule a deployment, you can run it at any time.

  1. On the IBM® UrbanCode™ Release dashboard, click Releases and Deployments, and then click Deployments.
    You can also launch deployments from the Pipeline page.
  2. In the All Deployments page, in the Execution Date column, click the date and time for the deployment you scheduled in Lesson 6.
    The deployment's Overview page is displayed. The deployment is identified by the release, release environment, and scheduled start date and time. The Count Down widget displays the deployment's planned duration: 16 minutes. If the value is not immediately displayed, refresh the page.

    Is this value the value that you expected? The Pre-Deployment Tasks and Deployment Tasks II segments do not have prerequisites and start when the deployment starts. This condition means that they run simultaneously. Initially, then, the overall duration is equal to the duration of the longer segment, Pre-Deployment Tasks. Because the Deployment Tasks segment depends on the Pre-Deployment Tasks, it starts after its prerequisite segment finishes. Its duration, 6 minutes, is added to the duration of its prerequisite segment, 10 minutes, that adds up to 16: 10 + 6 = 16.

  3. Click Deployment Execution, and then, in the Approvals area, click Approve.
    A deployment with approval requests defined for it must be given all expected approvals before the deployment can be started. You added the phase approval request for the Release Manager role in Lesson 2.
    Note: To grant approval, you must be logged in with the default releaser user account or another account assigned to the Release Manager role. You can also provide approval if you are logged in with the admin user account.
  4. Click Start Deployment.
    The Count Down widget displays 16 minutes and, depending on the scheduled start time, a message informs you whether you are ahead or behind schedule. The estimated end time field is updated to reflect the actual start time. The started deployment is shown in the following figure:

    The started deployment

    The Progress widget displays the deployment's overall progress. Progress is calculated by comparing the duration of finished tasks to the planned total duration. The number of tasks with various statuses, such as Waiting, is indicated by the widget's colored bands. Tasks that have a status of Not Applicable are not included in the calculation. Tasks can be Not Applicable for several reasons. For example, automatic tasks can be Not Applicable if their application versions are not included in the deployment, or if they lack an expected quality status. You use automatic tasks in later tutorials.

    If a task has a status of Finished, or Skipped it is considered resolved. When the progress is 100%, the deployment is complete.

    The Warnings area provides the following information:
    • Late Tasks refers to tasks that are past their expected start times. One task is a late task.
    • Unclaimed Tasks refers to tasks for which no role is specified, or no user with the specified role has claimed the tasks. Unclaimed tasks can be resolved, and deployments with unclaimed tasks can be completed. If you are in the required role, you can claim a task by selecting your user ID from the User list on the Edit Task window. If you are in the required role, you also claim a task if you start it. In the tutorial, you claim the manual tasks as you start them.
    • Waiting Tasks refers to tasks that are not started but that are eligible to start. Tasks are eligible to start when their parent segment starts and prerequisite tasks, if any, are complete. One task has a status of Waiting. The Notify Data Center about the Maintenance Window task is eligible to start.

    Finally, notice the status of the deployment's three segments. Pre-Deployment Tasks and Deployment Tasks II have a status of In Progress. Both the segments started when the deployment started. The other segment, Deployment Tasks, has a status of Not Started. It cannot start until its prerequisite segment, Pre-Deployment Tasks, is complete.

    Note: By default, segments automatically start as soon as they are eligible. You can turn off the segment automatic start feature. If you turn off this feature, you must manually start eligible segments. The tutorial uses the default setting for this feature and segments start as soon as they are eligible.
  5. Click the blue In Progress area of the Progress widget.

    Tasks with the selected status are displayed, as shown in the following figure. You can click the different statuses to display tasks with the selected status. In this case, the Wait for DB Changes Done task has a status of In Progress. Wait-type tasks automatically start as soon as they are eligible to run, and this task started as soon as its parent segment started. The Wait for DB Changes Done task also has a status of Late. Wait-type tasks automatically complete when they receive notifications, or signals, from associated signal-type tasks


    In progress tasks
  6. In the Notify Data Center about the Maintenance Window task line, click Start.
    You update the status for manual tasks manually as your run them. Automatic-, signal-, and wait-type tasks automatically update their own status as they run.
    • The task starts and the status changes from Waiting to In Progress.
    • The task duration countdown also starts. If the task takes longer to complete than the planned duration, the task status changes to Late.
    • The Progress widget shows two tasks In Progress.
    Note: Some roles, like the default Administrator role, have the Override Manual Tasks States permission. Roles with that permission can run tasks or reopen tasks that are not assigned to them. If you use the admin user account in this lesson instead of the releaser account, you must use the Override command to start and finish manual tasks.
  7. Click the Task Action tool for the Notify Data Center about the Maintenance Window task, and then select View/Edit.
    The Edit Task window is displayed. The Edit Task window is similar to the Add New Task window you used in Lesson 5.
  8. Add comments to the task by completing these steps:
    1. Using the Edit Task window, click Comments.
    2. Click Add Comment, and then enter some suitable description about the activities you performed to complete the task.
      You can add comments to running or finished tasks, including automatic-, signal-, and wait-type tasks.
    3. Click Save, and then close the Edit Task window.
  9. In the Notify Data Center about the Maintenance Window task line, click Finish.
    Note: If the Finish button is not displayed after you start the task, refresh the window.
    • The task's status changes to Finished.
    • The segment's progress bar is updated. You can display additional information about the segment's progress by hovering the mouse over the segment's title line, as shown in the following figure:

      Segment progress
    • The deployment's Progress widget displays 19%, and it displays a green band that represents finished, or successful tasks, as shown in the following figure:

      Updated Progress widget
    • Now that its prerequisite task is complete, the next task in the segment, Verify target hosts are ready, is eligible to run. Its status changes to Waiting.
  10. Complete the Verify target hosts are ready task by repeating steps 6-9.
    Completing this task has several effects as described in this list:
    • The Pre-Deployment Tasks segment is finished.
    • The deployment's Progress widget displays 37%.
    • The Deployment Tasks segment starts and has a status of In Progress.
    • The Deploy DB changes task becomes eligible to run and its status changes to Waiting.
  11. Complete the Deploy DB changes task by repeating steps 6-9.
    Completing this task completes two other tasks as described in this list:
    • The Deploy DB changes task status changes to Finished.
    • The signal-type task Signal DB Changes done is eligible to start and automatically runs.
    • Signal DB Changes done signals the Wait for DB Changes Done task, and the Signal DB Changes done task's status changes to Finished.
    • The Wait for DB Changes Done task receives the signal and its status changes to Finished.
    • The Deploy Web app task, which depended on the Wait for DB Changes Done, is eligible to start and its status changes to Waiting.
  12. Repeat steps 6-9 for the Deploy Web app tasks.
    Finishing this step completes the deployment.
The deployment is complete.

You can reopen finished or failed tasks. For a deployment to be complete, each task must have a status of Finished, Skipped or Not Applicable. If any task has the status of Failed, a deployment is considered incomplete.

Lesson checkpoint

In this lesson, you ran the deployment that you created in the previous lessons.

You provided approval to a phase approval request, and then completed the manual task defined in the deployment plan. By configuring segment and task dependencies, you defined the deployment's workflow, the order in which segments and tasks become eligible to run. By completing tasks, other tasks became eligible and ran automatically. The finished deployment is shown in this figure:


The finished deployment

After you complete the deployment, you might run it again and this time add tasks or make other modifications and see whether your changes have the expected effects.

For more information completing deployments, see Completing deployments.