Skip to content

Instantly share code, notes, and snippets.

@emmanuelnk
emmanuelnk / tree_style_tab_firefox.md
Created August 29, 2022 14:28 — forked from ruanbekker/tree_style_tab_firefox.md
Hide Native Tabs with Tree Style Tabs for Firefox
@emmanuelnk
emmanuelnk / merge.squash.rebase.md
Created August 25, 2022 16:46
git merge vs git merge --squash vs git rebase

Let's start by the following example:

[![enter image description here][1]][1]

Now we have 3 options to merge changes of feature branch into master branch:

  1. Merge commits
    Will keep all commits history of the feature branch and move them into the master branch
    Will add extra dummy commit.
@emmanuelnk
emmanuelnk / displayAwsAccountAlias.js
Last active January 19, 2024 18:49
GreaseMonkey script to show an AWS account alias in the top nav bar
// ==UserScript==
// @name DisplayAWSAccountAlias
// @version 1
// @grant none
// @match https://*.console.aws.amazon.com/*
// ==/UserScript==
// Replace with your account numbers and desired alias
// The key is the account number and the value is the alias to display
const accountAliases = {
@emmanuelnk
emmanuelnk / aws-block-stack.ts
Created January 28, 2022 18:43 — forked from leegilmorecode/aws-block-stack.ts
Example of API Gateway caching on AWS using the CDK
// create the rest API for accessing our lambdas
const api: apigw.RestApi = new apigw.RestApi(this, "blogs-api", {
description: "blogs api gateway",
deploy: true,
deployOptions: {
// this enables caching on our api gateway, with a ttl of five minutes (unless overridden per method)
cachingEnabled: true,
cacheClusterEnabled: true,
cacheDataEncrypted: true,
stageName: "prod",
@emmanuelnk
emmanuelnk / dwr.sh
Created November 18, 2021 16:58
Delete Workflow Runs
#!/usr/bin/env bash
# Delete workflow runs - dwr
# Given an "owner/repo" name, such as "qmacro/thinking-aloud",
# retrieve the workflow runs for that repo and present them in a
# list. Selected runs will be deleted. Uses the GitHub API.
# Requires gh (GitHub CLI), jq (JSON processor) and fzf
@emmanuelnk
emmanuelnk / code-reviews.md
Created October 8, 2021 06:19 — forked from sktse/code-reviews.md
How to Keep Pull Requests Manageable

How to Keep Pull Requests Manageable

  • There are a lot different things you can try to keep pull requests manageable.
  • These pointers are not meant to be rules, but merely guidelines when possible. Due to the nature of what you are working on, some of these techniques may not be possible (or incredibly difficult).

More like guidelines

  • Either way, here are some tips to help make people not want to claw their eyes out reviewing a pull request.

The Basics

  • These are the fundamental basics to a pull request and ALL pull requests should have these, regardless of how small or meaningless it is.
@emmanuelnk
emmanuelnk / cronlist.sh
Created March 31, 2021 11:53 — forked from islander/cronlist.sh
Script to list all cron events on a system - found on stackoverflow.com: http://bit.ly/nkFwD9 Modified from original to list /etc/anacron jobs
#!/bin/bash
# System-wide crontab file and cron job directory. Change these for your system.
CRONTAB='/etc/crontab'
ANACRONTAB='/etc/anacrontab'
CRONDIR='/etc/cron.d'
# Single tab character. Annoyingly necessary.
tab=$(echo -en "\t")
@emmanuelnk
emmanuelnk / cronlist.sh
Created March 31, 2021 11:52 — forked from Zitrax/cronlist.sh
Script to list all cron events on a system - found on stackoverflow.com: http://bit.ly/nkFwD9 Modified from original to pick up users also in /home.
#!/bin/bash
# System-wide crontab file and cron job directory. Change these for your system.
CRONTAB='/etc/crontab'
CRONDIR='/etc/cron.d'
# Single tab character. Annoyingly necessary.
tab=$(echo -en "\t")
# Given a stream of crontab lines, exclude non-cron job lines, replace
@emmanuelnk
emmanuelnk / ssh2-client.ts
Created March 23, 2021 14:32
Forward SSH port in Node.js
import sshClient from 'ssh2-promise'
const config = {
database: {
host: process.env.DB_HOST,
username: process.env.DB_USER,
password: process.env.DB_PASSWORD,
port: process.env.DB_PORT,
databaseName: process.env.DB_NAME,
},
@emmanuelnk
emmanuelnk / api.service
Last active February 17, 2021 17:29
The NewBoston Bank and Validator Setup Scripts
[Unit]
Description = Service to run Django API
After = network.target
[Service]
EnvironmentFile = /etc/bank/environment
User = deploy
ExecStart = /usr/local/bin/start_api.sh
[Install]