Article
Pretty Printing JSON Web Tokens (JWTs) on the Command Line using Ruby (3 mins read).
How to easily introspect and pretty print a signed JWT (JWS) or an encrypted JWT (JWE) on the command line using Ruby's standard library, or using the ruby-jwt external library.
Fri, 31 Aug 2018 10:43 by Jamie Tanna
.
#blogumentation
#ruby
#command-line
#jwt
#json
#pretty-print .
Article
Using chef-shell
to interactively debug attributes and recipes (5 mins read).
How to use chef-shell
to see attribute config and recipes, with and without a Chef Server.
Wed, 29 Aug 2018 13:38 by Jamie Tanna
.
#chef
#chef-shell
#blogumentation
#test-kitchen
#chef-server
#chefdk .
Article
Creating a versionable, self-contained (fat-/uber-) JAR for Cucumber tests (11 mins read).
Why you'd want a fat JAR and how you'd achieve it.
Wed, 15 Aug 2018 10:23 by Jamie Tanna
.
#blogumentation
#java
#cucumber
#testing
#jar
#artifact
#artefact
#maven
#uber-jar .
Article
My Path from School to University to Work (25 mins read).
A look back at my journey up to now, the choices I've made, and what advice I have for others who are embarking on their own journeys into tech.
Sun, 05 Aug 2018 17:07 by Jamie Tanna
.
#musings
#blogumentation
#capital-one
#career
#university
#nottingham
#school
#a-level
#gcse .
Article
Pretty Printing JSON on the Command Line with Ruby (1 mins read).
Using Ruby's JSON module to pretty print JSON objects from the command line.
Mon, 18 Jun 2018 19:13 by Jamie Tanna
.
#blogumentation
#ruby
#json
#pretty-print .
Article
Merging multiple repositories into a monorepo, while preserving history, using git subtree
(3 mins read).
How to merge multiple repositories, with their history, into a single repository, using the git subtree add
command.
Fri, 01 Jun 2018 20:44 by Jamie Tanna
.
#blogumentation
#git
#monorepo
#git-subtree
#command-line .
Article
Sharing Multiple SSH Sessions over the Same Network Socket (3 mins read).
Reusing network sockets for speed and reduction of authentication handshakes with OpenSSH.
Fri, 04 May 2018 17:21 by Jamie Tanna
.
#blogumentation
#ssh
#openssh
#command-line .
Article
Better Git Diff Outputs with Git Submodules (2 mins read).
How to get nicer diff
s when working with submodules.
Fri, 04 May 2018 11:59 by Jamie Tanna
.
#blogumentation
#git
#command-line .
Article
Beware: delete
ing a file
in Chef doesn't actually delete
it (3 mins read).
Why you should explicitly add backup false
when delete
ing a file
through Chef, to avoid leaving potentially sensitive files still on the box.
Mon, 30 Apr 2018 17:54 by Jamie Tanna
.
#blogumentation
#chef .
Article
Executing an Interactive Python Shell (REPL) for a Script (1 mins read).
Using python -i
to get an interactive REPL after running a Python source file.
Sun, 08 Apr 2018 16:07 by Jamie Tanna
.
#command-line
#python
#blogumentation
#tools
#howto .
Article
Bundling Common Rake Tasks into a Gem (8 mins read).
An example of how to create a helper gem for common Rake task, using the real-world example of Chef cookbooks.
Thu, 05 Apr 2018 21:17 by Jamie Tanna
.
#blogumentation
#chef
#chefdk
#gem
#ruby
#rake
#foodcritic
#rubocop
#rspec
#knife-cookbook-doc
#gitlab-ci .
Article
Running docker login
as another user in Chef (2 mins read).
Hitting the error permission denied while trying to connect to the Docker daemon socket
when trying to run docker login
as a non-root user in Chef.
Mon, 26 Mar 2018 21:14 by Jamie Tanna
.
#docker
#chef
#blogumentation .
Article
Chef 13 Upgrade: knife-cookbook-doc
Rubocop Updates (1 mins read).
Disabling the Missing space after #
and Do not use block comments
errors for your knife-cookbook-doc
formatted comments.
Fri, 09 Mar 2018 17:30 by Jamie Tanna
.
#blogumentation
#chef-13-upgrade
#chef
#knife-cookbook-doc
#chef-13
#documentation
#chef-13-upgrade-rubocop .
Article
Chef 13 Upgrade: knife-cookbook-doc
gem upgrade (1 mins read).
Fixing odd Logger
entries in autogenerated knife-cookbook-doc
README.md
s for Chef 13.
Wed, 07 Mar 2018 20:34 by Jamie Tanna
.
#blogumentation
#chef-13-upgrade
#chef
#knife-cookbook-doc
#chef-13
#documentation .
Article
Chef 13 Upgrade: Deprecation of Namespace Collisions in Custom Resources (1 mins read).
Preparing for breaking changes in Chef 14 by renaming property_name
to new_resource.property_name
in Custom Resources.
Wed, 07 Mar 2018 20:34 by Jamie Tanna
.
#blogumentation
#chef-13-upgrade
#chef-13-upgrade-deprecation
#chef
#chef-13
#chef-14 .
Article
Verify a Ruby Class Method is Called with Arguments in Rspec, Without Doubles or Mocks (1 mins read).
Rspec code to verify that a Ruby Class Method is called from another method, without needing to mock anything.
Wed, 07 Mar 2018 15:28 by Jamie Tanna
.
#blogumentation
#ruby
#testing
#rspec .
Article
Testing Chef's ruby_block
s with ChefSpec (3 mins read).
Testing implementation of a ruby_block
in ChefSpec, to ensure that the code executes as expected.
Wed, 07 Mar 2018 12:01 by Jamie Tanna
.
#blogumentation
#chef
#chefspec
#testing .
Article
Chef 13 Upgrade: Lessons Learnt and Documented for Posterity (1 mins read).
Notes on the main problems encountered when upgrading from Chef 12 to Chef 13, both with ChefSpec and Rubocop.
Tue, 06 Mar 2018 20:34 by Jamie Tanna
.
#blogumentation
#chef-13-upgrade
#chef-13-upgrade-rubocop
#chef-13-upgrade-chefspec
#chef
#rubocop
#chefspec
#chef-13
#chefspec-7
#rubocop-0-49 .
Article
Chef 13 Upgrade: Rubocop Changes for lazy
Parameters (1 mins read).
How to resolve the Parenthesize the param lazy
Rubocop error when upgrading your cookbook to Chef 13.
Tue, 06 Mar 2018 20:34 by Jamie Tanna
.
#blogumentation
#chef-13-upgrade
#chef-13-upgrade-rubocop
#chef
#rubocop
#chef-13
#rubocop-0-49 .
Article
Chef 13 Upgrade: Rubocop Changes for Testing render_file
with ChefSpec and a with_content
Block (1 mins read).
How to resolve the Parenthesize the param render_file
Rubocop error when upgrading your cookbook to Chef 13.
Tue, 06 Mar 2018 20:34 by Jamie Tanna
.
#blogumentation
#chef-13-upgrade
#chef-13-upgrade-chefspec
#chef
#chefspec .
Article
Chef 13 Upgrade: Rubocop Changes for Word Array Literals (%w
) (1 mins read).
A one-liner shell command to fix Rubocop errors %w-literals should be delimited by [ and ]
.
Tue, 06 Mar 2018 20:34 by Jamie Tanna
.
#blogumentation
#chef-13-upgrade
#chef-13-upgrade-rubocop
#chef
#rubocop
#chef-13
#rubocop-0-49 .
Article
Chef 13 Upgrade: Testing ruby_block
s with ChefSpec (1 mins read).
Replace your block.old_run_action
with block.block.call
to trigger ruby_block
s within ChefSpec 7 and Chef 13.
Tue, 06 Mar 2018 20:34 by Jamie Tanna
.
#blogumentation
#chef-13-upgrade
#chef-13-upgrade-chefspec
#chef
#chefspec
#chef-13
#chefspec-7 .
Article
Emoji Support in Dunst (2 mins read).
How to see Emoji when using the Dunst notification system.
Wed, 28 Feb 2018 17:42 by Jamie Tanna
.
#arch-linux
#dunst
#dotfiles
#blogumentation
#emoji .
Article
SSLError
When Running Berkshelf Behind a Proxy (2 mins read).
Getting around the pesky OpenSSL::SSL::SSLError SSLv2/v3 read server hello A
error when running Berkshelf behind a proxy.
Fri, 16 Feb 2018 15:44 by Jamie Tanna
.
#chef
#blogumentation
#proxy
#command-line
#shell
#chefdk
#berkshelf .
Article
Running service
resources in Kitchen-Docker (3 mins read).
How to get up and running with service
resources when running Test Kitchen with the Docker driver, in this example for use with GitLab CI.
Sun, 03 Sep 2017 20:23 by Jamie Tanna
.
#blogumentation
#chef
#kitchen
#docker
#howto .
Article
Trusting Self-Signed Certificates from the Chef Development Kit (2 mins read).
How to get the ChefDK (and associated tools) to trust internal / self-signed certificates, in an easy oneliner.
Thu, 17 Aug 2017 00:10 by Jamie Tanna
.
#blogumentation
#chef
#chefdk
#certificates
#berkshelf .
Article
Getting around Permission Denied
when running ChefSpec (3 mins read).
How to handle getting an EACCES
when trying to run ChefSpec on a recipe.
Sat, 12 Aug 2017 14:23 by Jamie Tanna
.
#blogumentation
#chef
#chefspec
#chefdk .
Article
GitLab Review Apps with Capistrano and Nginx (4 mins read).
Spinning up a version of your application on every push, so others don't have to manually get the code up and running locally.
Tue, 18 Jul 2017 10:24 by Jamie Tanna
.
#guide
#gitlab
#review-apps
#capistrano
#blogumentation .
Article
Testing include_recipe
s with Chef and ChefSpec (2 mins read).
How to best test include_recipe
s within your Chef recipes, as well as how to ensure that you aren't running any dependent recipes in your tests.
Sun, 16 Jul 2017 16:35 by Jamie Tanna
.
#blogumentation
#chef
#tdd
#chefspec .
Article
Blogumentation - Writing Blog Posts as a Method of Documentation (4 mins read).
Why I'm starting to use blog posts as a form of documentation, and why I think they're so well suited.
Sun, 25 Jun 2017 14:22 by Jamie Tanna
.
#musings
#blogumentation
#thoughts .
Article
Converting YAML to JSON and vice versa (Part 1 - Ruby) (2 mins read).
Coerce YAML to JSON and vice versa, from the comfort of your Gem-studded command line.
Thu, 22 Jun 2017 21:16 by Jamie Tanna
.
#blogumentation
#ruby
#command-line
#yaml
#json .
Article
Clean up your Git branches (3 mins read).
Remove any merged local or branches from your local Git repository.
Wed, 07 Jun 2017 20:33 by Jamie Tanna
.
#blogumentation
#git .
Article
Pretty Printing JSON on the Command Line with Python (2 mins read).
Using Python's JSON module to pretty print JSON objects from the command line.
Mon, 05 Jun 2017 08:39 by Jamie Tanna
.
#blogumentation
#python
#json
#pretty-print .
Article
Viewing your diff while writing your commits with git commit --verbose (3 mins read).
Making it easier to write commit messages by having the diff in your editor.
Thu, 01 Jun 2017 20:04 by Jamie Tanna
.
#blogumentation
#git
#commit
#shell
#workflow .
Article
Building Chef Cookbooks with GitLab (Part 1) (12 mins read).
An introduction to how to build a cookbook using GitLab's Continuous Integration platform in conjunction with kitchen-docker
.
Thu, 25 May 2017 11:51 by Jamie Tanna
.
#guide
#howto
#blogumentation
#gitlab
#chef
#test-kitchen
#docker
#gitlab-ci .
Article
Extracting SSL/TLS Certificate Chains Using OpenSSL (1 mins read).
A quick one-liner to get you the full certificate chain in .pem
format.
Fri, 28 Apr 2017 16:53 by Jamie Tanna
.
#blogumentation
#bash
#shell
#oneliner
#openssl
#certificates .
Article
glances, a top
and htop
replacement (1 mins read).
I share the tool I have been using for system utilisation and monitoring, glances
.
Wed, 26 Apr 2017 13:09 by Jamie Tanna
.
#blogumentation
#command-line
#python
#tool
#workflow .
Article
Saving Repetition with Git Commit Templates (3 mins read).
Speed up your commit message writing by providing a template for when you run git commit
.
Mon, 17 Apr 2017 19:27 by Jamie Tanna
.
#blogumentation
#tools
#git
#workflow
#automation .
Article
Cleaning Up Your LaTeX Build Output with latexrun
(3 mins read).
A tool to help reduce the amount of unnecessary output when building LaTeX files.
Thu, 13 Apr 2017 13:54 by Jamie Tanna
.
#blogumentation
#latex
#tools
#workflow .
Article
Continuous Delivery with Capistrano and GitLab Continuous Integration (5 mins read).
How to get up and running with using GitLab CI and the Capistrano deploy tool.
Wed, 25 Jan 2017 22:16 by Jamie Tanna
.
#blogumentation
#capistrano
#deploy
#ci
#gitlab
#docker .