Skip to content

Instantly share code, notes, and snippets.

@dirk-thomas
dirk-thomas / gist:8960189
Created February 12, 2014 17:21
send Jenkins data points to custom metric at statuspage.io
Place the following jar files under /var/lib/jenkins/plugins/groovy/WEB-INF/lib/
* http-builder-0.7.jar
* httpclient-4.3.2.jar (httpcomponents-client-4.3.2)
* httpcore-4.3.1.jar (httpcomponents-client-4.3.2)
* resolver.jar (Xerces.2.11.0)
Groovy script:
import groovyx.net.http.HTTPBuilder
import groovyx.net.http.ContentType
@dirk-thomas
dirk-thomas / gist:e29076b8f1eb2bb84c8c
Last active August 29, 2015 14:02
Find released packages / repositories with a specific dependency
from catkin_pkg.package import parse_package_string
import rosdistro
result_repos = {}
result_pkgs = {}
i = rosdistro.get_index(rosdistro.get_index_url())
d = rosdistro.get_cached_distribution(i, 'indigo')
f = d._distribution_file
for name in sorted(f.release_packages.keys()):
@dirk-thomas
dirk-thomas / gist:5934af23375cd382ba84
Last active August 29, 2015 14:03
Verify that all released package.xml files are parsable and valid
from catkin_pkg.package import parse_package_string
import rosdistro
i = rosdistro.get_index(rosdistro.get_index_url())
for distro in ['groovy', 'hydro', 'indigo']:
print(distro)
d = rosdistro.get_cached_distribution(i, distro)
f = d._distribution_file
for name in sorted(f.release_packages.keys()):
xml = d.get_release_package_xml(name)
@dirk-thomas
dirk-thomas / gist:e9debd17f7fd4c69d85a
Last active August 29, 2015 14:04
output all released package with maintainers still having willowgarage email addresses
from catkin_pkg.package import parse_package_string
import rosdistro
i = rosdistro.get_index(rosdistro.get_index_url())
for distro in ['groovy', 'hydro', 'indigo']:
print(distro)
maintainers = {}
d = rosdistro.get_cached_distribution(i, distro)
f = d._distribution_file
for name in sorted(f.release_packages.keys()):
@dirk-thomas
dirk-thomas / gist:dda7a63e0d6faa58def8
Last active August 29, 2015 14:04
identify repositories with different release branch and doc/source branch
import subprocess
import yaml
from catkin_pkg.package import parse_package_string
import rosdistro
i = rosdistro.get_index(rosdistro.get_index_url())
for distro in reversed(sorted(i.distributions.keys())):
print(distro)
d = rosdistro.get_cached_distribution(i, distro)
job_prefix = 'jenkins21605_'
println 'Deleting jobs from previous tests...'
for (p in Jenkins.instance.allItems) {
if (!p.name.startsWith(job_prefix)) continue
println '- ' + p.name
p.delete()
}
println ''
@dirk-thomas
dirk-thomas / gist:9bbd47397e48ef3ceef8
Last active August 29, 2015 14:13
Create "leaf" job with a single upstream dependency "before_leaf" where "before_leaf" has many (in this case 40) upstream dependencies.
job_prefix = 'jenkins21605_caseA_'
println 'Deleting jobs from previous tests...'
for (p in Jenkins.instance.allItems) {
if (!p.name.startsWith(job_prefix)) continue
println '- ' + p.name
p.delete()
}
println ''
@dirk-thomas
dirk-thomas / gist:37febb42abeb8631f946
Last active August 29, 2015 14:13
Create "leaf" job with a single upstream dependency "before_leaf" where "before_leaf" has several (in this case 5: "a15" - "e15") upstream dependencies, each upstream dependency "xN" has "xN-1" as its upstream dependency.
job_prefix = 'jenkins21605_caseB_'
println 'Deleting jobs from previous tests...'
for (p in Jenkins.instance.allItems) {
if (!p.name.startsWith(job_prefix)) continue
println '- ' + p.name
p.delete()
}
println ''
@dirk-thomas
dirk-thomas / example.html
Created September 21, 2015 21:45
Reveal.js based slides which fail to convert into pdf using decktape
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Example slides</title>
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
@dirk-thomas
dirk-thomas / ctest-repeat-until-fail.bash
Created October 8, 2015 20:55
ctest repeat-until-fail function for bashrc
ctest-repeat-until-fail() {
count=0
ret=0
until [ ${ret} -ne 0 ]; do
count=$((count+1))
echo "Run #$count"
ctest $@
ret=$?
done
}