Promoting a new application or changes to an existing application must always follow a predefined and controlled set of DevOps practices to ensure high quality and speed as well as to decrease risks.
The Appian Cloud standard offering includes 3 environments (Development, Test and Production), which many customers use as a starting point. Once the first application is in production, Appian recommends increasing this to a minimum of 4 environments, which allows more efficient maintenance and production deployment while maintaining development velocity in the Development and Test environments. A 4th environment as described below is also beneficial when managing concurrent development streams.
The available environments in a pipeline vary between organizations. Appian recommends to start with the standard 3 environments (Development, Test and Production) and to eventually increase the pipeline to a minimum of 4 environments as described below:
The packages move through the pipeline from Development to Production:
The recommended deployment approach to deploy Appian applications from Development to Production is using the Compare And Deploy feature of Appian.
To use this feature, you must adhere to the following best practices related to packaging and releasing applications on Appian:
Additionally, you must have enabled the following:
After these configurations are in place, we recommend using the following process to package and deploy applications from Development to Production.
Deployments from Development to Test are frequent and are performed as patch deployments. We recommend deploying at the story level:
To deploy the changes related to a story using the Compare and Deploy feature, the developer follows the steps outlined below:
If the implementation of the story resulted in changes in more than one application, for example changes in a shared objects application and changes in a business application, you must go over the deployment process twice: once for each application, starting with the application that contains the precedents.
Deploy to the Deployment Test environment when your application has been fully tested and approved and you are ready to move it to production. Deployments to the Deployment Test environment are performed at the release candidate level and can be considered practice runs for the deployments to production. These deployments are full application deployments.
To deploy an application to the Deployment Test environment the team responsible for production deployments follows the steps outlined below:
Deployments to the production environment are identical to the deployments performed to the Deployment Test environment. As such, the recommended approach is to deploy the entire application with the same DDL scripts, plug-ins and import customization file as the ones used for the deployment to the Deployment Test environment. Appian provides the ability to easily deploy the same package to another environment as described in the Appian DevOps documentation.
Deployments can be executed remotely using the Appian Deployment REST API. Integrating this API with a CI/CD tool allows for setting up automated deployments pipelines.
If your organization wants to maintain version history of the Appian deployments outside of the Appian platform, we recommend performing the following:
Changes to the Appian Administration Console must be tracked as follow: