Blue Green w/S3, Cloudfront, Route53

I tend to code and architect devops with an eye toward NOT being locked into any particular cloud or service. Netsaint -> Nagios -> Icinga Hudson -> Jenkins VMWare -> Vagrant -> Docker -> Kubernetes -> ECS Everything changes. That ideal cloud you are moving on to right now – will change in five years,…

Continue Reading

Reload Rather than Restart Jenkins (Updated)

There is a method in the GUI for Jenkins that tells the Jenkins java process to reload its config from disk. From outside the GUI, where devops and automation live, you can do the same thing through the jenkins-cli.jar. This needed a script to craft the other pieces needed, retrieving a key from vault in…

Continue Reading

initPipeline_JenkinsPlugin, Open-Sourced

I wrote a jenkins plugin while I was idle between Oath and my current gig. This plugin is a simplification of Oath’s (AOL’s) CICD Discover plugin. Re-written from scratch. Instead of crafting java code in the plugin, I walked it back to its origins, where it sends execution to an external executable. The impetus to…

Continue Reading

Adding license for Open Source

  I have 42 repos that are now going through a process (not THE process, because I’m pretty sure they make this up as they go…) to be released as open source. I needed to add a license comment to javascript, python, yaml, ruby, erb, haml, json, xml, bash shell, and groovy source code files….

Continue Reading

Pulling in Ansible Variables Explicitly

…, or Templating GitHub Branch Source Org config.xml I created a yaml file ghe_config.yml to provide the values for a jinja template which created the GitHub Branch Source Organization config.xml for a Github organization on Jenkins. These were brought together by an ansible play that explicitly pulled in the ghe_config.yml values and then pushes those…

Continue Reading

Creating a duplicate GitHub org (script)

I had an existing GitHub organization. It had working code on it, but I needed to duplicate the repos on a separate organization, not through forking off or any connection to the first organization. bash it is…   #! /bin/bash # arg is list file # directory to work in DIR=”/Users/dsm/construct” # GitHub server address…

Continue Reading