From 8aae5be82506687b5fdaa955ffdca54dae514c2f Mon Sep 17 00:00:00 2001 From: drymer Date: Tue, 24 Oct 2017 21:46:26 +0200 Subject: [PATCH] Add functions --- roles/shell-dotfiles/files/functions | 96 ++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 roles/shell-dotfiles/files/functions diff --git a/roles/shell-dotfiles/files/functions b/roles/shell-dotfiles/files/functions new file mode 100644 index 0000000..887a12e --- /dev/null +++ b/roles/shell-dotfiles/files/functions @@ -0,0 +1,96 @@ +# Usar una basura en vez de borrar sin mas +function rm() { + DIR=`date "+%y%m%dT%H%M%s"` + mkdir -p "$HOME/.basura/$DIR" + mv "$@" "$HOME/.basura/$DIR" +} + +# Busca en la basura +function busca() { + find ~/.basura/ -name "*$@*" +} + +# Sube cosas para compartir a mi servidor +function upload_stuff() { + for i in $@ + do + rsync -P -e ssh $i drymer@daemons.it:/var/www/blog/mierdas/ > /dev/null + echo "https://daemons.it/mierdas/$i" + done +} + +# Actualiza kubectl +function upgrade_kubectl (){ + echo "Downloading kubectl..." + version=$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt); + curl -s -L https://storage.googleapis.com/kubernetes-release/release/$version/bin/linux/amd64/kubectl -o /tmp/kubectl + chmod +x /tmp/kubectl + sudo mv /tmp/kubectl ~/Scripts/bin/kubectl-$version + sudo ln -fs ~/Scripts/bin/kubectl-$version ~/Scripts/bin/kubectl + echo "kubectl version: $version" +} + +# Actualiza kops +function upgrade_kops (){ + echo "Downloading kops..." + uri=$(curl -s https://github.com/kubernetes/kops/releases/latest -L | grep "kops-linux-amd64" | grep -v strong | cut -d '"' -f2) + version=$(echo $uri | cut -d'/' -f6) + curl -s -L https://github.com/$uri -o /tmp/kops + chmod +x /tmp/kops + sudo mv /tmp/kops ~/Scripts/bin/kops-$version + sudo ln -fs ~/Scripts/bin/kops-$version ~/Scripts/bin/kops + echo "kops version: $version" +} + +# Completado vago para kubectl +KUBECTL_BIN=`which kubectl` +function kubectl (){ + if [[ -z $KUBECTL_SET ]] + then + KUBECTL_SET=True + source <(kubectl completion zsh) + fi + $KUBECTL_BIN "$@" +} + +# Completado vago para molecule +MOLECULE_BIN=`which molecule` +function molecule() { + if [[ -z $MOLECULE_SET ]] + then + MOLECULE_SET=True + eval "$(_MOLECULE_COMPLETE=source molecule)" + fi + $MOLECULE_BIN "$@" +} + +# Limpiar ramas mergeadas +function delete_old_branches(){ + git checkout master + for branch in `git branch --merged | grep -v master` + do + git branch -d $branch + done +} + +# Entra en un contenedor docker +function enter(){ + if [[ -z $2 ]] + then + command=bash + else + command=$4 + fi + docker exec -ti $1 $command +} + +# Entra en un contenedor k8s +function kenter(){ + if [[ -z $4 ]] + then + command=bash + else + command="$4" + fi + kubectl exec -ti $1 $2 $3 $command +}