This page is about the deployment process in Appian and the different ways you can deploy updates to your applications. To learn how to deploy your applications and packages, see Deploy to Target Environments.
Deploying packages is how you release your application updates to end users and deliver value.
A package is a collection of Appian application changes that a developer can deploy to another environment. You can use packages containing new and updated objects to enhance an application in the target environment via a deployment.
Preparing a package is an important step in the deployment process and involves understanding what changes you need to deploy and how these changes will affect your target environment.
To deploy, you prepare a package with the relevant objects, and then move it from a source to a target environment.
During deployment, the definition of each object in your package is exported from the source environment into an XML file. Appian bundles these XML files into a ZIP file, which is used to move the objects to the target environment.
Information about related objects is preserved across the deployments. In most cases, the related objects themselves are not automatically exported. They must be explicitly added as objects within the package, or already present in the target environment. The application view allows you to check your application for missing precedents and add the precedents to the application. The package view allows you to perform the same analysis for an individual package.
Make sure you understand object-specific behavior while preparing a package for deployment.
Your packages may depend on other files or scripts such as:
There are three methods for deploying a package in Appian:
In addition to deploying enhancements, you can also use the following types of packages to deploy new applications and change administration settings in the target environment:
Direct deployments are an out-of-the-box approach to simpler deployments, with fewer manual steps and predictable outcomes. This supports continuous delivery by allowing you to deploy packages frequently and reliably.
For those looking for a streamlined deployment process with minimal setup effort, Appian recommends using compare and deploy.
You may have constraints on specific environments or packages that prevent you from taking advantage of direct deployments. If that's the case, you can also manually export a package from a source environment and import it into the target environment.
When you export and import a package, rather than directly deploy it, you must manage certain dependencies manually. For example, exported packages do not contain database scripts or plug-ins.
Appian has native deployment APIs that can be called from external tools, such as Jenkins. There are five endpoints that allow you to inspect and deploy packages, import customization files, and database scripts.
These APIs allow you to programmatically trigger deployments and integrate your Appian release into an automated pipeline. You can configure your pipeline once and run it the exact same way for all future deployments, saving time and avoiding manual errors.
In order to programmatically deploy Administration Console settings or tightly integrate with a version control system to store and retrieve package files, use the Automated Deployment Manager. For more information on setting it up, see the DevOps Quick Start Guide.
A post-deployment process is a process that automatically runs after a direct or external deployment has finished on an environment. From this process, you'll be able to access key information about the relevant deployment.
Post-deployment processes provide flexibility, which allows you to automate tasks, leverage third-party tools, and customize your workflow. Automating your post-deployment steps reduces manual tasks and the potential for human error.