git config --global user.email "you@example.com"
git config --global user.name "Your Name"
su -s /bin/bash <user>
git config --global credential.helper cache
git config --local credential.helper cache
git config --global --unset credential.helper
git clone https://bitbucket.org/<repo>.git --config credential.helper=
ls /run/service/
s6-svc -r /run/service/svc-openssh-server
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
sudo usermod -aG docker $USER
newgrp docker
docker ps -a --format "{{.Names}}"
docker run \
...
--health-cmd "set -e; nc -zv localhost 22; if [ $? -eq 0 ]; then exit 0; else exit 1; fi" \
--health-interval=10s
...
# set to working version
DOCKER_API_VERSION=1.41
docker ps --format "{{printf \"%-30s %-20s\" .Names .Status}}"
watch 'docker ps --format "{{printf \"%-30s %-20s\" .Names .Status}}"'
# foo.py
import foo.bar
foo.bar.foobar()
monkeytype run foo.py
...
monkeytype apply foo.bar
import ipdb
ipdb.set_trace()
https://ianhopkinson.org.uk/2022/02/understanding-setup-py-setup-cfg-and-pyproject-toml-in-python/
├── README
├── pyproject.toml
├── setup.py
└── src
└── foobar
└── __init__.py
[build-system]
requires = ["setuptools>=61.0"]
build-backend = "setuptools.build_meta"
#! /usr/bin/env python
from setuptools import setup
if __name__ == "__main__":
setup()
pip install --editable .
pip install -e .
value, exists := foo["bar"]
if (!exists) {}
# https://go.dev/doc/install
wget <tar_from_https://go.dev/doc/install>
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.20.3.linux-amd64.tar.gz
sudo ln -s /usr/local/go/bin/go /usr/bin/go
#sudo rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.20.3.linux-amd64.tar.gz
# view jobs
jobs
# send job to background and stop
ctrl + z
# resume background job
bg [job id]
# switch to job
fg [job id]
# run command as background job
tail -f log.txt &
cd -P ./sym-link-dir
sudo netstat -tunlp
stat -c %a foo.txt
new window - CTRL + b + c
switch window - CTRL + b + [0-9]+
vertical split | - CTRL + b + %
horizonal split _ - CTRL + b + "
navigate panels - CTRL + b + ↑ / ↓ / ← / →
CTRL + B + ,
CTRL + B + :
select-pane -T <PANE NAME>
CTRL + b + d
tmux a
redis-cli
keys *
xrange <key> - +
# < query >
redis-cli keys rq:res* | awk '{print $1}' | xargs redis-cli del
curl localhost:3000/workflow -X POST -H 'Content-Type: application/json' --data-binary "@data.json"
sometimes when using Node interactive, it might not be able to find global packages. hence it's necessary to set NODE_PATH
export NODE_PATH=$(npm root --quiet -g)
/home/node/app/node_modules/.bin
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
sudo chmod 644 /etc/apt/keyrings/nodesource.gpg
sudo apt-get update
sudo apt-get install nodejs -y
sudo npm install -g typescript
sudo chwon ubuntu -R /usr/lib/node_modules/typescript
sudo chwon ubuntu /usr/lib/node_modules/typescript
// launch.json
{
"type": "node",
"request": "launch",
"name": "ts debug",
"skipFiles": ["<node_internals>/**"],
"program": "${workspaceFolder}/src/index.ts",
"runtimeArgs": ["-r", "ts-node/register", "-r", "tsconfig-paths/register"],
"console": "internalConsole"
}
// tsconfig.json
{
"sourceMap": true
}
// /package.json
{
"scripts": {
"start": "nodemon ./src/index.ts"
},
"nodemonConfig": {
"exec": "tsc && ts-node .",
"ext": "ts"
}
}
// /src/tsconfig.json
{
...
"include": ["./src/frontend/foobar.ts"]
}
// /src/frontend/tsconfig.json
{
"compilerOptions": {
"module": "ES6",
"target": "ES2017",
"outFile": "./foobar.js",
"rootDir": ".",
"sourceMap": true,
"noEmit": false
}
}
var html_to_insert = "<p>New paragraph</p>";
// with .innerHTML, destroys event listeners
document.getElementById('mydiv').innerHTML += html_to_insert;
// with .insertAdjacentHTML, preserves event listeners
document.getElementById('mydiv').insertAdjacentHTML('beforeend', html_to_insert);
// example file
// .vscode/tasks.json
{
"version": "2.0.0",
"inputs": [
{
"id": "imageName",
"type": "promptString",
"description": "Enter the image name",
"default": "my-container-image"
},
],
"tasks": [
{
"type": "typescript",
"tsconfig": "portal/client/tsconfig.json",
"problemMatcher": [
"$tsc"
],
"group": "build",
"label": "tsc: build - portal/client/tsconfig.json"
},
{
"label": "Build Image",
"type": "shell",
"command": "podman",
"args": [
"build",
"-f",
"${file}",
"-t",
"${input:imageName}:${input:imageTag}"
],
"group": {
"kind": "build"
}
}
]
}
kubectl rollout restart deployment/core-service -n osna
https://gist.github.com/khansgithub/c7a6bfca57631a4c45e2c75b7b5f881e#transpile-multile-ts-files