Jenkins Configuration as Code
Manage your Jenkins instance as code with this easy-to-use plugin
We developed the Jenkins Configuration as Code (JCasC) plugin to remove the need to manually edit Jenkins global configuration after deployment. JCasC configures Jenkins automatically once the configuration file is prepared. This solution also means you can restore your Jenkins within seconds. JCasC also allows you to reuse the same file to configure multiple Jenkins instances, or to spin up a local instance to test changes before you make them part of the production environment.
Jenkins Configuration as Code is the last missing piece in the puzzle for you to completely manage your Jenkins instance as code.
This project is the result of a collaboration between Praqma and Cloudbees, and a growing number of external contributors.
Check out the plugin and current release.
You’re more than welcome to contribute with code, or by creating issues with features or bugs. We don’t just want to solve our problems, we want to solve yours too!
A dynamic CI/CD solution to automate Helm charts deployment to your Kubernetes cluster
Helm packages Kubernetes applications as reusable, customizable and shareable packages called “charts”. However, as Helm is NOT a CI/CD tool you have to write your own custom scripts and do lots of configuration to manage the charts lifecycle from a CI/CD pipeline. At Praqma we’re all about automation, so we created Helmsman.
Helmsman adds a layer of abstraction around Helm and allows you to declaratively define a desired state of your Helm charts in a Kubernetes cluster. It enables you to automate your Helm charts lifecycle management.
Helmsman is told how to navigate from a declarative file called Desired State File (DSF) that you maintain as Kubernetes admin. It then interprets your wishes from the DSF and compares it to what’s running in the designated cluster. It is smart enough to figure out what changes need to be applied to make your wishes come true without maintaining/storing any additional information anywhere.
Helmsman has been a big help to us and we are happy to share it with the community. We welcome all forms of contributions and feedback.
The project is hosted on Github.
Praqmatic Automated Changelog (PAC)
An automated way of creating accurate changelogs
This tool allows us to avoid a lot of manual work and uncertainty around new features and new releases. PAC builds up changelogs/release notes by querying your Git repository and possibly your Application Lifecycle Management (ALM) system(s) for extra metadata.
You can use PAC to create a changelog suited for both developers and release managers. Using templates you can customize the look and feel and generate entire web pages or pdf documents using a simple configuration file.
PAC is avaliable here.
Pre-tested Integration Plugin
You couldn’t break master, even if you tried!
This Jenkins plugin is designed to keep your master branch from breaking under Continuous Integration by introducing an automated quality tollgate. It allows you to automatically rebase, build, test and run all kinds of checks on your changes before ultimately delivering them to master.
As a Git SCM decorator, the Pre-tested Integration Plugin listens for new branches matching a configured pattern (ex.: ready/*). When triggered, it merges the target branch into master locally and lets your job run its configured steps. Should they all pass, the plugin considers the merge result good enough and pushes it to the remote master.
All that’s left is to make sure only Jenkins has write access to master, and voilà, you are now the proud owner of an unbreakable mainline.
The Pre-tested Integration plugin is available here. To learn more about pre-tested integration as a practice have a look at the following blog posts: Pretested Integration and How can Teams Collaborate without Pull Requests?.
Migrate to git like a pro!
2git is a Groovy DSL designed to script your VCS migration. It continuously runs and tweaks your migration script to give you complete confidence in your migration. 2git currently supports migrating from Clearcase and Clearcase UCM to git and Artifactory.
2git was designed to iterate on complex migrations. We wanted to keep scripting freedom while mitigating the pains of dealing with the source VCS.
Subscribe to our newsletter
Hear about upcoming events in Scandinavia, latest tech blogs, and training, in the field of Continuous Delivery and DevOps