Packaging applications for deployment

After you develop a CICS® application, you can use the CICS Explorer® to package it for deployment on a platform. Using these tools, you can define the application dependencies and the CICS resources that comprise the application.

About this task

To package an application, you create CICS bundles for each application component, and an application bundle that groups them together and provides lifecycle management. Each CICS bundle contains the resources for a component of the application, and is installed in a CICS region during the application deployment process. The application bundle is a type of management bundle that describes the application, including its name and version information. This management bundle references the CICS bundles that contain the dependencies and resources for the application. All the application resources are installed and managed together.

Start of changeIn the CICS bundles, you declare application entry points for the application. Application entry points identify the resources that are access points to an application, and control users' access to different versions of an application that is deployed on a platform. When the application is accessed through its application entry points, the CICS regions where it is deployed generate application context data for management and monitoring of your application. End of change

You also create an application binding to define how the application is deployed on the target platform. The application binding maps each CICS bundle for the application to one or more CICS region types in the target platform.

Applications deployed on platforms that use the CICS resources that are supported as private resources, in combination with other resources designed for applications and with imported resources, are eligible for multi-versioning. The following resources are supported as part of multi-versioned applications:
  • PROGRAM resources defined in CICS bundles that are part of the application
  • LIBRARY resources defined in CICS bundles that are part of the application
  • Policies
  • Statements of application entry points
  • Any resource that is defined as a dependency, or import, for the application
For more details about the CICS resources that are supported as private resources, see Private resources for application versions.

Start of changeWith multi-versioning, you can install multiple versions of the application, at the same time, on the same platform instance, and make new versions available to users without service interruption. Other resources may be involved with multi-versioned applications if you manage the resources appropriately to avoid resource name clashes between different versions of the application. For more information on multi-versioning and the advantages of structuring your application so that it is eligible for multi-versioning, see Multi-versioning for applications deployed on platforms.End of change

When you are ready to deploy the application on a platform, you export the application bundle and application binding to the platform home directory in zFS. You also create an application definition, which is a CICSPlex® SM APPLDEF resource definition that points to the application bundle in the platform home directory.

You use the Project Explorer view in the CICS Cloud perspective in the CICS Explorer to package an application for deployment. For full details about each of the following steps, see Working with applications in the CICS Explorer product documentation.

Tip: Before you work with applications and application bindings, check that the Platform project for the target platform is present in your local workspace for CICS Explorer. CICS Explorer requires the Platform project to validate the Application project and the Application Binding project.

Procedure

  1. Create a CICS Bundle project for each application component, defining appropriate resources in the CICS bundle and declaring any dependencies on other resources that are required by the component.
    The CICS bundle groups resources together and is version controlled and managed as a single entity, so do not put resources that must be updated and managed separately in the same CICS bundle. For information on the resources that can be defined in a CICS bundle, and the changes to the behavior and characteristics of resources when you define and manage them in a CICS bundle, see Defining CICS bundles.
    Tip: When you define a TRANSACTION resource in a CICS bundle, and deploy the CICS bundle as part of an application, or add the CICS bundle to a platform, autoinstall of the initial program for the transaction is not supported. For a TRANSACTION resource defined in a CICS bundle that is deployed as part of an application, you must define and deploy the PROGRAM resource for the transaction's initial program as part of the same application.
  2. Start of changeIn your CICS Bundle projects, add application entry points for the PROGRAM resources that tasks call to access the application, or the URIMAP resources that provide URIs for requesters to access the application.
    Resources that are declared as an application entry point must have a unique name in the resource type in your environment.
    Tip: For PROGRAM resources, the resource for an application entry point does not have to be in the same CICS bundle as the statement of the application entry point. It can be defined in another CICS bundle, or autoinstalled when the bundle is deployed, or it can be a resource that already exists in the CICS regions where the bundle will be deployed. For URIMAP resources, if you want the application entry point to control access to the service provided by the URIMAP resource, the URIMAP resource must be defined in the same CICS bundle as the application entry point. For more information on application entry points, see Application entry points.
    End of change
  3. Create a CICS Application project that specifies the name and version of the CICS application.
    Add references to the CICS bundles to include them in the application bundle.
    You can edit the application bundle after you have created it, to add or remove CICS bundles.
  4. Create a CICS Application Binding project to define how each CICS bundle for the application is deployed to CICS region types in the target platform.
    You can edit the application binding after you have created it, to change how the CICS bundles are deployed.
    For more information on application bindings and examples, see How applications are bound to platforms.
  5. Export the application bundle and the application binding to the platform home directory in z/OS UNIX for the platform where you want to run the application, and create an application definition to identify the location of the application.
    You can create the application definition as part of the export process.
    If you are not ready to export and install the application, you can save the application in your source repository for later deployment on the platform, and create the application definition at a later time.

Results

The application bundle, application binding, and associated CICS bundles are available in the home directory of the target platform, and are ready to be installed in the CICS regions in the platform.

What to do next

Use the application definition to install the application in CICS, then make it available. Making the application available makes the application entry points, and therefore the resources that they control for the application, available to callers. For details, see Installing an application on a platform.