In my previous blog post, “How to practice CI/CD the SnapLogic way,” I provided three approaches that pipeline developers and DevOps engineers can implement to support their organization’s continuous integration and continuous delivery (CI/CD) methodologies. Several approaches that are widely used today include Project Import/Export, Project Import/Export via the SnapLogic public API, and CI/CD through the SnapLogic Metadata Snap. In this post, I’ll describe a new, fourth approach that features GitHub Cloud integration.
CI/CD – continuous integration and continuous delivery – is a practice where code is built, integrated, and delivered in a frequent manner. This methodology allows for speedier issue discovery and resolution when compared to operating with infrequent build-delivery cycles.
Approach #4: GitHub Cloud Integration
In the SnapLogic August 2018 release, we introduced a new feature that allows native integration with GitHub Cloud, which provides customers with the abilities to check-in, check-out, and pull operations for GitHub Cloud.
The GitHub Cloud Integration is the fourth approach our customers can leverage for CI/CD capabilities. To use the GitHub feature, you will need to first authorize the repo/repos that the SnapLogic Enterprise Cloud platform may access. Additionally, each SnapLogic user will need to authenticate with GitHub so that appropriate authorizations may be enforced. Once the authorization is complete, users may begin to link repositories to their projects.
From a workflow perspective, you would create an empty repo in GitHub to bootstrap to and then check-out a project against that given repo in your development organization. After the check-out, you may add multiple assets in that project to the repository and perform a check-in directly from the SnapLogic platform. Next, you would switch to your test/stage/production environment and check-out the same repository you want deployed in the target project. For additional changes, you can check-in deltas on the development org and then pull those changes downstream.
For versioning, rollback, and hot-patching, you can check-in and check-out different branches and tags to restore a prior version. Need to do a hot-patch? Make a branch from the tagged version that was used in production, update assets, check-in changes, and then re-deploy (pull) on the downstream environment.
Automation is critical for DevOps and development processes, so now you have the ability to automate unit-testing and acceptance with a test suite of pipelines. You can also set up webhooks in GitHub so that after doing a check-out or pull, the webhook triggers the automation pipelines to perform the deploy verification. Users who have their own test suites can trigger this event from their own test environments apart from GitHub webhooks as well.
Additionally, deployment automation and automated rollback can be configured. You can configure the test automation verification to occur after a SnapLogic check-out or pull takes place. The automation verification can either complete successfully or fail at which point, a rollback can be done.
The “GitHub Cloud Integration” video below shows how you can get CI/CD benefits, including increased collaboration and version control with SnapLogic’s GitHub Cloud Integration feature.
And that’s GitHub Cloud integration the SnapLogic way. Now you can experience an end-to-end DevOps methodology with full CI/CD capabilities via the SnapLogic GitHub Cloud Integration feature and work seamlessly with CI/CD solutions like Jenkins, TeamCity, and more.
Read “How to practice CI/CD the SnapLogic way,” to learn how SnapLogic enables CI/CD support in other ways.