Skip to content

Instantly share code, notes, and snippets.

View jpbochi's full-sized avatar
🦔

JP Bochi jpbochi

🦔
View GitHub Profile
@jpbochi
jpbochi / .bash_ps1
Created August 6, 2019 10:33
bash PROMPT_COMMAND + PS1 for git status
#!/usr/bin/env bash
# copied from http://mediadoneright.com/content/ultimate-git-ps1-bash-prompt
# Customize BASH PS1 prompt to show current GIT repository and branch.
# by Mike Stewart - http://MediaDoneRight.com
# TODO: scope the following env vars to this file only. They can be seen with `declare -p`
# Reset
Color_Off="\[\033[0m\]" # Text Reset
@jpbochi
jpbochi / runcached.bash
Created August 2, 2019 17:15
Run speficied (presumably expensive) command with specified arguments and cache result. If cache is fresh enough, don't run command again but return cached output.
#!/usr/bin/env bash
set -o errexit
set -o nounset
set -o noglob
set -o pipefail
#
# Purpose: run speficied command with specified arguments and cache result. If cache is fresh enough, don't run command again but return cached output.
# Also cache exit status and stderr.
# License: GPLv3
@jpbochi
jpbochi / delete-baddie.sh
Created August 3, 2020 10:33
kubectl force delete
# Start a kubectl proxy
kubectl proxy
# Get a json with the resource you want to delete
kubectl get challenges.acme.cert-manager.io quickstart-example-tls-1016717128-3781756796-4176224615 -o json > bad.json
# Make a PUT call removing any finalizer
cat bad.json | jq '. | setpath(["metadata","finalizers"]; [])' | curl -kD- -H "Content-Type: application/json" -X PUT --data-binary @- "127.0.0.1:8001$(cat bad.json | jq -r '.metadata.selfLink')"
@jpbochi
jpbochi / keybase.md
Created October 14, 2020 09:53
keybase.md

Keybase proof

I hereby claim:

  • I am jpbochi on github.
  • I am jpbochi (https://keybase.io/jpbochi) on keybase.
  • I have a public key whose fingerprint is F786 2518 AC95 8837 46FA 77F0 1E82 F6A5 57A5 C04D

To claim this, I am signing this object:

@jpbochi
jpbochi / try-acquire-lock-s3.sh
Created July 25, 2017 12:56
bash script to lock/unlock resources by using an S3 bucket with file versioning
#!/usr/bin/env bash
set -eu
log () {
echo >&2 "[lock] $@"
}
putLock () {
aws s3api put-object --region $REGION --bucket $BUCKET --key $LOCK_KEY --output text --query 'VersionId'
}
@jpbochi
jpbochi / pubkey.pgp
Created December 28, 2020 16:24
test public gpg key
-----BEGIN PGP PUBLIC KEY BLOCK-----
mQINBF+GyRMBEADA8FXW5Ohe9rRU3bfLe5INgIT0sPln+ToPDPNQYhZhqh95amKR
qwJ9XO7R84WL0/b7GCTEdL5PmdkXpHAfWxAk1BNvWMCjsw4BrNZ4DTFywuvQc7Oj
5n5G32u4VB3ylGct808iD0F3tXSnSnoRZNuXTwz8oA73XM3l3fUjbzrpoEd7NPTK
uxn+OcK1591OVW/JKXt12aru+JF/UCfJV5y9droE/b7D47gGqylSp6Ba+AjlVtdt
PLJoUgId2uca5U+Fa1Fe6TeTjJpb9Xh09sRiy5dkE4WIiqdziSjDiy5YFiNXJsNV
KMl7kkBERXHPqVFIR9NNX3bvgB9u5MYdLNgrEIkvQUbDr7jmBoNllA7rpZl66JVn
9Xduvilb7yHKosCS54JSBQ86gEhNxBV1u3QuDhSzwYc7yEtrKEBqePLwRnfzXEAU
/paKIOdnBB8dcQY8TWCkrh9mA5RbisQw4wRkeexhpwvbNWlfeIoTceEYypGEGjoy
@jpbochi
jpbochi / asana-favicon-notification.js
Last active January 12, 2022 14:21
Asana dynamic favicon to show Inbox notifications
// ==UserScript==
// @name Asana Dynamic Favicon
// @namespace https://gist.githubusercontent.com/jpbochi/f651698e371f7deda33d039ddaa2bda5
// @version 0.1.0
// @description This modern Asana Inbox favicon notification displays an orange notification circle (just like Asana does in the app) to the top right of the Asana favicon when your active Organization/Workspace Inbox has any unread items. Enjoy!
// @author JP Bochi
// @match https://app.asana.com/*
// @grant none
// @run-at document-body
// @downloadURL https://gist.githubusercontent.com/jpbochi/f651698e371f7deda33d039ddaa2bda5/raw/asana-favicon-notification.js
! name: JP Test
! description: Getting my Goggles wet
! public: false
! author: JP
$site=nytimes.com$downrank=10
@jpbochi
jpbochi / only-single-comments.js
Last active July 28, 2022 09:50
On GitHub PR inline comments, changes default button to "Add single comment"
// ==UserScript==
// @name Only Single Comments
// @namespace https://gist.githubusercontent.com/jpbochi/ac88177a0a4741300c2f24c4e33a9c90
// @version 1.0.5
// @description On GitHub PR inline comments, changes the default button from "Start a review" to "Add single comment"
// @author JP Bochi
// @match https://github.com/*/*/pull/*
// @icon https://www.google.com/s2/favicons?domain=github.com
// @downloadURL https://gist.githubusercontent.com/jpbochi/ac88177a0a4741300c2f24c4e33a9c90/raw/only-single-comments.js
// @updateURL https://gist.githubusercontent.com/jpbochi/ac88177a0a4741300c2f24c4e33a9c90/raw/only-single-comments.js
@jpbochi
jpbochi / Makefile
Created August 18, 2022 16:09
Makefile - list all available commands
.PHONY: default list
default: list
list:
@echo Available make targets:
@LC_ALL=C $(MAKE) -pRrq -f $(lastword $(MAKEFILE_LIST)) : 2>/dev/null \
| sed -e '0,/^# Files/ d' -e '/^# Not a target:/,+1 d' \
| grep '^[[:alnum:]]' \
| sed 's/:.*//'