Skip to content

Instantly share code, notes, and snippets.

@santisbon
santisbon / kubedf
Last active March 16, 2023 15:45 — forked from redmcg/kubedf
Bash script to show k8s PVC usage #k8s #kubernetes
#!/usr/bin/env bash
NODESAPI=/api/v1/nodes
function getNodes() {
kubectl get --raw $NODESAPI | jq -r '.items[].metadata.name'
}
function getPVCs() {
jq -s '[flatten | .[].pods[].volume[]? | select(has("pvcRef")) | '\
@santisbon
santisbon / emojos.sh
Last active March 16, 2023 15:47
Grab a list of emojos (custom emoji) supported by a Mastodon instance. Sort it, and remove patterns you're not interested in. #mastodon #emoji
# Use your instance domain
DOMAIN=hachyderm.io
EXCLUDE="blob|yeen|another|yetanother"
# Create the script file
cat << EOF > ~/emojos.sh
curl 'https://emojos.in/${DOMAIN}' -o emojos.htm
# Case-insensitive, print only the match rather than the entire line. Sort. Deduplicate. Redirect to file.
grep -io ':[a-zA-Z0-9]*_*[a-zA-Z0-9]*:' emojos.htm | sort | uniq -d > emojos.txt
# Filter out patterns (case-insensitive delete)
@santisbon
santisbon / k8s-deployment.sh
Last active March 16, 2023 15:47
k8s deployment example #kubernetes #k8s
cat <<EOF | kubectl create -f -
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 2
selector:
@santisbon
santisbon / Markdown tips.md
Last active March 16, 2023 15:49
Tips for working with #markdown files.

Markdown cheat sheet

Create a Table of Contents

Download the tool to generate a table of contents.

Add an image to Github gist

git clone https://gist.github.com/<hash>.git # with https
git clone git@gist.github.com:.git # or with ssh
@santisbon
santisbon / LinuxUtilities.md
Last active March 16, 2023 15:49
#Linux utilities on #Windows.

Using Linux utilities on Windows

If you use a Windows computer at work you may feel that you're missing out on some really useful functionality that you're used to having on a UNIX system. Or perhaps you've always used Windows and have struggled with messy workarounds for something that would be easier with Linux commands.

If you're on an older version of Windows that doesn't have the Windows Subsystem for Linux (WSL) or you don't want to install a Linux distribution on your machine, you can still use Linux utilities to quickly get things done. At the end we'll see some notes about doing the same thing on WSL.

This brief guide will help you with an example of a common task: finding out which files have been modified on your computer (or a remote server) within a specified time frame.

First you'll need to install Cygwin. This program will let you use tools similar to a Linux distribution on Windows. At some point during

@santisbon
santisbon / Basic-merge-conflict.md
Last active March 16, 2023 15:54
#Git #merge #conflict

Basic merge conflict

Go to your local project and fetch the remote, bringing the branches and their commits from the remote repository. You can use the -p, --prune option to delete any remote-tracking references that no longer exist in the remote. Commits will be stored in a local branch, remote_name/branch_name

$ git fetch <remote_name>

Check out the branch you want to merge into e.g. master

$ git checkout <base_branch>
@santisbon
santisbon / Sync-a-Fork.md
Last active March 16, 2023 15:54
#git #fork

Sync a Fork

Add a reference to the original repo

List the remote for your fork

$ git remote -v

Add a new remote "upstream" that will be synced with the fork

@santisbon
santisbon / angular-fullstack generator cheat sheet.md
Last active March 16, 2023 15:55
Commonly used commands when developing with the angular-fullstack Yeoman generator. #angular

Cheat sheet

Update npm and install the necessary packages

$ sudo npm install -g npm
$ sudo npm install -g yo grunt-cli gulp-cli bower generator-angular-fullstack

Create a folder for your project and cd into it

@santisbon
santisbon / upgradeNode.sh
Last active March 16, 2023 15:56
Allows having different versions of #node in UNIX-based systems. If you just want to update node on OS X or Windows you can run the installer downloaded from the NodeJS site.
#!/bin/bash
sudo su
npm cache clean -f
# The n package is a Node helper
npm install -g n
# Instead of using "stable", you could specify a version:
# n 4.4.0
n stable
@santisbon
santisbon / XMLHttpRequestPromise.js
Last active March 16, 2023 15:58
Shows the implementation of a method which uses a #javascript #Promise to report the success or failure of an XMLHttpRequest. Based on Mozilla Developer Network documentation.
/*jslint devel: true, browser: true, es5: true */
/*global Promise */
// $http function is implemented in order to follow the standard Adapter pattern
function $http(url) {
'use strict';
var core = {
// Method that performs the ajax request
ajax : function (method, url, args) {