Skip to content

Instantly share code, notes, and snippets.

View klaus385's full-sized avatar

klaus385 klaus385

View GitHub Profile
@kmott
kmott / 01-vault-gitlab-module.tf
Last active September 13, 2024 15:28
Terraform - JWT Auth for GitLab using Vault
//
// This enabled the JWT Auth backend in Vault for GitLab to authenticate with (obtains a Vault token based on $CI_JOB_JWT
// in pipeline jobs)
//
resource "vault_jwt_auth_backend" "gitlab" {
type = "jwt"
path = var.gitlab.jwt_auth_path
jwks_url = format("https://%s/-/jwks", var.gitlab.hostname)
bound_issuer = var.gitlab.hostname
}
@mattmattox
mattmattox / rke_recovery.sh
Last active May 28, 2024 22:09
Recovering cluster.yml and cluster.rkestate from kubeconfig
#!/bin/bash
echo "Building cluster_recovery.yml..."
echo "Working on Nodes..."
echo 'nodes:' > cluster_recovery.yml
kubectl --kubeconfig kube_config_cluster.yml -n kube-system get configmap full-cluster-state -o json | jq -r .data.\"full-cluster-state\" | jq -r .desiredState.rkeConfig.nodes | yq r - | sed 's/^/ /' | \
sed -e 's/internalAddress/internal_address/g' | \
sed -e 's/hostnameOverride/hostname_override/g' | \
sed -e 's/sshKeyPath/ssh_key_path/g' >> cluster_recovery.yml
echo "" >> cluster_recovery.yml
#!/bin/bash
# Proof of concept of running playbooks in AWX and recording them in ARA
# From a vanilla CentOS8 image: https://cloud.centos.org/centos/8/x86_64/images/CentOS-8-GenericCloud-8.1.1911-20200113.3.x86_64.qcow2
# Add local bin directory to PATH so we can use things installed with "pip install --user"
export PATH=$PATH:~/.local/bin
dnf -y update
# Install Ansible and Python3
@DzeryCZ
DzeryCZ / ReadingHelmResources.md
Last active February 24, 2026 00:10
Decoding Helm3 resources in secrets

Helm 3 is storing description of it's releases in secrets. You can simply find them via

$ kubectl get secrets
NAME                                                TYPE                                  DATA   AGE
sh.helm.release.v1.wordpress.v1                     helm.sh/release.v1                    1      1h

If you want to get more info about the secret, you can try to describe the secret

$ kubectl describe secret sh.helm.release.v1.wordpress.v1
@pirate
pirate / alfred-clipboard.sh
Last active July 25, 2025 09:27
Script to manage searching, backing up, and collecting infinite clipboard history from the Alfred Clipboard History on macOS. Workflow UI: https://alfred.app/workflows/mayjunejuly/clipboard-history-archive/
#!/usr/bin/env bash
# This is a script that provides infinite history to get around Alfred's 3-month limit.
# It works by regularly backing up and appending the items in the alfred db to a
# sqlite database in the user's home folder. It also provides search functionality.
# 🎉 A NEWER IMPROVED VERSION OF THIS IN WORKFLOW FORM: 🚨
# ➡️ https://alfred.app/workflows/mayjunejuly/clipboard-history-archive/
# https://www.alfredforum.com/topic/10969-keep-clipboard-history-forever/?tab=comments#comment-68859
# https://www.reddit.com/r/Alfred/comments/cde29x/script_to_manage_searching_backing_up_and/
@atheiman
atheiman / README.md
Last active August 19, 2024 14:13
Vault Kubernetes Auth Notes

Setting up Kubernetes auth backend on Vault. I did this by running Vault server in dev mode in minikube. Files referenced in the commands below are included as other files in this gist.

Run Vault server in the vault-ns namespace in minikube and expose it as a service

kubectl create namespace vault-ns
kubectl --namespace=vault-ns run vault --image=vault --port=8200 -- vault server -dev -dev-listen-address=0.0.0.0:8200 -dev-root-token-id=root-token
kubectl --namespace=vault-ns expose deployment vault --type=NodePort --port=80 --target-port=8200
minikube service --namespace vault-ns vault --url 
@paolocarrasco
paolocarrasco / README.md
Last active March 5, 2026 20:31
How to understand the `gpg failed to sign the data` problem in git

Problem

You have installed GPG, then tried to perform a git commit and suddenly you see this error message after it 😰

error: gpg failed to sign the data
fatal: failed to write commit object

Understand the error (important to solve it later!)

@SippieCup
SippieCup / install_deletion_job.sh
Last active January 22, 2019 22:26
Installer for script & cron job that automatically deletes older drives when free space goes under 10GB.
#!/bin/sh
# Create deletion script
if [ ! -d /data/cleardata ]
then
echo "Creating /data/cleardata folder"
mkdir /data/cleardata
else
echo "/data/cleardata folder already exists..."
fi
@superseb
superseb / create_user_and_kubeconfig_rancher2.sh
Last active November 4, 2025 16:04
Create local user and generate kubeconfig in Rancher 2 via API
#!/bin/bash
RANCHERENDPOINT=https://your_rancher_endpoint/v3
# The name of the cluster where the user needs to be added
CLUSTERNAME=your_cluster_name
# Username, password and realname of the user
USERNAME=username
PASSWORD=password
REALNAME=myrealname
# Role of the user
GLOBALROLE=user
@halberom
halberom / htmlfile.html
Created December 6, 2017 11:16
ansible - example of parsing html table into dict
<html><title>Find Location of an IP</title>
<body><font face=\"Arial\">
<H1>Please provide an IP or a LOCATION :</H1>
<p>Search Location, DS site code, Country, Network types or Comments</p>
<form method=\"GET\" action=\"launch_search_IP.pl\">
<p> <input name=\"ip_to_search\" width=\"100%\" height=\"100%\" ></p>
<input type=\"submit\" value=\"Search\"></form>
<p> Here are results for your search of <b> 192.168.0.1 </b> :
<br>
<br>