Skip to content

Instantly share code, notes, and snippets.

View ruzickap's full-sized avatar

Petr Ruzicka ruzickap

View GitHub Profile
@ruzickap
ruzickap / kubernetes_notes.sh
Last active September 13, 2019 05:38
Kubernetes notes
# Connect to PostgreSQL database internally
kubectl run -i --tty --rm psql --image=postgres --env "PGPASSWORD=user_password" --command -- \
psql -U myuser -h patroni.patroni.svc.cluster.local my_database
# Port forwarding to service
kubectl port-forward -n harbor service/harbor 8080:443
@ruzickap
ruzickap / benchmark_disk.sh
Created July 10, 2019 09:18
This script is trying to produce the same stats as CrystalDiskMark for Windows using fio.
#!/bin/bash -eu
# This script is trying to produce the same stats as CrystalDiskMark for Windows
# using fio.
# If you specify the raw disk (like /dev/sdc) the all it's content will be removed!
# The script should not run longer than 20 minutes
TMP_FILE=${TMP_FILE:-/tmp/$(basename $0).tmp}
UNATTENDED=${UNATTENDED:-0}
@ruzickap
ruzickap / debug_ddns_service.sh
Created June 4, 2019 05:45
Debug service on OpenWrt
sed -r -i 's%^(#!.*)%\1\nset -x -v\nexec \&>/tmp/ddns-init.log%' /etc/init.d/ddns
sed -r -i 's%^(#!.*)%\1\nset -x -v\nexec \&>/tmp/ddns-hotplug.log%' /etc/hotplug.d/iface/95-ddns
sed -r -i 's%^(#!.*)%\1\nset -x -v\nexec \&>/tmp/ddns-updater.log%' /usr/lib/ddns/dynamic_dns_updater.sh
# $ head -5 /etc/init.d/ddns
# #!/bin/sh /etc/rc.common
# set -x -v
# exec &>/tmp/ddns-init.log
# START=95
# STOP=10
@ruzickap
ruzickap / delete_remove_virtualbox_vm.sh
Last active May 23, 2019 16:32
Delete and remove VM in Virtualbox
VBoxManage list vms
VBoxManage controlvm 6d3e674d-7626-4142-969f-8017b679fbd0 poweroff
VBoxManage unregistervm --delete 6d3e674d-7626-4142-969f-8017b679fbd0
@ruzickap
ruzickap / latest_vagrant_install.sh
Created May 21, 2018 08:35
Install latest Vagrant using command line
#!/bin/bash
apt-get install -y --no-install-recommends ca-certificates curl jq
VAGRANT_LATEST_VERSION=$(curl -s https://checkpoint-api.hashicorp.com/v1/check/vagrant | jq -r -M '.current_version')
curl https://releases.hashicorp.com/vagrant/${VAGRANT_LATEST_VERSION}/vagrant_${VAGRANT_LATEST_VERSION}_x86_64.deb --output /tmp/vagrant_x86_64.deb
apt install -y /tmp/vagrant_x86_64.deb
rm /tmp/vagrant_x86_64.deb
@ruzickap
ruzickap / latest_packer_install.sh
Created May 21, 2018 08:34
Install latest Packer using command line
#!/bin/bash
apt-get install -y --no-install-recommends curl jq unzip
PACKER_LATEST_VERSION=$(curl -s https://checkpoint-api.hashicorp.com/v1/check/packer | jq -r -M '.current_version')
curl https://releases.hashicorp.com/packer/${PACKER_LATEST_VERSION}/packer_${PACKER_LATEST_VERSION}_linux_amd64.zip --output /tmp/packer_linux_amd64.zip
unzip /tmp/packer_linux_amd64.zip -d /usr/local/bin/
rm -f /tmp/packer_linux_amd64.zip
@ruzickap
ruzickap / xmp_darktable_raw_decode.sh
Last active April 10, 2021 13:40
Decode RAW files form camera using darktable-cli + XMP to JPEG
#!/bin/bash -eu
for XMP_FILE in *.xmp; do
RAW_FILE=`awk -F \" '/xmpMM:DerivedFrom=/ { print $2 }' $XMP_FILE`
RAW_FILE_NAME="${XMP_FILE%.*}"
FILE_NAME="${RAW_FILE%.*}"
echo "*** $XMP_FILE [$RAW_FILE] [$FILE_NAME]"
if [ "$RAW_FILE_NAME" != "$RAW_FILE" ]; then
@ruzickap
ruzickap / appveyor_minikube.yml
Created April 20, 2018 09:06
Appveyor file which runs minikube for testing Kubernetes
image: ubuntu
build_script:
# Download ans install minikube
# Download kubectl, which is a requirement for using minikube
- curl -sL https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl -o kubectl
- chmod +x kubectl
- sudo mv kubectl /usr/local/bin/
# Download minikube
- curl -sL https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 -o minikube
@ruzickap
ruzickap / kubernetes_kubeadm_installation.sh
Last active April 18, 2018 15:29
Install Kubernetes Multinode Cluster using kubeadm
### Master node installation
# SSH to the first VM which will be your Master node:
ssh root@node1
# Set the Kubernetes version which will be installed:
KUBERNETES_VERSION="1.10.0"
# Set the proper CNI URL:
CNI_URL="https://raw.githubusercontent.com/coreos/flannel/v0.10.0/Documentation/kube-flannel.yml"
@ruzickap
ruzickap / record_desktop.sh
Created April 15, 2018 18:30
Simple script to record desktop in the background using ffmpeg and ImageMagick
#!/bin/bash -eux
DESTINATION_VIDEO_FILE="$HOME/Videos/`date +%F_%T`.mkv"
DESTINATION_SCREENSHOT_DIRECTORY="$HOME/Pictures/"
MAX_RECORDING_TIME="18000" #seconds (5 hours)
echo "*** $DESTINATION_VIDEO_FILE"
ffmpeg -loglevel error -f x11grab -draw_mouse 1 -framerate 25 -video_size 1920x1080 -i :0+0,0 -pix_fmt yuv420p -c:v libx265 -x265-params crf=28 -preset veryfast -to ${MAX_RECORDING_TIME} $DESTINATION_VIDEO_FILE &