Skip to content

Instantly share code, notes, and snippets.

View switchspan's full-sized avatar

Ken Taylor switchspan

  • Viking Sasquatch
  • Chesapeake, VA
View GitHub Profile
@switchspan
switchspan / list-all-repos.sh
Created August 25, 2023 18:06 — forked from nikhita/list-all-repos.sh
Generate a list of all repos in a GitHub to paste into Excel
View list-all-repos.sh
#!/usr/bin/env bash
# This script generates a list of repos in a GitHub org.
# The list can be pasted directly to a Microsoft Excel sheet.
# You will need to use your GitHub username in the username field.
# Update the page=N number to get the complete list of repos.
curl --silent --user "username" "https://api.github.com/orgs/vmware/repos?page=1&per_page=100" | npx jq '.[].html_url' | while read repo
do
echo "=Hyperlink("$repo","$repo")"
done
View kubernetes-cheatsheet.markdown

kubernetes shortcuts & cheatsheet

Use a DaemonSet for Pods that need to run one per machine, because they provide a machine-specific system service.

Learning k8s basics

For example, to mark a node unschedulable, run this command:

@switchspan
switchspan / reconnect.js
Created November 13, 2018 17:55 — forked from carlhoerberg/reconnect.js
How to build reconnect logic for amqplib
View reconnect.js
var amqp = require('amqplib/callback_api');
// if the connection is closed or fails to be established at all, we will reconnect
var amqpConn = null;
function start() {
amqp.connect(process.env.CLOUDAMQP_URL + "?heartbeat=60", function(err, conn) {
if (err) {
console.error("[AMQP]", err.message);
return setTimeout(start, 1000);
}
@switchspan
switchspan / gdrive.js
Created August 9, 2018 02:41 — forked from Teivaz/gdrive.js
Google Drive API V3 simple but working use case.
View gdrive.js
'use strict';
const driveUploadPath = 'https://www.googleapis.com/upload/drive/v3/files';
// 'id' is driveId - unique file id on google drive
// 'version' is driveVersion - version of file on google drive
// 'name' name of the file on google drive
// 'appProperties' keep the custom `ifid` field
const fileFields = 'id,version,name,appProperties';
@switchspan
switchspan / Java.md
Created June 14, 2018 18:52 — forked from JeOam/Java.md
Install Java 8 on OS X
View Java.md

on El Capitan, after installing the brew...

$ brew update
$ brew tap caskroom/cask
$ brew install Caskroom/cask/java

And Java 8 will be installed at /Library/Java/JavaVirtualMachines/jdk1.8.xxx.jdk/

Check version:

View docker-cheat-sheat.md

Build docker image

$ cd /path/to/Dockerfile
$ sudo docker build .

View running processes

@switchspan
switchspan / postgres-cheatsheet.md
Created October 15, 2017 21:11 — forked from Kartones/postgres-cheatsheet.md
PostgreSQL command line cheatsheet
View postgres-cheatsheet.md

PSQL

Magic words:

psql -U postgres

Some interesting flags (to see all, use -h):

  • -E: will describe the underlaying queries of the \ commands (cool for learning!)
  • -l: psql will list all databases and then exit (useful if the user you connect with doesn't has a default database, like at AWS RDS)
@switchspan
switchspan / postgres
Created October 12, 2017 18:44 — forked from mmrwoods/postgres
Postgres maintenance crontab file
View postgres
# dump all databases once every 24 hours
45 4 * * * root nice -n 19 su - postgres -c "pg_dumpall --clean" | gzip -9 > /var/local/backup/postgres/postgres_all.sql.gz
# vacuum all databases every night (full vacuum on Sunday night, lazy vacuum every other night)
45 3 * * 0 root nice -n 19 su - postgres -c "vacuumdb --all --full --analyze"
45 3 * * 1-6 root nice -n 19 su - postgres -c "vacuumdb --all --analyze --quiet"
# re-index all databases once a week
0 3 * * 0 root nice -n 19 su - postgres -c 'psql -t -c "select datname from pg_database order by datname;" | xargs -n 1 -I"{}" -- psql -U postgres {} -c "reindex database {};"'
@switchspan
switchspan / README-Template.md
Created March 4, 2017 14:42 — forked from PurpleBooth/README-Template.md
A template to make good README.md
View README-Template.md

Project Title

One Paragraph of project description goes here

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites