Skip to content

Instantly share code, notes, and snippets.

Klaus Brunner KlausBrunner

View GitHub Profile
@KlausBrunner
KlausBrunner / hexdump.java
Created Dec 10, 2019
Java byte array to hexdump. Format similar to default of hexdump(1).
View hexdump.java
static String hexDump(byte[] bytes) {
Formatter format = new Formatter(new StringBuilder());
for (int j = 0; j < bytes.length; j++) {
if (j % 16 == 0) {
format.format((j > 0 ? "\n" : "") + "%08X ", j);
}
format.format("%02X ", bytes[j]);
}
return format.toString();
}
@KlausBrunner
KlausBrunner / sshd_config
Last active Apr 13, 2020
Minimal, secure sshd_config (OpenSSH 8.2)
View sshd_config
# This is the sshd server system-wide configuration file. See
# sshd_config(5) for more information.
HostKey /etc/ssh/ssh_host_ed25519_key
HostKey /etc/ssh/ssh_host_rsa_key
ChallengeResponseAuthentication no
UsePAM yes
# Allow client to pass locale environment variables
@KlausBrunner
KlausBrunner / parent-from-existing.py
Created Aug 12, 2019
Generate a basic parent POM from all subfolders that contain Maven projects.
View parent-from-existing.py
#!/usr/bin/env python3
import os
import argparse
parser = argparse.ArgumentParser(description='Generate a Maven parent pom for existing Maven projects in a folder.')
parser.add_argument('root', default='.', nargs='?',
help='root (parent) folder')
parser.add_argument('--group', default='localhost',
help='groupId for parent POM')
@KlausBrunner
KlausBrunner / hls-distances.html
Created Mar 21, 2019
Trivial example to calculate route distances from a fixed point to location(s) specified as user input, using HERE Location Services.
View hls-distances.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<script src="http://js.api.here.com/v3/3.0/mapsjs-core.js" type="text/javascript" charset="utf-8"></script>
<script src="http://js.api.here.com/v3/3.0/mapsjs-service.js" type="text/javascript" charset="utf-8"></script>
</head>
@KlausBrunner
KlausBrunner / manifest_growth.py
Last active Oct 3, 2016
Track a repo manifest's project count over time using GitPython. Prints simple "datetime count" table.
View manifest_growth.py
import os
from git import Repo
import datetime as dt
import xml.etree.ElementTree as ET
repo = Repo('/home/klaus/stats/manifests')
target_file = 'manifest.xml'
assert not repo.bare
@KlausBrunner
KlausBrunner / gerrit-ssh.py
Created Dec 10, 2015
Accessing the gerrit SSH interface using Python (via ssh config entry)
View gerrit-ssh.py
#!/usr/bin/env python
import paramiko
import sys
import os
client = paramiko.SSHClient()
client.load_system_host_keys()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
config = paramiko.SSHConfig()
@KlausBrunner
KlausBrunner / findhash.py
Created Jun 1, 2015
Finding commits by SHA-1 hash on Github repos forked from a given root repo.
View findhash.py
""" Finding commits by SHA-1 hash on Github. This is a simple
brute-force search for a specific usecase: you assume that the commit is
within all repos forked from a certain root repo within the past n days.
This may result in many calls to the GitHub API, which in turn may result
in GitHub's rate limiter kicking in and forcing you to take a break. You
have been warned.
Built with Python 3.4 and github3.py 0.9.4.
"""
@KlausBrunner
KlausBrunner / curltest.sh
Created Oct 7, 2014
Elasticsearch boolean multifield silently ignored #6587
View curltest.sh
curl -XGET 'http://localhost:9200/'
#{
# "status" : 200,
# "name" : "Spider-Man",
# "version" : {
# "number" : "1.3.2",
# "build_hash" : "dee175dbe2f254f3f26992f5d7591939aaefd12f",
# "build_timestamp" : "2014-08-13T14:29:30Z",
# "build_snapshot" : false,
# "lucene_version" : "4.9"
@KlausBrunner
KlausBrunner / two-main-jars-pom.xml
Last active Feb 2, 2020
Creating two different executable JARs with dependencies from the same Maven project - same contents but different Main class in the manifest
View two-main-jars-pom.xml
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>make-assembly1</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
@KlausBrunner
KlausBrunner / JacksonStreamingBindingTest.java
Last active Jan 16, 2018
Incrementally binding JSON objects in an array (list) using Jackson.
View JacksonStreamingBindingTest.java
package tv.xrm.test;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.util.*;
public class JacksonStreamingBindingTest {
You can’t perform that action at this time.