Asset Promotion
webMethods API Gateway supports staging and promotion of assets. In a typical enterprise-level, solutions are separated according to the different stages of Software Development Lifecycle (SDLC) such as development, quality assurance (QA), and production stages. As each organization builds APIs for easy consumption and monetization, continuous integration (CI) and continuous delivery (CD) is an integral part of the solution. CI is a development practice that requires developers to integrate code into a shared repository several times a day and CD is a software engineering approach in which teams produce software in short cycles, ensuring that the software can be reliably released at any time. Development of assets starts at the development stage and once the assets are developed, they are promoted to the QA stage for testing, after testing of the assets is complete, the assets are promoted to the deployment stage.

webMethods API Gateway provides tools and features to automate your CI and CD practices. Modifications made to the APIs, policies, and other assets can be efficiently delivered to the application developers with speed and agility. For example, When you publish new applications, the API definitions change. These changes are to be propagated to application developers. The API provider has to update the associated documentation for the API or application. In most cases this process is a tedious manual exercise. You can use webMethods API Gateway staging and promotion to address such cases to automate API and policy management that makes deployment faster, introduces continuous innovation with speed and agility. This ensures that new updates and capabilities are automatically, efficiently, and securely delivered to their developers and partners, in a timely fashion and without manual intervention.
webMethods API Gateway provides the staging and promotion feature to automate the CI and CD practices. Modifications made to the APIs, policies, and other assets can be efficiently delivered to the application developers with speed and agility.
Staging and promotion allows you to:
- Promote all the run time assets such as webMethods API Gateway APIs, aliases, applications, policies, or admin configurations across different stages.
- Select and promote a subset of assets from one stage to another stage. For example, you can promote a single API and its dependencies from one stage to another.
- Select dependencies involved while promoting an asset. For example, while selecting a service for promotion, you must also select the dependent policies, applications, and so on.
- Modify values of attributes of selected aliases during promotion.
- Roll back assets in case of failures.
When you have three stages namely Dev, QA, and Prod, you can promote assets in the given sequence. That is, you can promote assets from stage 1 to stage 2, and from there to stage 3.
To promote assets from first stage, you create aliases of those assets that you want to promote to the second stage and promote them. Similarly, from the second stage you create aliases of assets that you want to promote to the third stage and promote them. The following illustration shows the flow:

Stages
The fundamental phases of assets starts with requirements or needs at the development stage and once the assets are developed, they are promoted to the QA stage for testing, after testing of the assets is complete, the assets are promoted to the production stage.
An asset's overall lifecycle can be split across two or more webMethods API Gateway instances. For example, assets that are in the development and test phases of their lifecycle can be maintained in one instance and assets that are deployed (that is, in production) can be maintained in a separate instance.
When the asset's lifecycle is split across multiple webMethods API Gateway instances, each participating instance is referred to as a stage. A stage definition in webMethods API Gateway describes an webMethods API Gateway instance by its name and configuration information.
Promotions
Promotion refers to moving webMethods API Gateway assets from the source stage to one or more target stages. For example, you might want to promote assets you have developed on servers in a Development stage (the source webMethods API Gateway instance) to servers in a QA or Production stage (the target webMethods API Gateway instance). When you promote an asset from one stage to another, the asset's metadata is copied from the source instance to the target instance. For the list of assets and configuration settings that can be promoted, see Assets that can be exported and imported section in Export and Import Assets and Configurations.
Assets that are dependencies for the asset are also promoted. The required dependencies of an asset are always promoted with the asset. However, you can choose which optional dependencies are promoted at the time of promoting the asset. For example, at the time of promoting an API, the policies and aliases used by the API are always promoted. However, you can choose which dependent applications are promoted as applications an optional dependency for APIs. You can choose to promote all or no application, or select specific applications that you want to included with the API in the promotion.
When you promote extended settings, the watt settings are not promoted. You have to reconfigure the watt settings in each node.
The following table lists the required and optional dependencies of assets that are supported by promotion management.
Asset | Dependencies (Required) | Dependencies (Optional) |
---|---|---|
APIs | Policies, Aliases | Applications |
Applications | APIs | --- |
Packages | APIs, Plans, Policies, Subscriptions | --- |
Plans | Policies | --- |
Subscriptions | Packages, Plans | Applications |
Teams | --- | Group |
Approval configurations | Teams | --- |
Configuration > Keystore | Keystore, Truststore | --- |
Email destination | --- | Truststore |
Group | --- | User |
JMS Connection alias | JNDI provider alias | --- |
LDAP configuration | Group | --- |
Password expiry settings | --- | User |
Port (https) | Keystore, Truststore | --- |
Service Registry | Keystore, Truststore | --- |
Web service endpoint alias | Teams, JMS, JNDI, JMS trigger, Keystore, Truststore | --- |
Custom destinations | Keystore, Truststore, Aliases | --- |