DevOps in a Regulated and Embedded Environment: Git Flow in a Regulated World

Welcome to the second post in my series, “DevOps in a Regulated and Embedded Environment”. In this part, we’ll take a look at how a normal git workflow needs to adapt in a regulatory environment, and how tooling can support the necessary changes. Namely, regulation may stop the development team from releasing a planned feature, […]

Read more
DevOps in a Regulated and Embedded Environment: What’s the Problem?
DevOps

Welcome to the first part of an ongoing series I’m calling DevOps in a Regulated and Embedded Environment. This first part looks at the particular challenges posed by a particular embedded environment. Future posts will dig into the details of how the more interesting problems were solved and what we should have done differently given […]

Read more
Starting up a Jenkins Clone Safely

Why bother starting Jenkins in neutral? Jenkins can be a dangerous virtual machine to bring up.  This situation arises when I’m recovering one, cloning one, or testing provisioning automation.  The damage one can cause is hard to predict because it depends on exactly what yours does, but I’ll try to paint a couple common pictures […]

Read more
Setting up OpenLDAP

I recently needed to setup OpenLDAP for a client. We setup an entire pipeline, similar to SecureCI and wanted to tie all of the tools into one login system. The installation was pretty straitforward, but we wanted to ensure our tooling stack was secured, so we moved a bit beyond the basics. This is all […]

Read more
Configuring Gitblit post-commit hooks over SSL

I have now twice spent multiple days trying to get a Gitblit server to communicate with a Jenkins server over SSH. This was done as part of ongoing work to update the Coveros SecureCI product with the goal of properly configuring both tools and a self-signed certificate to enable Gitblit’s post-commit jenkins hook to trigger builds. Given that […]

Read more
Building Development Environment

This is a two part post where I will show you how to setup development environment locally. We will start with Vagrant and Virtual Box and their initial setup. Then we will jump into multi-machine setup and provisioning using Puppet. You will also see how Database and WebApp VMs can work together. Vagrant and Virtual […]

Read more
DevOps Advantages for Testing: Increasing Quality through Continuous Delivery

Gene Gotimer and Tom Stiehm were published again in CrossTalk Magazine, The Journal of Defense Software Engineering, this time in the May/June 2016 edition. DevOps and continuous delivery can improve software quality and reduce risk by offering opportunities for testing and some non-obvious benefits to the software development cycle. By taking advantage of cloud computing […]

Read more
Common ivysettings.xml file

Ivysettings.xml In my last project I was introduced to Ivy and Ant working together to handle library dependencies. Since Ant does not have a native automatic dependency resolution built in, we had to incorporate Ivy into the picture to manage all the necessary files for the code to compile. If you want to read more […]

Read more
My First Ansible Jinja2 Filter

Why would I want to make a Jinja2 filter? While Ansible Modules are the main way you accomplish something in Ansible, Jinja2 Filters are the main way you manipulate data.  The first python code you’ll need to write in ansible is probably because you want to transform some data to send to a module or […]

Read more
X