Skip to content

Instantly share code, notes, and snippets.

@socketbox
socketbox / worktree.md
Last active March 27, 2025 10:29
Start a new git worktree from an existing branch other than the default

Starting out

Run these commands in a directory devoted to your project:

mkdir project_foo
cd project_foo
git clone --bare [email protected]:yourorg/project_foo.git .bare
echo "gitdir: ./.bare" > .git

Now edit .bare/config, adding fetch = +refs/heads/*:refs/remotes/origin/* below [remote "origin"]

@socketbox
socketbox / pre-commit.sh
Last active May 23, 2022 22:30
Pre-commit hook for git
if git rev-parse --verify HEAD
then
export against=HEAD
else
# Initial commit: diff against an empty tree object
export against=$(git hash-object -t tree /dev/null)
fi
files=$(git diff --name-only --diff-filter=ACTM $against)
for f in $files; do
@socketbox
socketbox / rate_limit_test.py
Created April 5, 2022 05:13
Using async IO to test rate limiting
from requests_threads import AsyncSession
import requests
import multiprocessing
import sys
req_count = 500
async_sess = AsyncSession(n=req_count)
async def make_sign_in_call(cookie: dict):
status = 200
@socketbox
socketbox / list_certs.sh
Created February 4, 2022 22:42
Get all certificates for a given project
#!/bin/sh
gcloud --format list compute ssl-certificates list
@socketbox
socketbox / check_versioning_on_tfstate.py
Last active December 3, 2021 21:49
A not-so-quick but dirty script that changes bucket versioning across all projects in a GCP organization
"""
"""
from google.cloud.resourcemanager import ProjectsClient
from google.cloud.storage import Client
from google.api_core import exceptions
from google.api_core.retry import Retry
ORGANIZATION_ID = 'YOUR-ORG-ID'
_RETRYABLE_TYPES = [
@socketbox
socketbox / k8s_debug_pod.sh
Last active November 3, 2021 00:01
Kubernetes debugging pod based on praqma/network-multitool image
#!/bin/zsh
set -euo pipefail
if [[ "$#" -ne 1 ]];
then
echo "Set the namespace by passing in a single argument"
fi
IMAGE="praqma/network-multitool:alpine-extra"
NAMESPACE=$1
@socketbox
socketbox / postgres_queries_and_commands.sql
Created September 23, 2021 18:54 — forked from rgreenjr/postgres_queries_and_commands.sql
Useful PostgreSQL Queries and Commands
-- show running queries (pre 9.2)
SELECT procpid, age(clock_timestamp(), query_start), usename, current_query
FROM pg_stat_activity
WHERE current_query != '<IDLE>' AND current_query NOT ILIKE '%pg_stat_activity%'
ORDER BY query_start desc;
-- show running queries (9.2)
SELECT pid, age(clock_timestamp(), query_start), usename, query
FROM pg_stat_activity
WHERE query != '<IDLE>' AND query NOT ILIKE '%pg_stat_activity%'
@socketbox
socketbox / psql-13.sh
Created July 6, 2021 16:43
Install postgresql-client-13 on Debian Buster
apt update
apt -y install gnupg2
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add -
echo "deb http://apt.postgresql.org/pub/repos/apt/ buster-pgdg main" | tee /etc/apt/sources.list.d/pgdg.list
apt update
apt -y install postgresql-client-13
@socketbox
socketbox / watch_log.sh
Last active July 2, 2021 07:37
Watch logs on data pipeline
watch -n5 \
"ls -al; echo; free -h; echo;\
ps axo pid,ppid,psr,pri,start:18,etime:12,pcpu,pmem,rss:12,vsz:12,cmd; echo;\
tail -n15 elt.log; echo;"
@socketbox
socketbox / terraform_secret_import.sh
Last active February 27, 2021 06:30
Script to automate importing of existing secrets in a GCP project
#!/bin/bash
set -euo pipefail
filename='secmgr.tf'
proj_id=$1
sec_list=$(gcloud secrets list --format="table[no-heading](name.basename())")
for s in ${sec_list[*]};
do