Skip to content

Instantly share code, notes, and snippets.

View utkuozdemir's full-sized avatar

Utku Özdemir utkuozdemir

View GitHub Profile
@utkuozdemir
utkuozdemir / recursively-unrar-delete-parts.sh
Created November 22, 2020 01:06
Recursively unrar and delete parts
#!/usr/bin/env sh
set -e -u -o
find . -name '*.rar' -execdir unrar e {} \;
find . -type f -name "*.r??" -print -delete
@utkuozdemir
utkuozdemir / delete.sh
Created January 29, 2021 12:24
Delete all Kubernetes pods in CrashLoopBackOff
# Delete - dry run
kubectl get pods --all-namespaces | grep CrashLoopBackOff | awk '{print "--namespace " $1 " " $2}' | xargs -L 1 kubectl delete pod --dry-run=client
# Delete
kubectl get pods --all-namespaces | grep CrashLoopBackOff | awk '{print "--namespace " $1 " " $2}' | xargs -L 1 kubectl delete pod
# get all values of all installed charts
helm ls -A | tail -n +2 | awk '{print "--namespace " $2 " " $1}' | xargs -L 1 helm get values
# Smart Device
## Case rear fan
TEMP PERCENTAGE
* 20
# Kraken X72
## Fan
TEMP PERCENTAGE
20-40 30
45-65 40
@utkuozdemir
utkuozdemir / alpine-user.Dockerfile
Last active October 11, 2023 19:47
A gist to add a user to the Alpine docker image
FROM alpine:3
ENV USER_ID=65535
ENV GROUP_ID=65535
ENV USER_NAME=rsync-user
ENV GROUP_NAME=rsync-user
RUN addgroup -g $GROUP_ID $GROUP_NAME && \
adduser --shell /sbin/nologin --disabled-password \
--no-create-home --uid $USER_ID --ingroup $GROUP_NAME $USER_NAME

Keybase proof

I hereby claim:

  • I am utkuozdemir on github.
  • I am utkuozdemir (https://keybase.io/utkuozdemir) on keybase.
  • I have a public key ASCcFj5bVMx1-1Y0az9svIsZ66yx6SYGErTwjiM49XQZ_Ao

To claim this, I am signing this object:

@utkuozdemir
utkuozdemir / tail.go
Last active November 19, 2021 20:45
Tail Kubernetes pod logs in Golang, reconnect if the stream times out/fails
package main
import (
"bufio"
"context"
"fmt"
corev1 "k8s.io/api/core/v1"
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/tools/clientcmd"
"time"
@utkuozdemir
utkuozdemir / sync.sh
Created June 2, 2022 10:01
Sync current directory to remote using Rsync for remote development
#!/usr/bin/env bash
set -euo pipefail
IFS=$'\n\t'
SCRIPT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]:-$0}"; )" &> /dev/null && pwd 2> /dev/null; )"
LOCAL_DIR=$SCRIPT_DIR
REMOTE_SSH_USER=utku
REMOTE_SSH_HOST=u-home-pc-realtek-nic
@utkuozdemir
utkuozdemir / linux-bridge-demo.sh
Last active June 14, 2022 12:13
How to configure a Linux bridge
#!/usr/bin/env bash
set -euo pipefail
IFS=$'\n\t'
# https://developers.redhat.com/blog/2018/10/22/introduction-to-linux-interfaces-for-virtual-networking
# delete everything
sudo killall nc || true
sudo iptables -D FORWARD -i br1 -o br1 -j ACCEPT || true
sudo ip netns del ns1 || true
@utkuozdemir
utkuozdemir / clear-kvm.sh
Created July 6, 2022 17:09
Clear all KVM machines
#!/usr/bin/env bash
set -euo pipefail
virsh list --all | \
awk '{print $2}' | \
xargs -L1 -I {} virsh destroy {} || true
virsh list --all | \
awk '{print $2}' | \
xargs -L1 -I {} virsh undefine {} || true