Archive
Posts in Development
Using mkcert to quickly create certificates for testing and development environments
As a developer, operator, and architect, I am always evaluating technological solutions. A fair number of these solutions use TLS, which requires minting new certificates. I recently came across mkcert, which makes it SUPER easy to provision new certificates for development and testing. To get started with mkcert, you will need to run it with the "-install" option: This will create a new CA certificate in $HOME/.local/share/mkcert, and update your trust stores so curl, Firefox, etc…
$ read more →Using grpcurl to interact with gRPC applications
The past couple of weeks I have been digging into gRPC and HTTP2 in my spare time. I needed a way to review the requests and responses, and an easy way to explore gRPC servers. I also wanted something to dump protocol buffers in a human readable format. It turns out grpcurl was written for just this purpose, and has been super useful for groking gRPC…
$ read more →Verifying your .gitignore is working correctly
I was recently cleaning up an old Git repo, and noticed that some .pyc files got checked in. This got me thinking, and I started reading through the Git documentation to see if there was a way to evaluate .gitignore rules to make sure they were working as expected. Sure enough, Git has the "check-ignore" command. Given the following .gitignore: You can pass a pattern to "check-ignore" to get the list of files in your working directory that match the expression: Super handy…
$ read more →Linting Jenkinsfiles to find syntax errors
As a long time Jenkins user I periodically need to add new steps or Groovy logic to my Jenkinsfiles. The last thing you want to do when updating your pipeline configuration is to make a typo which causes a build to break. To avoid these scenarios, I like to use a git pre-commit hook along with the Jenkins CLI "declarative-linter" option. To use this super useful feature to check for syntax errors, you will first need to download the Jenkins CLI client…
$ read more →Create JSON output from the Linux command line
This past weekend while working on create-seccomp-profile I needed a way to generate JSON output from arbitrary text. After a little googling I came across the incredibly useful jo utility. Where jq is invaluable for pulling arbitrary data out of a JSON data structure jo is amazing at creating JSON structures. In it's simplest form jo can take key value pairs and produce pretty printed JSON output: Jo also has a number of other capabilities to create arrays and complex object hierarchies: In the example above I created a simple docker seccomp profile…
$ read more →