Skip to content

Instantly share code, notes, and snippets.

@tomdavidson
tomdavidson / no-snap-on-kubuntu.sh
Last active January 30, 2024 08:11
snapd liberation without waiting for 24.04
#!/usr/bin/env bash
# Ditch snap on kubuntu - including the bs ubuntu does
# Run on a new systems without downloading by
# `$ wget -O - https://gist.githubusercontent.com/tomdavidson/33b42eb24a23adff47b7afe4387f8cf5/raw/0e7e298f519e894790c8b46d667b0210033f0c11/no-snap.sh | bash`
sudo systemctl disable snapd
sudo systemctl disable snapd.service
@tomdavidson
tomdavidson / dns-record.schema.json
Last active September 28, 2023 03:25
A draft DNS record JSONSchema
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "dns-record.schema.json",
"$title": "DNS Record Schema",
"type": "object",
"oneOf": [
{
"$ref": "#/components/records/A"
},
{
@tomdavidson
tomdavidson / example-aws-assume-role-wrapper.sh
Created June 17, 2016 19:40
wrapper scirpt that assumes aws role
#! /usr/bin/env bash
# Wrapper scirpt that assumes aws role and then runs your script that needs the creds.
# Im not remembering where I got it, but it was at least inspired by another if not verbarium.
account_id=$1
role=$2
CMD="$@"
ACCOUNT_ID=11111111111
@tomdavidson
tomdavidson / local-trusted-ssl-cert.sh
Created May 7, 2023 04:15
gen and trust local ssl cert - wip
#!/usr/bin/env bash
# $1 : relative filename
file_path() {
echo "$(cd "$(dirname "$1")" && pwd)/$(basename "$1")"
}
output() {
// @ts-nocheck
import { env } from 'node:process';
import comments from 'eslint-plugin-eslint-comments';
import imprt from 'eslint-plugin-import'; // 'import' is ambiguous and prettier had trouble
import jest from 'eslint-plugin-jest';
import jestFmt from 'eslint-plugin-jest-formatting';
import n from 'eslint-plugin-n';
import nextjs from '@next/eslint-plugin-next';
import prettierConfig from 'eslint-config-prettier';
@tomdavidson
tomdavidson / dependabot-pr-body.txt
Created September 20, 2022 02:41
dependabot PR body
commit efcfd6e9de598a8fc151d25afed99c479760ed3c
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed Jun 29 04:31:48 2022 +0000
Bump turbo from 1.2.9 to 1.3.1 (#17)
Bumps [turbo](https://github.com/vercel/turborepo) from 1.2.9 to 1.3.1.
e notes</summary>
<p><em>Sourced from <a href="https://github.com/vercel/turborepo/releases">turbo's releases</a>.</em></p>
<blockquote>
@tomdavidson
tomdavidson / .kodiak.toml
Created September 20, 2022 02:38
kodiak, semantic pr, and dependabot
# yaml-language-server: $schema=https://json.schemastore.org/dependabot-2.0.json
version: 2
updates:
- package-ecosystem: 'npm'
directory: '/'
schedule:
interval: 'daily'
versioning-strategy: increase-if-necessary
@tomdavidson
tomdavidson / kubectl-db-tunnel.sh
Created June 2, 2022 15:48
k8s socat service to port fwd db access
#!/usr/bin/env bash
get_kubeconfig() {
mkdir -p "$HOME"/.kube
ssa-pg/scripts/pulumi-run.sh kubecfg > "$HOME"/.kube/config
}
PORT=${PORT:-5432}
SERVICE_NAME="postgres-tunnel"
@tomdavidson
tomdavidson / output.txt
Created May 4, 2022 21:58
gcp analyze-entities example
$ gcloud ml language analyze-entities --content="Adt Security Systems bankruptcy dept 1501 Yamato Rd. Boca Raton, FL 33431"
{
"entities": [
{
"mentions": [
{
"text": {
"beginOffset": 21,
"content": "bankruptcy dept"
},
@tomdavidson
tomdavidson / twf.md
Created January 6, 2022 06:12
moving forward trunk based workflow

Trunk-based Workflow

Multiple "right ways" to implement trunk-based delepment and workflow. For more info checkout trunkbaseddevelopment.com. Tom's "right way" emphisies forward moving flow and deploying from artifacts rather than git SHAs:

  • All code change starts and ends with the single, long-lived trunk, main. There are no release, prod, or other long-lived branches. Releases are cut from the trunk.

  • Code review will utilize GitHub PRs from short-lived branches targeting the main trunk. We call these short-lived branches, working branches, to avoid conflating feature-based workflow with our trunk-based workflow.

  • Prior to integration, the proposed change is fully tested, even deployed when end-to-end or manual acceptance tests are needed. Git Hooks are used to run unit tests and static analysis prior to pushing.