Continuous Integration and Compare for Kentico
Developing an enterprise-level application is a challenging task for organizations. With multiple development environments and teams, ensuring that changes are tracked and migrated efficiently is paramount for the success of any project. Add source control integration, Agile development cycles, and ever-changing requirements, and it’s easy to see how managing these issues takes significant time and effort. Luckily, Kentico and BizStream have teamed up to offer two great solutions to the market: Continuous Integration and Compare for Kentico.
With the release of Kentico 9, the Continuous Integration (CI) module was announced to cheers from the community. CI, combined with Source Control, offers you the ability to move development coding and data changes automatically from one development environment to another. It supports the synchronization of work between developers and development teams with the same workflow, allowing them to store code and data in a file system, commit them to Source Control, and import them back into a different Kentico installation within another environment.
Kentico’s Continuous Integration module is a very powerful tool that allows you to store snapshots of your Kentico database in your favorite versioning system and restore those snapshots when needed. While it doesn’t cover database-stored procedures, views, and functions, developers can utilize its serialization capabilities to ensure Page Types, Forms, and other database objects are versioned properly and replicate those changes to another environment easily.
Compare for Kentico
Compare for Kentico was built to solve the problem of challenging deployments in CMS projects that fail all too often when multiple environments (Dev, QA, Production) and multiple development teams are in play. Using Compare for Kentico makes deployment easier, quicker, and more reliable than deploying by hand. Compare gives developers the ability to see the differences visually across two Kentico environments at the same time and know whether or not a change should be deployed.
Compare for Kentico is a custom utility that visualizes the database differences across two Kentico environments, including stored procedures, views, and functions. The tool displays a list of differences that can be saved and used as a checklist for the person that is responsible for the deployment. This custom module lets developers know what is different between their systems on a database level, ensuring no changes are unaccounted for.
How They Work Together
Simply put, Compare for Kentico is a deployment tool that can be used to reduce the number of errors you can encounter when deploying changes (a fix, small change, whole feature…) to your production environment (or another environment). Kentico’s Continuous Integration module is a development tool (methodology) that allows developers that are working on the same project to cooperate easily by sharing code changes and database changes via a versioning system.
The Benefits of This Duo
The Continuous Integration module is most useful for development environments. It will allow developers to share and merge data just like they are used to with the code. Because of this, they do not have to use an alternative approach, such as a shared database or a code base. With CI, they have a full history of the data, so they can track all the data changes, store them with comments, or revert them if needed. Because of CI’s deep integration into the core parts of the platform, companies are able to leverage these features to streamline their development process.
Compare for Kentico is most useful for deploying changes to the production environment. It allows developers to see the differences visually between the production environment and the source environment (e.g., Staging or QA). The team responsible for deployment can be certain what kind of data is missing and what has to be done. After migrating the missing elements, they can ensure everything is correct by running the compare tool again to verify consistency.
Both the Continuous Integration and Compare for Kentico tools are useful throughout the development process. While many companies may leverage them for their Dev to QA to Production deployment process, these utilities can be equally useful to deploy and sync changes between other systems, as well. Depending on an organization’s development processes, using these tools together can simplify development and collaboration across teams and systems.
If you would like to know more about Compare for Kentico, you can register for the webinar by Brian McKeiver.
Being highly effective is closer to possible than you might have believed.