Skip to content

Instantly share code, notes, and snippets.

@fardjad
fardjad / kubernetes-resources-cheatsheet.md
Last active Jul 1, 2020
[Kubernetes resources cheatsheet] A cheatsheet for Kubernetes resource types and their hierarchy #kubernetes #cheatsheet
View kubernetes-resources-cheatsheet.md

Resources

Controllers

In Kubernetes, controllers are control loops that watch the state of your cluster, then make or request changes where needed. Each controller tries to move the current cluster state closer to the desired state

Kubernetes provides the following controllers:

Deployment

@fardjad
fardjad / .!password-authentication-with-mongoose
Last active Apr 29, 2020
[Password Authentication with Mongoose] #nodejs #mongodb #authentication
@fardjad
fardjad / how-to-run-photonos-on-virtualbox.md
Created Aug 28, 2019
[How to run PhotonOS 3+ on VirtualBox] #virtualbox #photonos
View how-to-run-photonos-on-virtualbox.md

How to run PhotonOS 3+ on VirtualBox

Steps

Create the VM

  1. Download the latest OVA (I downloaded the one with UEFI support).

  2. Extract the OVA and grab the VMDK file.

    tar xf photon-*.ova
    
@fardjad
fardjad / how-to-use-an-insecure-local-docker-registry-with-minikube.md
Last active Aug 1, 2019
[How to Use an Insecure Local Docker Registry with Minikube] Steps required to use an insecure docker registry running on localhost with Minikube for development #docker #minikube #development #docker_registry
View how-to-use-an-insecure-local-docker-registry-with-minikube.md

How to Use an Insecure Local Docker Registry with Minikube

Steps

  1. Run a local registry server

  2. Log into the Minikube VM with SSH (minikube ssh)

  3. Make sure GatewayPorts option is set to yes in /etc/ssh/sshd_config (and restart the SSH server if necessary)

  4. Forward the exposed registry port on your host machine to the Minikube VM with SSH:

     ssh -i $(minikube ssh-key) -N docker@$(minikube ip) -R 5000:localhost:5000
    
@fardjad
fardjad / low-level-async-buffered-read.js
Last active Feb 18, 2019
[low-level-async-buffered-read.js] Low-level async buffered read from file with Node.js #nodejs #async #file
View low-level-async-buffered-read.js
const fs = require("fs");
const EventEmitter = require("events").EventEmitter;
const read = (fileHandle, bufferSize, position, emitter) => {
const buffer = Buffer.alloc(bufferSize);
fs.read(
fileHandle,
buffer,
0,
@fardjad
fardjad / find-binary-files-in-git-repo.sh
Created Feb 8, 2019
[find-binary-files-in-git-repo.sh] Find binary files in a git repo #git #bash
View find-binary-files-in-git-repo.sh
#!/bin/bash
git_files=$(git ls-files)
for git_file in $git_files; do
encoding=$(file --mime-encoding "$git_file")
type=$(echo "$encoding" | awk -F ': ' '{ print $2 }')
if [ "$type" == "binary" ]; then
echo $git_file
fi
@fardjad
fardjad / .!php-sample-with-grunt-composer-phpunit-and-continuos-testing
Last active Feb 8, 2019
[PHP sample with Grunt, Composer, PHPUnit, and continuos testing] #php #grunt #composer #phpunit
@fardjad
fardjad / Unity3DObjectDragHandler.cs
Last active Feb 7, 2019
[Unity3DObjectDragHandler.cs] Handles drag and drop for a 3D object in Unity3D #unity #csharp #draganddrop
View Unity3DObjectDragHandler.cs
using UnityEngine;
public class Unity3DObjectDragHandler : MonoBehaviour
{
public Camera camera;
public void Start()
{
}
@fardjad
fardjad / iterm2-keybindings-for-better-navigation.md
Last active Feb 7, 2019
[iTerm2 key bindings for better navigation] #iterm2 #macos
View iterm2-keybindings-for-better-navigation.md

⌘→: 0x05

⌘←: 0x01

⌘←Delete: 0x15

⌥→: ^[f

⌥←: ^[b

@fardjad
fardjad / kernel-3.10.21-armv6-qemu.patch
Last active Feb 7, 2019
[kernel-3.10.21-armv6-qemu.patch] Kernel 3.10.21-armv6 Patch for QEMU #kernel #arm #linux #qemu #raspberrypi
View kernel-3.10.21-armv6-qemu.patch
Make the "Arm Versatile" board even more versatile, for QEMU, which can
stick weird processors into things that were never meant to receive them.
Based on: http://unicorn.drogon.net/rpi/linux-arm.patch
--- a/arch/arm/mm/Kconfig
+++ b/arch/arm/mm/Kconfig
@@ -71,7 +71,7 @@ config CPU_ARM9TDMI
# ARM920T
config CPU_ARM920T