Skip to content

Instantly share code, notes, and snippets.

View kkroesch's full-sized avatar

Karsten Kroesch kkroesch

View GitHub Profile
@kkroesch
kkroesch / playbook.yaml
Created May 16, 2024 11:56
Template Ansible Playbook
---
- name: Example Ansible Playbook
hosts: all
become: true
vars:
paketname: "htop"
quellpfad: "/pfad/zur/datei"
zielpfad: "/pfad/zum/ziel"
tasks:
@kkroesch
kkroesch / pods.nsh
Created May 16, 2024 11:04
Kubectl in Nu Shell
def pods [] { kubectl get pods -o yaml | from yaml | get items }
pods | get metadata.name
@kkroesch
kkroesch / chart.html
Last active April 26, 2024 09:53
Hugo Hextra Chart Shortcode
<!-- layouts/shortcodes/chart.html -->
<div id="{{ .Get "id" }}" style="width:{{ .Get "width" }}px;height:{{ .Get "height" }}px;">
</div>
<script>
let data = JSON.parse({{ .Inner }})
console.log(data)
canvas = document.getElementById('{{ .Get "id" }}');
Plotly.newPlot( canvas, [{x: data.ord, y: data.absz}], { margin: { t: 0 } } );
</script>
@kkroesch
kkroesch / cert_valid_days_local.sh
Last active May 22, 2024 13:09
Checking the remaining valid days for certificates.
#!/usr/bin/env bash
# Return the number of days the given certificate file is still valid
#
if [ "$#" -eq 0 ]; then
echo "Usage: crt_valid_days <certificate>"
exit 1
fi
if ! command -v openssl &> /dev/null; then
echo "ERROR: OpenSSL not installed."
@kkroesch
kkroesch / functional.go
Created March 27, 2024 20:40
Map, Reduce, Filter with Go Generics
package functional
func Map[TValue any](values []TValue, f func(TValue) TValue) {
for i, value := range values {
values[i] = f(value)
}
}
func Reduce[TValue, TResult any](values []TValue, f func(TValue, TResult) TResult) TResult {
@kkroesch
kkroesch / mkinventory.sh
Last active March 11, 2024 10:04
Manage VirtualBox VMs with Ansible
running_vms=($(VBoxManage list runningvms | awk '{print $1}' | tr -d '"'))
# Create Ansible inventory file
GROUP_NAME="local_vms"
for vm in $running_vms
do
vboxmanage guestproperty get "$vm" "/VirtualBox/GuestInfo/Net/0/V4/IP"
done |
awk -v group="$GROUP_NAME" '
BEGIN { printf("[%s]\n", group)}
@kkroesch
kkroesch / chat.js
Last active February 3, 2024 15:24
Chatbot Scaffold, HTML with Bootstrap 5.x via CDN
const spinner = document.getElementById('spinner')
document.getElementById('userinput').addEventListener('submit', function(event) {
event.preventDefault(); // Verhindert, dass das Formular die Seite neu lädt
spinner.style.visibility = 'visible'
var textbox = document.getElementById('usermessage')
var actor = document.createElement('dt')
actor.textContent = "You"
var actorMessage = document.createElement('dd')
actorMessage.textContent = textbox.value
@kkroesch
kkroesch / add-hd.yaml
Last active January 26, 2024 12:31
Resize LVM volumes
- hosts: docker_hosts
tasks:
- name: Identifiziere ein ungenutztes Laufwerk
community.general.lvol:
# Befehle zum Finden und Validieren des ungenutzten Laufwerks
# Dies kann komplex sein und erfordert möglicherweise benutzerdefinierte Logik
- name: Füge das Laufwerk als Physical Volume hinzu
community.general.pvcreate:
device: /dev/sdX
@kkroesch
kkroesch / index.html
Last active January 24, 2024 10:12
HTML 5 Template
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{ title }}</title>
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" rel="stylesheet">
<link href="/static/style.css" rel="stylesheet">
@kkroesch
kkroesch / httpbin.go
Created January 15, 2024 19:37
Go POST Request
package main
import (
"bufio"
"bytes"
"encoding/json"
"fmt"
"net/http"
"time"
)