Skip to content

Instantly share code, notes, and snippets.

View jedvardsson's full-sized avatar

Jon Edvardsson jedvardsson

View GitHub Profile
@jedvardsson
jedvardsson / PostgresSocketFactory.java
Last active November 30, 2023 09:20
A socket factory for connecting to Postgres via unix domain sockets
package com.github.jedvardsson.pgsf;
import org.postgresql.PGProperty;
import org.postgresql.util.PSQLException;
import javax.net.SocketFactory;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.UncheckedIOException;
@jedvardsson
jedvardsson / .zshrc
Created May 10, 2023 09:12
zshrc prompt
source /opt/homebrew/etc/bash_completion.d/git-prompt.sh
GIT_PS1_SHOWUNTRACKEDFILES=1
GIT_PS1_SHOWDIRTYSTATE=1
GIT_PS1_SHOWUPSTREAM="auto"
#GIT_PS1_SHOWCOLORHINTS=1
GIT_PS1_SHOWCONFLICTSTATE="yes"
setopt PROMPT_SUBST ; PS1='%F{blue}%c%f %F{green}$(__git_ps1 " (%s)")%f\$ '
@jedvardsson
jedvardsson / port-forward-to-remote-host-in-kubernetes.sh
Last active November 29, 2022 09:40
How to setup a port-forward to any host reachable from kubernetes
# How to set up a port-forward to any host reachable from a kubernetes namespace.
# Start a jump-off-pod with `socat` installed in a new terminal (unless there is a pod with socat installed)
kubectl run -it --rm --restart=Never jump-off-pod --image=wbitt/network-multitool:alpine-extra -- bash
# local socat that forward local port over stdio to a socat in a kubernetes pod
socat TCP-LISTEN:${LOCAL_PORT},reuseaddr,fork 'EXEC:"kubectl exec -i jump-off-pod -- socat STDIO TCP-CONNECT:${REMOTE_HOST}:${REMOTE_PORT}"'
@jedvardsson
jedvardsson / test.sh
Last active February 24, 2022 15:06
Test to reproduce buildkit network mode not supported https://github.com/moby/buildkit/issues/978
#!/usr/bin/env bash
set -o errexit
set -o pipefail
function finally() {
docker stop -t 1 my-nginx || true
}
trap finally EXIT
function log_info() {
@jedvardsson
jedvardsson / LabeledEnum.java
Created June 3, 2015 08:59
How to implement a custom Hibernate enum type indexed on a label
public interface LabeledEnum {
String getLabel();
}
@jedvardsson
jedvardsson / vm-setup.sh
Created September 4, 2013 19:44
vm: debian setup
#!/bin/bash
echo "This script installs the necessary details for this host to become a vagrant box."
echo -n "Press enter to continue..."
read
echo "Setting up grub timeout..."
sed -i 's/^GRUB_TIMEOUT=.*/GRUB_TIMEOUT=1/' /etc/default/grub
update-grub
@jedvardsson
jedvardsson / post-receive
Created August 21, 2013 07:11
Git post-receive hook for triggering release builds and dev build in Jenkins for selfhosted Git servers. Dev builds are triggered using Jenkins polling mechanism when branches are commited to. The release builds are triggered when tags are pushed.
#!/bin/bash
## Git post-receive hook for triggering release builds and dev build in
## Jenkins for selfhosted Git servers. Dev builds are triggered using Jenkins
## polling mechanism when branches are commited to. The release builds are
## triggered when tags are pushed.
## Naming conventions
##
## Bare git repo: myproj.git