One of the biggest challenges while deploying an application on a server is ensuring that all the system requirements are set up with the required configurations. The manual checks and configuration of every server where the application must be deployed is tedious, cumbersome and error prone. If this would be the case of deployment of a single change, consider the cases of deployments of over 3000 changes and over thousands of servers — this may take weeks to months to achieved this. To address concerns like this, the Snapshot feature in HCL Launch can be used effectively.
What are Snapshots?
In HCL Launch, a Snapshot is a bundle of component/version associations that represents a single deployable unit, or it can also be considered as a configuration of our target system at a specific point in time.
Snapshots can be used to make a copy of all the configurations — such as the versions of the process designed handle deployments, properties, template versions, approval process, component versions etc. — made on an environment where the application was successfully deployed and use this configuration details to deploy application to any number of production environments/servers which would be most likely to be successful.
In other words, Snapshot handles all the configuration of the server/environment where the deployment must be run.
Snapshot also comes with a feature where the user can lock the configuration of the snapshot, which helps us to preserve the configuration of all the resources for successful deployment while still providing the flexibility for the users to change the relevant configurations outside the snapshot. Once the configuration of the snapshot is locked, it cannot be reversed. In this way, Snapshot can be leveraged to set up every intricate detail of your deployments.
Snapshot with Quality Gates:
In HCL Launch, quality gates can be set on an environment to ensure the deployment of only those component version artifacts which meets certain criteria.
When the deployment of an application is run using a Snapshot, even when a single component version in the respective Snapshot doesn’t abide by the quality gates requirement, the deployment would be aborted with an error like, “Error starting workflow: The process could not start: <Component Name> <Version Number> has not achieved the statuses necessary to be deployed to this environment. See the server log for the full error trace. “
Why is it essential to understand the relationship between the Snapshots and Quality Gates? There can be instances where even though the Snapshot is a golden a copy of configuration of a specific release, one of the component versions of the Snapshot can have serious issues and this version can be gated from deployment by assigning the specific status which is blocked by the quality gates thus preventing the Snapshot from deploying the respective version. The combination of Snapshot along with the quality gates helps to achieve quality and successful deployments on the production environment.
Snapshot and present version of application process:
Version preset on the application process is a feature which allows users to configure the component version to which the application process should default to.
If the user is looking for an option or work around to bypass the version preset setting of the application process, then this can be achieved using Snapshots.
Under the “Advance Settings” tab of Snapshot configuration, the user can choose a specific version of the respective application process which doesn’t have any version preset configuration details, allowing the deployments to run with a component version set in a Snapshot rather than preset version configured.
Rollback made easy:
Whenever there is a deployment failure in the production and to ensure that the prod environment is backed up, all the failures must be analyzed. The deployment needs to be rolled back to the previous version, starting the deployment process from step one again following all the steps from configurations to the deployment. This could take quite a lot of time.
With Snapshots, this process is much easier. After any deployment failures, you can redeploy the working deployable component using the previously deployed Snapshot, which contains all the details of the configuration required for successful deployment in an environment/server guaranteeing a hassle-free deployment within minutes.
Snapshot is a very resourceful feature in HCL Launch that ensures faster and robust deployments that are easier to manage. Anyone, especially those who hate manual deployment setups, is sure to fall in love with Snapshots.