Skip to content

Instantly share code, notes, and snippets.

View voidfiles's full-sized avatar

Alex Kessinger voidfiles

View GitHub Profile
voidfiles / .gitignore
Last active February 6, 2023 00:47
Slack Incident Timeline Builder
View .gitignore
voidfiles /
Last active June 4, 2022 02:37
A alpine linux chrome kiosk image builder
voidfiles / example.go
Created March 11, 2020 02:30
Create a go lang firestore test connection with custom JWT claims
View example.go
package main
type TestingToken struct {
jwt string
func (t token) GetRequestMetadata(ctx context.Context, uri ...string) (map[string]string, error) {
return map[string]string{
"authorization": "bearer " + t.token,
}, nil
voidfiles /
Last active June 30, 2023 07:17
The Five Dysfunctions of a Team: A Leadership Fable

The Five Dysfunctions of a Team: A Leadership Fable

#book #read

by Patrick Lencioni

Lencioni reveals the five dysfunctions which go to the very heart of why teams even the best ones-often struggle. He outlines a powerful model and actionable steps that can be used to overcome these common hurdles and build a cohesive, effective team.

Main gist

The 5 Dysfunctions

  • Lack of trust

Keybase proof

I hereby claim:

  • I am voidfiles on github.
  • I am voidfiles ( on keybase.
  • I have a public key ASDv2Yh9I6PNOuiWnsIqrPstDmgmmvuuuK9dEfSMhVM7AAo

To claim this, I am signing this object:

voidfiles /
Last active June 1, 2018 18:17
My Personal Tech Values


This is an attempt to enumerate my values as a developer. In order to better evaluate future choices.


Face it, most things we try for the first time don't work quite right. That is the nature of trying new things. But, trying things is how we adapt. Given that the world is rapidly changing, the only way we can keep up is to try lots of new things, constantly. Therefore I highly value experimentation especially the kind that leads to failure as it is the best teacher.

Any choice I make needs to embrace experimentation. It should have a healthy budget for failure or missing the mark. It should learn from failure.

voidfiles /
Last active August 23, 2021 08:10
A readme for an Ansible Repo

About Ansible

Ansible is configuration management tool and remote orchestration tool. It's kind of like Puppet, and Fabric had a baby. It can get boxes into a desired state like Puppet, but it can also run commands on a bunch of remote boxes like Fabric. It has a few difference from puppet. Namely that it pushes its configuration on demand to boxes instead of having a puppet dameon periodically check for changes and reset things. It also is configured entirely through yaml files that run tasks, instead of having a DSL for managing state.

Ansible is broken down into three major parts. Inventory, Playbooks, and Roles. I will cover these three briefly. Anyone looking for a more in-depth documentation on ansible should checkout the docs.


An inventory is a document that describes all of the hosts you want to manage, and how they are grouped. Take a look at our master inventory to get a sense of the structure.

voidfiles / index.json
Created May 19, 2017 22:08
Hugo JSON Feed Template add to layouts/index.json
View index.json
"version": "",
"title": {{ .Site.Title | jsonify }},
"home_page_url": {{ .Permalink | jsonify }},
{{ with .OutputFormats.Get "json" -}}
"feed_url": {{ .Permalink | jsonify }},
{{- end }}
{{ if ( or (.Site.Params.author_url) -}}
"author": {
{{ if -}}
voidfiles /
Last active May 3, 2017 22:03
Making a relocatable virtualenv
#! /bin/bash -e
set -ex
if [[ -z "${BUILD_TAG}" ]]; then
echo "BUILD_TAG must be set before running this script";
export WORKSPACE=$(pwd)
voidfiles / gist:a24fea5fd56a8f81c361c84bd29e8411
Created September 23, 2016 21:47
Multiservice Jenkinsfile Reuse
View gist:a24fea5fd56a8f81c361c84bd29e8411

Let me know if this sounds, right.

I work at a company that has N services. Each service has it's own deployable artifact. Each artifact creation process is unique, but the pipeline, and deployment processes are similar. As we grow we are looking to create more services. I would like to manage this complexity in a couple of ways.

  1. We use Jenkins
  2. I'd like to use Jenkinsfile's to manage the jobs
  3. The artifact process should stay unique, some shared code loaded via fileLoader.fromGit
  4. I plan on using a shared deployment job configured via params
  5. I plan on using a shared pipeline job configured via params