Skip to content

Instantly share code, notes, and snippets.


Erich Eichinger eeichinger

View GitHub Profile
eeichinger /
Last active Aug 27, 2021
script to clone all repositories in a bitbucket server (aka stash) project
# this script uses syntax for bitbucket server.
# For bitbucket cloud see
# Note: replace username, password and PROJECTNAME with your values
# jq syntax helpful links:
eeichinger / git toolkit
Last active Aug 3, 2021
Recursively execute git commands, find unpushed commits, ...
View git toolkit
# Description:
# Various additional git utility commands
# git recursive <command>:
# from the current working folder search recursively for local git repos and run 'git <command>' on each of them.
# git recursive-exec <command>:
# from the current working folder search recursively for local git repos and run '<command>' on each of them.
eeichinger /
Last active Mar 2, 2021
Generate a script to clone all repos within a specific project from bitbucket server and bitbucket cloud
# generate a script ./ from a list of repos fetched via Bitbucket API
# note: requires 'curl' and 'jq' to be installed
set -e
echo -n '' >
chmod +x
eeichinger / jenkins_list_git_tags_and_branches.groovy
Created Mar 25, 2014
Groovy script to list git tags and branches using jenkins' Dynamic Choices Parameter plugin
View jenkins_list_git_tags_and_branches.groovy
def gettags = ("git ls-remote -t -h ssh://jenkins@<mygitpath>/repo/some.git feature/*").execute()
return gettags.text.readLines()
.collect { it.split()[1].replaceAll('refs/heads/', '') }
.findAll { it.startsWith('<some more pattern>') }
eeichinger /
Last active Sep 30, 2020
Pimp my OSX - list of tools & utilities on OSX I can't live without
eeichinger /
Created May 17, 2012
Spring Test / Concordion integration - integrate Concordion with Spring's test runner
package testsupport;
import org.concordion.api.ResultSummary;
import org.concordion.internal.FixtureRunner;
import org.junit.runner.Description;
import org.junit.runners.model.FrameworkMethod;
import org.junit.runners.model.InitializationError;
import org.junit.runners.model.Statement;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
View jenkins-decrypt.groovy
#To Decrypt Jenkins Password from credentials.xml
#go to the jenkins url
#In the console paste the script
eeichinger / Makefile
Created Apr 3, 2019
Makefile 'init' target for setting up a virtual python environment (using pyenv)
View Makefile
# automatically initialise a local python env
# requires:
# - pyenv installed (see
# - ./requirements.txt to manage dependencies via pip
all: init
.PHONY: clean
# from
# write_base64_file_from_file
# write_file_from_base64_file
# - must run with python 2.7
# - must process data in chunks to limit memory consumption
# - base64 data must be JSON compatible, i.e.
# use base64 "modern" interface,
# not base64.encodestring() which contains linefeeds
eeichinger / jetty-pom.xml
Last active Apr 1, 2019
Jetty Configuration multiple war contexts and with web.xml override to avoid windows file locking
View jetty-pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns=""