Merge pull request #67 from starandtina/patch-1

fix Dockfile error: A # marker anywhere else in the line will be treated...
diff --git a/1.580.2/plugins.sh b/1.580.2/plugins.sh
index e0df32b..f4193b3 100755
--- a/1.580.2/plugins.sh
+++ b/1.580.2/plugins.sh
@@ -5,7 +5,7 @@
 # 
 # FROM jenkins
 # COPY plugins.txt /plugins.txt
-# RUN /usr/share/jenkins/plugins.sh /plugins.txt
+# RUN /usr/local/bin/plugins.sh /plugins.txt
 # 
 
 REF=/usr/share/jenkins/ref/plugins
diff --git a/1.580.3/Dockerfile b/1.580.3/Dockerfile
new file mode 100644
index 0000000..ebfed53
--- /dev/null
+++ b/1.580.3/Dockerfile
@@ -0,0 +1,45 @@
+FROM java:openjdk-7u65-jdk
+
+RUN apt-get update && apt-get install -y wget git curl zip && rm -rf /var/lib/apt/lists/*
+
+ENV JENKINS_HOME /var/jenkins_home
+
+# Jenkins is ran with user `jenkins`, uid = 1000
+# If you bind mount a volume from host/vloume from a data container, 
+# ensure you use same uid
+RUN useradd -d "$JENKINS_HOME" -u 1000 -m -s /bin/bash jenkins
+
+# Jenkins home directoy is a volume, so configuration and build history 
+# can be persisted and survive image upgrades
+VOLUME /var/jenkins_home
+
+# `/usr/share/jenkins/ref/` contains all reference configuration we want 
+# to set on a fresh new installation. Use it to bundle additional plugins 
+# or config file with your custom jenkins Docker image.
+RUN mkdir -p /usr/share/jenkins/ref/init.groovy.d
+
+
+COPY init.groovy /usr/share/jenkins/ref/init.groovy.d/tcp-slave-angent-port.groovy
+
+ENV JENKINS_VERSION 1.580.3
+
+# could use ADD but this one does not check Last-Modified header 
+# see https://github.com/docker/docker/issues/8331
+RUN curl -L http://mirrors.jenkins-ci.org/war-stable/1.580.3/jenkins.war -o /usr/share/jenkins/jenkins.war
+
+ENV JENKINS_UC https://updates.jenkins-ci.org
+RUN chown -R jenkins "$JENKINS_HOME" /usr/share/jenkins/ref
+
+# for main web interface:
+EXPOSE 8080
+
+# will be used by attached slave agents:
+EXPOSE 50000
+
+USER jenkins
+
+COPY jenkins.sh /usr/local/bin/jenkins.sh
+ENTRYPOINT ["/usr/local/bin/jenkins.sh"]
+
+# from a derived Dockerfile, can use `RUN plugin.sh active.txt` to setup /usr/share/jenkins/ref/plugins from a support bundle
+COPY plugins.sh /usr/local/bin/plugins.sh
diff --git a/1.580.3/init.groovy b/1.580.3/init.groovy
new file mode 100644
index 0000000..83c3a3d
--- /dev/null
+++ b/1.580.3/init.groovy
@@ -0,0 +1,9 @@
+import hudson.model.*;
+import jenkins.model.*;
+
+
+Thread.start {
+      sleep 10000
+      println "--> setting agent port for jnlp"
+      Jenkins.instance.setSlaveAgentPort(50000)
+}
diff --git a/1.580.3/jenkins.sh b/1.580.3/jenkins.sh
new file mode 100755
index 0000000..1bd0f85
--- /dev/null
+++ b/1.580.3/jenkins.sh
@@ -0,0 +1,30 @@
+#! /bin/bash
+
+# Copy files from /usr/share/jenkins/ref into /var/jenkins_home
+# So the initial JENKINS-HOME is set with expected content. 
+# Don't override, as this is just a reference setup, and use from UI 
+# can then change this, upgrade plugins, etc.
+copy_reference_file() {
+	f=${1%/} 
+	echo "$f"
+    rel=${f:23}
+    dir=$(dirname ${f})
+    echo " $f -> $rel"    
+	if [[ ! -e /var/jenkins_home/${rel} ]] 
+	then
+		echo "copy $rel to JENKINS_HOME"
+		mkdir -p /var/jenkins_home/${dir:23}
+		cp -r /usr/share/jenkins/ref/${rel} /var/jenkins_home/${rel}; 
+	fi; 
+}
+export -f copy_reference_file
+find /usr/share/jenkins/ref/ -type f -exec bash -c 'copy_reference_file {}' \;
+
+# if `docker run` first argument start with `--` the user is passing jenkins launcher arguments
+if [[ $# -lt 1 ]] || [[ "$1" == "--"* ]]; then
+   exec java $JAVA_OPTS -jar /usr/share/jenkins/jenkins.war $JENKINS_OPTS "$@"
+fi
+
+# As argument is not jenkins, assume user want to run his own process, for sample a `bash` shell to explore this image
+exec "$@"
+
diff --git a/1.580.3/plugins.sh b/1.580.3/plugins.sh
new file mode 100755
index 0000000..e0df32b
--- /dev/null
+++ b/1.580.3/plugins.sh
@@ -0,0 +1,17 @@
+#! /bin/bash
+
+# Parse a support-core plugin -style txt file as specification for jenkins plugins to be installed
+# in the reference directory, so user can define a derived Docker image with just :
+# 
+# FROM jenkins
+# COPY plugins.txt /plugins.txt
+# RUN /usr/share/jenkins/plugins.sh /plugins.txt
+# 
+
+REF=/usr/share/jenkins/ref/plugins
+mkdir -p $REF
+
+while read spec; do
+    plugin=(${spec//:/ }); 
+    curl -L ${JENKINS_UC}/download/plugins/${plugin[0]}/${plugin[1]}/${plugin[0]}.hpi -o $REF/${plugin[0]}.hpi;
+done  < $1
diff --git a/1.596.1/Dockerfile b/1.596.1/Dockerfile
new file mode 100644
index 0000000..36ab674
--- /dev/null
+++ b/1.596.1/Dockerfile
@@ -0,0 +1,45 @@
+FROM java:openjdk-7u65-jdk
+
+RUN apt-get update && apt-get install -y wget git curl zip && rm -rf /var/lib/apt/lists/*
+
+ENV JENKINS_HOME /var/jenkins_home
+
+# Jenkins is ran with user `jenkins`, uid = 1000
+# If you bind mount a volume from host/vloume from a data container, 
+# ensure you use same uid
+RUN useradd -d "$JENKINS_HOME" -u 1000 -m -s /bin/bash jenkins
+
+# Jenkins home directoy is a volume, so configuration and build history 
+# can be persisted and survive image upgrades
+VOLUME /var/jenkins_home
+
+# `/usr/share/jenkins/ref/` contains all reference configuration we want 
+# to set on a fresh new installation. Use it to bundle additional plugins 
+# or config file with your custom jenkins Docker image.
+RUN mkdir -p /usr/share/jenkins/ref/init.groovy.d
+
+
+COPY init.groovy /usr/share/jenkins/ref/init.groovy.d/tcp-slave-angent-port.groovy
+
+ENV JENKINS_VERSION 1.596.1
+
+# could use ADD but this one does not check Last-Modified header 
+# see https://github.com/docker/docker/issues/8331
+RUN curl -L http://mirrors.jenkins-ci.org/war-stable/1.596.1/jenkins.war -o /usr/share/jenkins/jenkins.war
+
+ENV JENKINS_UC https://updates.jenkins-ci.org
+RUN chown -R jenkins "$JENKINS_HOME" /usr/share/jenkins/ref
+
+# for main web interface:
+EXPOSE 8080
+
+# will be used by attached slave agents:
+EXPOSE 50000
+
+USER jenkins
+
+COPY jenkins.sh /usr/local/bin/jenkins.sh
+ENTRYPOINT ["/usr/local/bin/jenkins.sh"]
+
+# from a derived Dockerfile, can use `RUN plugin.sh active.txt` to setup /usr/share/jenkins/ref/plugins from a support bundle
+COPY plugins.sh /usr/local/bin/plugins.sh
diff --git a/1.596.1/init.groovy b/1.596.1/init.groovy
new file mode 100644
index 0000000..83c3a3d
--- /dev/null
+++ b/1.596.1/init.groovy
@@ -0,0 +1,9 @@
+import hudson.model.*;
+import jenkins.model.*;
+
+
+Thread.start {
+      sleep 10000
+      println "--> setting agent port for jnlp"
+      Jenkins.instance.setSlaveAgentPort(50000)
+}
diff --git a/1.596.1/jenkins.sh b/1.596.1/jenkins.sh
new file mode 100755
index 0000000..1bd0f85
--- /dev/null
+++ b/1.596.1/jenkins.sh
@@ -0,0 +1,30 @@
+#! /bin/bash
+
+# Copy files from /usr/share/jenkins/ref into /var/jenkins_home
+# So the initial JENKINS-HOME is set with expected content. 
+# Don't override, as this is just a reference setup, and use from UI 
+# can then change this, upgrade plugins, etc.
+copy_reference_file() {
+	f=${1%/} 
+	echo "$f"
+    rel=${f:23}
+    dir=$(dirname ${f})
+    echo " $f -> $rel"    
+	if [[ ! -e /var/jenkins_home/${rel} ]] 
+	then
+		echo "copy $rel to JENKINS_HOME"
+		mkdir -p /var/jenkins_home/${dir:23}
+		cp -r /usr/share/jenkins/ref/${rel} /var/jenkins_home/${rel}; 
+	fi; 
+}
+export -f copy_reference_file
+find /usr/share/jenkins/ref/ -type f -exec bash -c 'copy_reference_file {}' \;
+
+# if `docker run` first argument start with `--` the user is passing jenkins launcher arguments
+if [[ $# -lt 1 ]] || [[ "$1" == "--"* ]]; then
+   exec java $JAVA_OPTS -jar /usr/share/jenkins/jenkins.war $JENKINS_OPTS "$@"
+fi
+
+# As argument is not jenkins, assume user want to run his own process, for sample a `bash` shell to explore this image
+exec "$@"
+
diff --git a/1.596.1/plugins.sh b/1.596.1/plugins.sh
new file mode 100755
index 0000000..e0df32b
--- /dev/null
+++ b/1.596.1/plugins.sh
@@ -0,0 +1,17 @@
+#! /bin/bash
+
+# Parse a support-core plugin -style txt file as specification for jenkins plugins to be installed
+# in the reference directory, so user can define a derived Docker image with just :
+# 
+# FROM jenkins
+# COPY plugins.txt /plugins.txt
+# RUN /usr/share/jenkins/plugins.sh /plugins.txt
+# 
+
+REF=/usr/share/jenkins/ref/plugins
+mkdir -p $REF
+
+while read spec; do
+    plugin=(${spec//:/ }); 
+    curl -L ${JENKINS_UC}/download/plugins/${plugin[0]}/${plugin[1]}/${plugin[0]}.hpi -o $REF/${plugin[0]}.hpi;
+done  < $1
diff --git a/1.597/Dockerfile b/1.597/Dockerfile
new file mode 100644
index 0000000..36194f9
--- /dev/null
+++ b/1.597/Dockerfile
@@ -0,0 +1,45 @@
+FROM java:openjdk-7u65-jdk
+
+RUN apt-get update && apt-get install -y wget git curl zip && rm -rf /var/lib/apt/lists/*
+
+ENV JENKINS_HOME /var/jenkins_home
+
+# Jenkins is ran with user `jenkins`, uid = 1000
+# If you bind mount a volume from host/vloume from a data container, 
+# ensure you use same uid
+RUN useradd -d "$JENKINS_HOME" -u 1000 -m -s /bin/bash jenkins
+
+# Jenkins home directoy is a volume, so configuration and build history 
+# can be persisted and survive image upgrades
+VOLUME /var/jenkins_home
+
+# `/usr/share/jenkins/ref/` contains all reference configuration we want 
+# to set on a fresh new installation. Use it to bundle additional plugins 
+# or config file with your custom jenkins Docker image.
+RUN mkdir -p /usr/share/jenkins/ref/init.groovy.d
+
+
+COPY init.groovy /usr/share/jenkins/ref/init.groovy.d/tcp-slave-angent-port.groovy
+
+ENV JENKINS_VERSION 1.597
+
+# could use ADD but this one does not check Last-Modified header 
+# see https://github.com/docker/docker/issues/8331
+RUN curl -L http://mirrors.jenkins-ci.org/war/1.597/jenkins.war -o /usr/share/jenkins/jenkins.war
+
+ENV JENKINS_UC https://updates.jenkins-ci.org
+RUN chown -R jenkins "$JENKINS_HOME" /usr/share/jenkins/ref
+
+# for main web interface:
+EXPOSE 8080
+
+# will be used by attached slave agents:
+EXPOSE 50000
+
+USER jenkins
+
+COPY jenkins.sh /usr/local/bin/jenkins.sh
+ENTRYPOINT ["/usr/local/bin/jenkins.sh"]
+
+# from a derived Dockerfile, can use `RUN plugin.sh active.txt` to setup /usr/share/jenkins/ref/plugins from a support bundle
+COPY plugins.sh /usr/local/bin/plugins.sh
diff --git a/1.597/init.groovy b/1.597/init.groovy
new file mode 100644
index 0000000..83c3a3d
--- /dev/null
+++ b/1.597/init.groovy
@@ -0,0 +1,9 @@
+import hudson.model.*;
+import jenkins.model.*;
+
+
+Thread.start {
+      sleep 10000
+      println "--> setting agent port for jnlp"
+      Jenkins.instance.setSlaveAgentPort(50000)
+}
diff --git a/1.597/jenkins.sh b/1.597/jenkins.sh
new file mode 100755
index 0000000..1bd0f85
--- /dev/null
+++ b/1.597/jenkins.sh
@@ -0,0 +1,30 @@
+#! /bin/bash
+
+# Copy files from /usr/share/jenkins/ref into /var/jenkins_home
+# So the initial JENKINS-HOME is set with expected content. 
+# Don't override, as this is just a reference setup, and use from UI 
+# can then change this, upgrade plugins, etc.
+copy_reference_file() {
+	f=${1%/} 
+	echo "$f"
+    rel=${f:23}
+    dir=$(dirname ${f})
+    echo " $f -> $rel"    
+	if [[ ! -e /var/jenkins_home/${rel} ]] 
+	then
+		echo "copy $rel to JENKINS_HOME"
+		mkdir -p /var/jenkins_home/${dir:23}
+		cp -r /usr/share/jenkins/ref/${rel} /var/jenkins_home/${rel}; 
+	fi; 
+}
+export -f copy_reference_file
+find /usr/share/jenkins/ref/ -type f -exec bash -c 'copy_reference_file {}' \;
+
+# if `docker run` first argument start with `--` the user is passing jenkins launcher arguments
+if [[ $# -lt 1 ]] || [[ "$1" == "--"* ]]; then
+   exec java $JAVA_OPTS -jar /usr/share/jenkins/jenkins.war $JENKINS_OPTS "$@"
+fi
+
+# As argument is not jenkins, assume user want to run his own process, for sample a `bash` shell to explore this image
+exec "$@"
+
diff --git a/1.597/plugins.sh b/1.597/plugins.sh
new file mode 100755
index 0000000..e0df32b
--- /dev/null
+++ b/1.597/plugins.sh
@@ -0,0 +1,17 @@
+#! /bin/bash
+
+# Parse a support-core plugin -style txt file as specification for jenkins plugins to be installed
+# in the reference directory, so user can define a derived Docker image with just :
+# 
+# FROM jenkins
+# COPY plugins.txt /plugins.txt
+# RUN /usr/share/jenkins/plugins.sh /plugins.txt
+# 
+
+REF=/usr/share/jenkins/ref/plugins
+mkdir -p $REF
+
+while read spec; do
+    plugin=(${spec//:/ }); 
+    curl -L ${JENKINS_UC}/download/plugins/${plugin[0]}/${plugin[1]}/${plugin[0]}.hpi -o $REF/${plugin[0]}.hpi;
+done  < $1
diff --git a/1.598/Dockerfile b/1.598/Dockerfile
new file mode 100644
index 0000000..25cdce1
--- /dev/null
+++ b/1.598/Dockerfile
@@ -0,0 +1,45 @@
+FROM java:openjdk-7u65-jdk
+
+RUN apt-get update && apt-get install -y wget git curl zip && rm -rf /var/lib/apt/lists/*
+
+ENV JENKINS_HOME /var/jenkins_home
+
+# Jenkins is ran with user `jenkins`, uid = 1000
+# If you bind mount a volume from host/vloume from a data container, 
+# ensure you use same uid
+RUN useradd -d "$JENKINS_HOME" -u 1000 -m -s /bin/bash jenkins
+
+# Jenkins home directoy is a volume, so configuration and build history 
+# can be persisted and survive image upgrades
+VOLUME /var/jenkins_home
+
+# `/usr/share/jenkins/ref/` contains all reference configuration we want 
+# to set on a fresh new installation. Use it to bundle additional plugins 
+# or config file with your custom jenkins Docker image.
+RUN mkdir -p /usr/share/jenkins/ref/init.groovy.d
+
+
+COPY init.groovy /usr/share/jenkins/ref/init.groovy.d/tcp-slave-angent-port.groovy
+
+ENV JENKINS_VERSION 1.598
+
+# could use ADD but this one does not check Last-Modified header 
+# see https://github.com/docker/docker/issues/8331
+RUN curl -L http://mirrors.jenkins-ci.org/war/1.598/jenkins.war -o /usr/share/jenkins/jenkins.war
+
+ENV JENKINS_UC https://updates.jenkins-ci.org
+RUN chown -R jenkins "$JENKINS_HOME" /usr/share/jenkins/ref
+
+# for main web interface:
+EXPOSE 8080
+
+# will be used by attached slave agents:
+EXPOSE 50000
+
+USER jenkins
+
+COPY jenkins.sh /usr/local/bin/jenkins.sh
+ENTRYPOINT ["/usr/local/bin/jenkins.sh"]
+
+# from a derived Dockerfile, can use `RUN plugin.sh active.txt` to setup /usr/share/jenkins/ref/plugins from a support bundle
+COPY plugins.sh /usr/local/bin/plugins.sh
diff --git a/1.598/init.groovy b/1.598/init.groovy
new file mode 100644
index 0000000..83c3a3d
--- /dev/null
+++ b/1.598/init.groovy
@@ -0,0 +1,9 @@
+import hudson.model.*;
+import jenkins.model.*;
+
+
+Thread.start {
+      sleep 10000
+      println "--> setting agent port for jnlp"
+      Jenkins.instance.setSlaveAgentPort(50000)
+}
diff --git a/1.598/jenkins.sh b/1.598/jenkins.sh
new file mode 100755
index 0000000..1bd0f85
--- /dev/null
+++ b/1.598/jenkins.sh
@@ -0,0 +1,30 @@
+#! /bin/bash
+
+# Copy files from /usr/share/jenkins/ref into /var/jenkins_home
+# So the initial JENKINS-HOME is set with expected content. 
+# Don't override, as this is just a reference setup, and use from UI 
+# can then change this, upgrade plugins, etc.
+copy_reference_file() {
+	f=${1%/} 
+	echo "$f"
+    rel=${f:23}
+    dir=$(dirname ${f})
+    echo " $f -> $rel"    
+	if [[ ! -e /var/jenkins_home/${rel} ]] 
+	then
+		echo "copy $rel to JENKINS_HOME"
+		mkdir -p /var/jenkins_home/${dir:23}
+		cp -r /usr/share/jenkins/ref/${rel} /var/jenkins_home/${rel}; 
+	fi; 
+}
+export -f copy_reference_file
+find /usr/share/jenkins/ref/ -type f -exec bash -c 'copy_reference_file {}' \;
+
+# if `docker run` first argument start with `--` the user is passing jenkins launcher arguments
+if [[ $# -lt 1 ]] || [[ "$1" == "--"* ]]; then
+   exec java $JAVA_OPTS -jar /usr/share/jenkins/jenkins.war $JENKINS_OPTS "$@"
+fi
+
+# As argument is not jenkins, assume user want to run his own process, for sample a `bash` shell to explore this image
+exec "$@"
+
diff --git a/1.598/plugins.sh b/1.598/plugins.sh
new file mode 100755
index 0000000..e0df32b
--- /dev/null
+++ b/1.598/plugins.sh
@@ -0,0 +1,17 @@
+#! /bin/bash
+
+# Parse a support-core plugin -style txt file as specification for jenkins plugins to be installed
+# in the reference directory, so user can define a derived Docker image with just :
+# 
+# FROM jenkins
+# COPY plugins.txt /plugins.txt
+# RUN /usr/share/jenkins/plugins.sh /plugins.txt
+# 
+
+REF=/usr/share/jenkins/ref/plugins
+mkdir -p $REF
+
+while read spec; do
+    plugin=(${spec//:/ }); 
+    curl -L ${JENKINS_UC}/download/plugins/${plugin[0]}/${plugin[1]}/${plugin[0]}.hpi -o $REF/${plugin[0]}.hpi;
+done  < $1
diff --git a/1.599/Dockerfile b/1.599/Dockerfile
new file mode 100644
index 0000000..9dc211c
--- /dev/null
+++ b/1.599/Dockerfile
@@ -0,0 +1,45 @@
+FROM java:openjdk-7u65-jdk
+
+RUN apt-get update && apt-get install -y wget git curl zip && rm -rf /var/lib/apt/lists/*
+
+ENV JENKINS_HOME /var/jenkins_home
+
+# Jenkins is ran with user `jenkins`, uid = 1000
+# If you bind mount a volume from host/vloume from a data container, 
+# ensure you use same uid
+RUN useradd -d "$JENKINS_HOME" -u 1000 -m -s /bin/bash jenkins
+
+# Jenkins home directoy is a volume, so configuration and build history 
+# can be persisted and survive image upgrades
+VOLUME /var/jenkins_home
+
+# `/usr/share/jenkins/ref/` contains all reference configuration we want 
+# to set on a fresh new installation. Use it to bundle additional plugins 
+# or config file with your custom jenkins Docker image.
+RUN mkdir -p /usr/share/jenkins/ref/init.groovy.d
+
+
+COPY init.groovy /usr/share/jenkins/ref/init.groovy.d/tcp-slave-angent-port.groovy
+
+ENV JENKINS_VERSION 1.599
+
+# could use ADD but this one does not check Last-Modified header 
+# see https://github.com/docker/docker/issues/8331
+RUN curl -L http://mirrors.jenkins-ci.org/war/1.599/jenkins.war -o /usr/share/jenkins/jenkins.war
+
+ENV JENKINS_UC https://updates.jenkins-ci.org
+RUN chown -R jenkins "$JENKINS_HOME" /usr/share/jenkins/ref
+
+# for main web interface:
+EXPOSE 8080
+
+# will be used by attached slave agents:
+EXPOSE 50000
+
+USER jenkins
+
+COPY jenkins.sh /usr/local/bin/jenkins.sh
+ENTRYPOINT ["/usr/local/bin/jenkins.sh"]
+
+# from a derived Dockerfile, can use `RUN plugin.sh active.txt` to setup /usr/share/jenkins/ref/plugins from a support bundle
+COPY plugins.sh /usr/local/bin/plugins.sh
diff --git a/1.599/init.groovy b/1.599/init.groovy
new file mode 100644
index 0000000..83c3a3d
--- /dev/null
+++ b/1.599/init.groovy
@@ -0,0 +1,9 @@
+import hudson.model.*;
+import jenkins.model.*;
+
+
+Thread.start {
+      sleep 10000
+      println "--> setting agent port for jnlp"
+      Jenkins.instance.setSlaveAgentPort(50000)
+}
diff --git a/1.599/jenkins.sh b/1.599/jenkins.sh
new file mode 100755
index 0000000..1bd0f85
--- /dev/null
+++ b/1.599/jenkins.sh
@@ -0,0 +1,30 @@
+#! /bin/bash
+
+# Copy files from /usr/share/jenkins/ref into /var/jenkins_home
+# So the initial JENKINS-HOME is set with expected content. 
+# Don't override, as this is just a reference setup, and use from UI 
+# can then change this, upgrade plugins, etc.
+copy_reference_file() {
+	f=${1%/} 
+	echo "$f"
+    rel=${f:23}
+    dir=$(dirname ${f})
+    echo " $f -> $rel"    
+	if [[ ! -e /var/jenkins_home/${rel} ]] 
+	then
+		echo "copy $rel to JENKINS_HOME"
+		mkdir -p /var/jenkins_home/${dir:23}
+		cp -r /usr/share/jenkins/ref/${rel} /var/jenkins_home/${rel}; 
+	fi; 
+}
+export -f copy_reference_file
+find /usr/share/jenkins/ref/ -type f -exec bash -c 'copy_reference_file {}' \;
+
+# if `docker run` first argument start with `--` the user is passing jenkins launcher arguments
+if [[ $# -lt 1 ]] || [[ "$1" == "--"* ]]; then
+   exec java $JAVA_OPTS -jar /usr/share/jenkins/jenkins.war $JENKINS_OPTS "$@"
+fi
+
+# As argument is not jenkins, assume user want to run his own process, for sample a `bash` shell to explore this image
+exec "$@"
+
diff --git a/1.599/plugins.sh b/1.599/plugins.sh
new file mode 100755
index 0000000..e0df32b
--- /dev/null
+++ b/1.599/plugins.sh
@@ -0,0 +1,17 @@
+#! /bin/bash
+
+# Parse a support-core plugin -style txt file as specification for jenkins plugins to be installed
+# in the reference directory, so user can define a derived Docker image with just :
+# 
+# FROM jenkins
+# COPY plugins.txt /plugins.txt
+# RUN /usr/share/jenkins/plugins.sh /plugins.txt
+# 
+
+REF=/usr/share/jenkins/ref/plugins
+mkdir -p $REF
+
+while read spec; do
+    plugin=(${spec//:/ }); 
+    curl -L ${JENKINS_UC}/download/plugins/${plugin[0]}/${plugin[1]}/${plugin[0]}.hpi -o $REF/${plugin[0]}.hpi;
+done  < $1
diff --git a/1.600/Dockerfile b/1.600/Dockerfile
new file mode 100644
index 0000000..f79d8f0
--- /dev/null
+++ b/1.600/Dockerfile
@@ -0,0 +1,45 @@
+FROM java:openjdk-7u65-jdk
+
+RUN apt-get update && apt-get install -y wget git curl zip && rm -rf /var/lib/apt/lists/*
+
+ENV JENKINS_HOME /var/jenkins_home
+
+# Jenkins is ran with user `jenkins`, uid = 1000
+# If you bind mount a volume from host/vloume from a data container, 
+# ensure you use same uid
+RUN useradd -d "$JENKINS_HOME" -u 1000 -m -s /bin/bash jenkins
+
+# Jenkins home directoy is a volume, so configuration and build history 
+# can be persisted and survive image upgrades
+VOLUME /var/jenkins_home
+
+# `/usr/share/jenkins/ref/` contains all reference configuration we want 
+# to set on a fresh new installation. Use it to bundle additional plugins 
+# or config file with your custom jenkins Docker image.
+RUN mkdir -p /usr/share/jenkins/ref/init.groovy.d
+
+
+COPY init.groovy /usr/share/jenkins/ref/init.groovy.d/tcp-slave-angent-port.groovy
+
+ENV JENKINS_VERSION 1.600
+
+# could use ADD but this one does not check Last-Modified header 
+# see https://github.com/docker/docker/issues/8331
+RUN curl -L http://mirrors.jenkins-ci.org/war/1.600/jenkins.war -o /usr/share/jenkins/jenkins.war
+
+ENV JENKINS_UC https://updates.jenkins-ci.org
+RUN chown -R jenkins "$JENKINS_HOME" /usr/share/jenkins/ref
+
+# for main web interface:
+EXPOSE 8080
+
+# will be used by attached slave agents:
+EXPOSE 50000
+
+USER jenkins
+
+COPY jenkins.sh /usr/local/bin/jenkins.sh
+ENTRYPOINT ["/usr/local/bin/jenkins.sh"]
+
+# from a derived Dockerfile, can use `RUN plugin.sh active.txt` to setup /usr/share/jenkins/ref/plugins from a support bundle
+COPY plugins.sh /usr/local/bin/plugins.sh
diff --git a/1.600/init.groovy b/1.600/init.groovy
new file mode 100644
index 0000000..83c3a3d
--- /dev/null
+++ b/1.600/init.groovy
@@ -0,0 +1,9 @@
+import hudson.model.*;
+import jenkins.model.*;
+
+
+Thread.start {
+      sleep 10000
+      println "--> setting agent port for jnlp"
+      Jenkins.instance.setSlaveAgentPort(50000)
+}
diff --git a/1.600/jenkins.sh b/1.600/jenkins.sh
new file mode 100755
index 0000000..1bd0f85
--- /dev/null
+++ b/1.600/jenkins.sh
@@ -0,0 +1,30 @@
+#! /bin/bash
+
+# Copy files from /usr/share/jenkins/ref into /var/jenkins_home
+# So the initial JENKINS-HOME is set with expected content. 
+# Don't override, as this is just a reference setup, and use from UI 
+# can then change this, upgrade plugins, etc.
+copy_reference_file() {
+	f=${1%/} 
+	echo "$f"
+    rel=${f:23}
+    dir=$(dirname ${f})
+    echo " $f -> $rel"    
+	if [[ ! -e /var/jenkins_home/${rel} ]] 
+	then
+		echo "copy $rel to JENKINS_HOME"
+		mkdir -p /var/jenkins_home/${dir:23}
+		cp -r /usr/share/jenkins/ref/${rel} /var/jenkins_home/${rel}; 
+	fi; 
+}
+export -f copy_reference_file
+find /usr/share/jenkins/ref/ -type f -exec bash -c 'copy_reference_file {}' \;
+
+# if `docker run` first argument start with `--` the user is passing jenkins launcher arguments
+if [[ $# -lt 1 ]] || [[ "$1" == "--"* ]]; then
+   exec java $JAVA_OPTS -jar /usr/share/jenkins/jenkins.war $JENKINS_OPTS "$@"
+fi
+
+# As argument is not jenkins, assume user want to run his own process, for sample a `bash` shell to explore this image
+exec "$@"
+
diff --git a/1.600/plugins.sh b/1.600/plugins.sh
new file mode 100755
index 0000000..e0df32b
--- /dev/null
+++ b/1.600/plugins.sh
@@ -0,0 +1,17 @@
+#! /bin/bash
+
+# Parse a support-core plugin -style txt file as specification for jenkins plugins to be installed
+# in the reference directory, so user can define a derived Docker image with just :
+# 
+# FROM jenkins
+# COPY plugins.txt /plugins.txt
+# RUN /usr/share/jenkins/plugins.sh /plugins.txt
+# 
+
+REF=/usr/share/jenkins/ref/plugins
+mkdir -p $REF
+
+while read spec; do
+    plugin=(${spec//:/ }); 
+    curl -L ${JENKINS_UC}/download/plugins/${plugin[0]}/${plugin[1]}/${plugin[0]}.hpi -o $REF/${plugin[0]}.hpi;
+done  < $1
diff --git a/1.601/Dockerfile b/1.601/Dockerfile
new file mode 100644
index 0000000..9bad14c
--- /dev/null
+++ b/1.601/Dockerfile
@@ -0,0 +1,45 @@
+FROM java:openjdk-7u65-jdk
+
+RUN apt-get update && apt-get install -y wget git curl zip && rm -rf /var/lib/apt/lists/*
+
+ENV JENKINS_HOME /var/jenkins_home
+
+# Jenkins is ran with user `jenkins`, uid = 1000
+# If you bind mount a volume from host/vloume from a data container, 
+# ensure you use same uid
+RUN useradd -d "$JENKINS_HOME" -u 1000 -m -s /bin/bash jenkins
+
+# Jenkins home directoy is a volume, so configuration and build history 
+# can be persisted and survive image upgrades
+VOLUME /var/jenkins_home
+
+# `/usr/share/jenkins/ref/` contains all reference configuration we want 
+# to set on a fresh new installation. Use it to bundle additional plugins 
+# or config file with your custom jenkins Docker image.
+RUN mkdir -p /usr/share/jenkins/ref/init.groovy.d
+
+
+COPY init.groovy /usr/share/jenkins/ref/init.groovy.d/tcp-slave-angent-port.groovy
+
+ENV JENKINS_VERSION 1.601
+
+# could use ADD but this one does not check Last-Modified header 
+# see https://github.com/docker/docker/issues/8331
+RUN curl -L http://mirrors.jenkins-ci.org/war/1.601/jenkins.war -o /usr/share/jenkins/jenkins.war
+
+ENV JENKINS_UC https://updates.jenkins-ci.org
+RUN chown -R jenkins "$JENKINS_HOME" /usr/share/jenkins/ref
+
+# for main web interface:
+EXPOSE 8080
+
+# will be used by attached slave agents:
+EXPOSE 50000
+
+USER jenkins
+
+COPY jenkins.sh /usr/local/bin/jenkins.sh
+ENTRYPOINT ["/usr/local/bin/jenkins.sh"]
+
+# from a derived Dockerfile, can use `RUN plugin.sh active.txt` to setup /usr/share/jenkins/ref/plugins from a support bundle
+COPY plugins.sh /usr/local/bin/plugins.sh
diff --git a/1.601/init.groovy b/1.601/init.groovy
new file mode 100644
index 0000000..83c3a3d
--- /dev/null
+++ b/1.601/init.groovy
@@ -0,0 +1,9 @@
+import hudson.model.*;
+import jenkins.model.*;
+
+
+Thread.start {
+      sleep 10000
+      println "--> setting agent port for jnlp"
+      Jenkins.instance.setSlaveAgentPort(50000)
+}
diff --git a/1.601/jenkins.sh b/1.601/jenkins.sh
new file mode 100755
index 0000000..1bd0f85
--- /dev/null
+++ b/1.601/jenkins.sh
@@ -0,0 +1,30 @@
+#! /bin/bash
+
+# Copy files from /usr/share/jenkins/ref into /var/jenkins_home
+# So the initial JENKINS-HOME is set with expected content. 
+# Don't override, as this is just a reference setup, and use from UI 
+# can then change this, upgrade plugins, etc.
+copy_reference_file() {
+	f=${1%/} 
+	echo "$f"
+    rel=${f:23}
+    dir=$(dirname ${f})
+    echo " $f -> $rel"    
+	if [[ ! -e /var/jenkins_home/${rel} ]] 
+	then
+		echo "copy $rel to JENKINS_HOME"
+		mkdir -p /var/jenkins_home/${dir:23}
+		cp -r /usr/share/jenkins/ref/${rel} /var/jenkins_home/${rel}; 
+	fi; 
+}
+export -f copy_reference_file
+find /usr/share/jenkins/ref/ -type f -exec bash -c 'copy_reference_file {}' \;
+
+# if `docker run` first argument start with `--` the user is passing jenkins launcher arguments
+if [[ $# -lt 1 ]] || [[ "$1" == "--"* ]]; then
+   exec java $JAVA_OPTS -jar /usr/share/jenkins/jenkins.war $JENKINS_OPTS "$@"
+fi
+
+# As argument is not jenkins, assume user want to run his own process, for sample a `bash` shell to explore this image
+exec "$@"
+
diff --git a/1.601/plugins.sh b/1.601/plugins.sh
new file mode 100755
index 0000000..e0df32b
--- /dev/null
+++ b/1.601/plugins.sh
@@ -0,0 +1,17 @@
+#! /bin/bash
+
+# Parse a support-core plugin -style txt file as specification for jenkins plugins to be installed
+# in the reference directory, so user can define a derived Docker image with just :
+# 
+# FROM jenkins
+# COPY plugins.txt /plugins.txt
+# RUN /usr/share/jenkins/plugins.sh /plugins.txt
+# 
+
+REF=/usr/share/jenkins/ref/plugins
+mkdir -p $REF
+
+while read spec; do
+    plugin=(${spec//:/ }); 
+    curl -L ${JENKINS_UC}/download/plugins/${plugin[0]}/${plugin[1]}/${plugin[0]}.hpi -o $REF/${plugin[0]}.hpi;
+done  < $1
diff --git a/1.602/Dockerfile b/1.602/Dockerfile
new file mode 100644
index 0000000..e93281e
--- /dev/null
+++ b/1.602/Dockerfile
@@ -0,0 +1,45 @@
+FROM java:openjdk-7u65-jdk
+
+RUN apt-get update && apt-get install -y wget git curl zip && rm -rf /var/lib/apt/lists/*
+
+ENV JENKINS_HOME /var/jenkins_home
+
+# Jenkins is ran with user `jenkins`, uid = 1000
+# If you bind mount a volume from host/vloume from a data container, 
+# ensure you use same uid
+RUN useradd -d "$JENKINS_HOME" -u 1000 -m -s /bin/bash jenkins
+
+# Jenkins home directoy is a volume, so configuration and build history 
+# can be persisted and survive image upgrades
+VOLUME /var/jenkins_home
+
+# `/usr/share/jenkins/ref/` contains all reference configuration we want 
+# to set on a fresh new installation. Use it to bundle additional plugins 
+# or config file with your custom jenkins Docker image.
+RUN mkdir -p /usr/share/jenkins/ref/init.groovy.d
+
+
+COPY init.groovy /usr/share/jenkins/ref/init.groovy.d/tcp-slave-angent-port.groovy
+
+ENV JENKINS_VERSION 1.602
+
+# could use ADD but this one does not check Last-Modified header 
+# see https://github.com/docker/docker/issues/8331
+RUN curl -L http://mirrors.jenkins-ci.org/war/1.602/jenkins.war -o /usr/share/jenkins/jenkins.war
+
+ENV JENKINS_UC https://updates.jenkins-ci.org
+RUN chown -R jenkins "$JENKINS_HOME" /usr/share/jenkins/ref
+
+# for main web interface:
+EXPOSE 8080
+
+# will be used by attached slave agents:
+EXPOSE 50000
+
+USER jenkins
+
+COPY jenkins.sh /usr/local/bin/jenkins.sh
+ENTRYPOINT ["/usr/local/bin/jenkins.sh"]
+
+# from a derived Dockerfile, can use `RUN plugin.sh active.txt` to setup /usr/share/jenkins/ref/plugins from a support bundle
+COPY plugins.sh /usr/local/bin/plugins.sh
diff --git a/1.602/init.groovy b/1.602/init.groovy
new file mode 100644
index 0000000..83c3a3d
--- /dev/null
+++ b/1.602/init.groovy
@@ -0,0 +1,9 @@
+import hudson.model.*;
+import jenkins.model.*;
+
+
+Thread.start {
+      sleep 10000
+      println "--> setting agent port for jnlp"
+      Jenkins.instance.setSlaveAgentPort(50000)
+}
diff --git a/1.602/jenkins.sh b/1.602/jenkins.sh
new file mode 100755
index 0000000..1bd0f85
--- /dev/null
+++ b/1.602/jenkins.sh
@@ -0,0 +1,30 @@
+#! /bin/bash
+
+# Copy files from /usr/share/jenkins/ref into /var/jenkins_home
+# So the initial JENKINS-HOME is set with expected content. 
+# Don't override, as this is just a reference setup, and use from UI 
+# can then change this, upgrade plugins, etc.
+copy_reference_file() {
+	f=${1%/} 
+	echo "$f"
+    rel=${f:23}
+    dir=$(dirname ${f})
+    echo " $f -> $rel"    
+	if [[ ! -e /var/jenkins_home/${rel} ]] 
+	then
+		echo "copy $rel to JENKINS_HOME"
+		mkdir -p /var/jenkins_home/${dir:23}
+		cp -r /usr/share/jenkins/ref/${rel} /var/jenkins_home/${rel}; 
+	fi; 
+}
+export -f copy_reference_file
+find /usr/share/jenkins/ref/ -type f -exec bash -c 'copy_reference_file {}' \;
+
+# if `docker run` first argument start with `--` the user is passing jenkins launcher arguments
+if [[ $# -lt 1 ]] || [[ "$1" == "--"* ]]; then
+   exec java $JAVA_OPTS -jar /usr/share/jenkins/jenkins.war $JENKINS_OPTS "$@"
+fi
+
+# As argument is not jenkins, assume user want to run his own process, for sample a `bash` shell to explore this image
+exec "$@"
+
diff --git a/1.602/plugins.sh b/1.602/plugins.sh
new file mode 100755
index 0000000..e0df32b
--- /dev/null
+++ b/1.602/plugins.sh
@@ -0,0 +1,17 @@
+#! /bin/bash
+
+# Parse a support-core plugin -style txt file as specification for jenkins plugins to be installed
+# in the reference directory, so user can define a derived Docker image with just :
+# 
+# FROM jenkins
+# COPY plugins.txt /plugins.txt
+# RUN /usr/share/jenkins/plugins.sh /plugins.txt
+# 
+
+REF=/usr/share/jenkins/ref/plugins
+mkdir -p $REF
+
+while read spec; do
+    plugin=(${spec//:/ }); 
+    curl -L ${JENKINS_UC}/download/plugins/${plugin[0]}/${plugin[1]}/${plugin[0]}.hpi -o $REF/${plugin[0]}.hpi;
+done  < $1
diff --git a/1.603/Dockerfile b/1.603/Dockerfile
new file mode 100644
index 0000000..a3b088f
--- /dev/null
+++ b/1.603/Dockerfile
@@ -0,0 +1,45 @@
+FROM java:openjdk-7u65-jdk
+
+RUN apt-get update && apt-get install -y wget git curl zip && rm -rf /var/lib/apt/lists/*
+
+ENV JENKINS_HOME /var/jenkins_home
+
+# Jenkins is ran with user `jenkins`, uid = 1000
+# If you bind mount a volume from host/vloume from a data container, 
+# ensure you use same uid
+RUN useradd -d "$JENKINS_HOME" -u 1000 -m -s /bin/bash jenkins
+
+# Jenkins home directoy is a volume, so configuration and build history 
+# can be persisted and survive image upgrades
+VOLUME /var/jenkins_home
+
+# `/usr/share/jenkins/ref/` contains all reference configuration we want 
+# to set on a fresh new installation. Use it to bundle additional plugins 
+# or config file with your custom jenkins Docker image.
+RUN mkdir -p /usr/share/jenkins/ref/init.groovy.d
+
+
+COPY init.groovy /usr/share/jenkins/ref/init.groovy.d/tcp-slave-angent-port.groovy
+
+ENV JENKINS_VERSION 1.603
+
+# could use ADD but this one does not check Last-Modified header 
+# see https://github.com/docker/docker/issues/8331
+RUN curl -L http://mirrors.jenkins-ci.org/war/1.603/jenkins.war -o /usr/share/jenkins/jenkins.war
+
+ENV JENKINS_UC https://updates.jenkins-ci.org
+RUN chown -R jenkins "$JENKINS_HOME" /usr/share/jenkins/ref
+
+# for main web interface:
+EXPOSE 8080
+
+# will be used by attached slave agents:
+EXPOSE 50000
+
+USER jenkins
+
+COPY jenkins.sh /usr/local/bin/jenkins.sh
+ENTRYPOINT ["/usr/local/bin/jenkins.sh"]
+
+# from a derived Dockerfile, can use `RUN plugin.sh active.txt` to setup /usr/share/jenkins/ref/plugins from a support bundle
+COPY plugins.sh /usr/local/bin/plugins.sh
diff --git a/1.603/init.groovy b/1.603/init.groovy
new file mode 100644
index 0000000..83c3a3d
--- /dev/null
+++ b/1.603/init.groovy
@@ -0,0 +1,9 @@
+import hudson.model.*;
+import jenkins.model.*;
+
+
+Thread.start {
+      sleep 10000
+      println "--> setting agent port for jnlp"
+      Jenkins.instance.setSlaveAgentPort(50000)
+}
diff --git a/1.603/jenkins.sh b/1.603/jenkins.sh
new file mode 100755
index 0000000..1bd0f85
--- /dev/null
+++ b/1.603/jenkins.sh
@@ -0,0 +1,30 @@
+#! /bin/bash
+
+# Copy files from /usr/share/jenkins/ref into /var/jenkins_home
+# So the initial JENKINS-HOME is set with expected content. 
+# Don't override, as this is just a reference setup, and use from UI 
+# can then change this, upgrade plugins, etc.
+copy_reference_file() {
+	f=${1%/} 
+	echo "$f"
+    rel=${f:23}
+    dir=$(dirname ${f})
+    echo " $f -> $rel"    
+	if [[ ! -e /var/jenkins_home/${rel} ]] 
+	then
+		echo "copy $rel to JENKINS_HOME"
+		mkdir -p /var/jenkins_home/${dir:23}
+		cp -r /usr/share/jenkins/ref/${rel} /var/jenkins_home/${rel}; 
+	fi; 
+}
+export -f copy_reference_file
+find /usr/share/jenkins/ref/ -type f -exec bash -c 'copy_reference_file {}' \;
+
+# if `docker run` first argument start with `--` the user is passing jenkins launcher arguments
+if [[ $# -lt 1 ]] || [[ "$1" == "--"* ]]; then
+   exec java $JAVA_OPTS -jar /usr/share/jenkins/jenkins.war $JENKINS_OPTS "$@"
+fi
+
+# As argument is not jenkins, assume user want to run his own process, for sample a `bash` shell to explore this image
+exec "$@"
+
diff --git a/1.603/plugins.sh b/1.603/plugins.sh
new file mode 100755
index 0000000..e0df32b
--- /dev/null
+++ b/1.603/plugins.sh
@@ -0,0 +1,17 @@
+#! /bin/bash
+
+# Parse a support-core plugin -style txt file as specification for jenkins plugins to be installed
+# in the reference directory, so user can define a derived Docker image with just :
+# 
+# FROM jenkins
+# COPY plugins.txt /plugins.txt
+# RUN /usr/share/jenkins/plugins.sh /plugins.txt
+# 
+
+REF=/usr/share/jenkins/ref/plugins
+mkdir -p $REF
+
+while read spec; do
+    plugin=(${spec//:/ }); 
+    curl -L ${JENKINS_UC}/download/plugins/${plugin[0]}/${plugin[1]}/${plugin[0]}.hpi -o $REF/${plugin[0]}.hpi;
+done  < $1
diff --git a/1.604/Dockerfile b/1.604/Dockerfile
new file mode 100644
index 0000000..a414511
--- /dev/null
+++ b/1.604/Dockerfile
@@ -0,0 +1,45 @@
+FROM java:openjdk-7u65-jdk
+
+RUN apt-get update && apt-get install -y wget git curl zip && rm -rf /var/lib/apt/lists/*
+
+ENV JENKINS_HOME /var/jenkins_home
+
+# Jenkins is ran with user `jenkins`, uid = 1000
+# If you bind mount a volume from host/vloume from a data container, 
+# ensure you use same uid
+RUN useradd -d "$JENKINS_HOME" -u 1000 -m -s /bin/bash jenkins
+
+# Jenkins home directoy is a volume, so configuration and build history 
+# can be persisted and survive image upgrades
+VOLUME /var/jenkins_home
+
+# `/usr/share/jenkins/ref/` contains all reference configuration we want 
+# to set on a fresh new installation. Use it to bundle additional plugins 
+# or config file with your custom jenkins Docker image.
+RUN mkdir -p /usr/share/jenkins/ref/init.groovy.d
+
+
+COPY init.groovy /usr/share/jenkins/ref/init.groovy.d/tcp-slave-angent-port.groovy
+
+ENV JENKINS_VERSION 1.604
+
+# could use ADD but this one does not check Last-Modified header 
+# see https://github.com/docker/docker/issues/8331
+RUN curl -L http://mirrors.jenkins-ci.org/war/1.604/jenkins.war -o /usr/share/jenkins/jenkins.war
+
+ENV JENKINS_UC https://updates.jenkins-ci.org
+RUN chown -R jenkins "$JENKINS_HOME" /usr/share/jenkins/ref
+
+# for main web interface:
+EXPOSE 8080
+
+# will be used by attached slave agents:
+EXPOSE 50000
+
+USER jenkins
+
+COPY jenkins.sh /usr/local/bin/jenkins.sh
+ENTRYPOINT ["/usr/local/bin/jenkins.sh"]
+
+# from a derived Dockerfile, can use `RUN plugin.sh active.txt` to setup /usr/share/jenkins/ref/plugins from a support bundle
+COPY plugins.sh /usr/local/bin/plugins.sh
diff --git a/1.604/init.groovy b/1.604/init.groovy
new file mode 100644
index 0000000..83c3a3d
--- /dev/null
+++ b/1.604/init.groovy
@@ -0,0 +1,9 @@
+import hudson.model.*;
+import jenkins.model.*;
+
+
+Thread.start {
+      sleep 10000
+      println "--> setting agent port for jnlp"
+      Jenkins.instance.setSlaveAgentPort(50000)
+}
diff --git a/1.604/jenkins.sh b/1.604/jenkins.sh
new file mode 100755
index 0000000..1bd0f85
--- /dev/null
+++ b/1.604/jenkins.sh
@@ -0,0 +1,30 @@
+#! /bin/bash
+
+# Copy files from /usr/share/jenkins/ref into /var/jenkins_home
+# So the initial JENKINS-HOME is set with expected content. 
+# Don't override, as this is just a reference setup, and use from UI 
+# can then change this, upgrade plugins, etc.
+copy_reference_file() {
+	f=${1%/} 
+	echo "$f"
+    rel=${f:23}
+    dir=$(dirname ${f})
+    echo " $f -> $rel"    
+	if [[ ! -e /var/jenkins_home/${rel} ]] 
+	then
+		echo "copy $rel to JENKINS_HOME"
+		mkdir -p /var/jenkins_home/${dir:23}
+		cp -r /usr/share/jenkins/ref/${rel} /var/jenkins_home/${rel}; 
+	fi; 
+}
+export -f copy_reference_file
+find /usr/share/jenkins/ref/ -type f -exec bash -c 'copy_reference_file {}' \;
+
+# if `docker run` first argument start with `--` the user is passing jenkins launcher arguments
+if [[ $# -lt 1 ]] || [[ "$1" == "--"* ]]; then
+   exec java $JAVA_OPTS -jar /usr/share/jenkins/jenkins.war $JENKINS_OPTS "$@"
+fi
+
+# As argument is not jenkins, assume user want to run his own process, for sample a `bash` shell to explore this image
+exec "$@"
+
diff --git a/1.604/plugins.sh b/1.604/plugins.sh
new file mode 100755
index 0000000..e0df32b
--- /dev/null
+++ b/1.604/plugins.sh
@@ -0,0 +1,17 @@
+#! /bin/bash
+
+# Parse a support-core plugin -style txt file as specification for jenkins plugins to be installed
+# in the reference directory, so user can define a derived Docker image with just :
+# 
+# FROM jenkins
+# COPY plugins.txt /plugins.txt
+# RUN /usr/share/jenkins/plugins.sh /plugins.txt
+# 
+
+REF=/usr/share/jenkins/ref/plugins
+mkdir -p $REF
+
+while read spec; do
+    plugin=(${spec//:/ }); 
+    curl -L ${JENKINS_UC}/download/plugins/${plugin[0]}/${plugin[1]}/${plugin[0]}.hpi -o $REF/${plugin[0]}.hpi;
+done  < $1
diff --git a/1.605/Dockerfile b/1.605/Dockerfile
new file mode 100644
index 0000000..68f0d7f
--- /dev/null
+++ b/1.605/Dockerfile
@@ -0,0 +1,45 @@
+FROM java:openjdk-7u65-jdk
+
+RUN apt-get update && apt-get install -y wget git curl zip && rm -rf /var/lib/apt/lists/*
+
+ENV JENKINS_HOME /var/jenkins_home
+
+# Jenkins is ran with user `jenkins`, uid = 1000
+# If you bind mount a volume from host/vloume from a data container, 
+# ensure you use same uid
+RUN useradd -d "$JENKINS_HOME" -u 1000 -m -s /bin/bash jenkins
+
+# Jenkins home directoy is a volume, so configuration and build history 
+# can be persisted and survive image upgrades
+VOLUME /var/jenkins_home
+
+# `/usr/share/jenkins/ref/` contains all reference configuration we want 
+# to set on a fresh new installation. Use it to bundle additional plugins 
+# or config file with your custom jenkins Docker image.
+RUN mkdir -p /usr/share/jenkins/ref/init.groovy.d
+
+
+COPY init.groovy /usr/share/jenkins/ref/init.groovy.d/tcp-slave-angent-port.groovy
+
+ENV JENKINS_VERSION 1.605
+
+# could use ADD but this one does not check Last-Modified header 
+# see https://github.com/docker/docker/issues/8331
+RUN curl -L http://mirrors.jenkins-ci.org/war/1.605/jenkins.war -o /usr/share/jenkins/jenkins.war
+
+ENV JENKINS_UC https://updates.jenkins-ci.org
+RUN chown -R jenkins "$JENKINS_HOME" /usr/share/jenkins/ref
+
+# for main web interface:
+EXPOSE 8080
+
+# will be used by attached slave agents:
+EXPOSE 50000
+
+USER jenkins
+
+COPY jenkins.sh /usr/local/bin/jenkins.sh
+ENTRYPOINT ["/usr/local/bin/jenkins.sh"]
+
+# from a derived Dockerfile, can use `RUN plugin.sh active.txt` to setup /usr/share/jenkins/ref/plugins from a support bundle
+COPY plugins.sh /usr/local/bin/plugins.sh
diff --git a/1.605/init.groovy b/1.605/init.groovy
new file mode 100644
index 0000000..83c3a3d
--- /dev/null
+++ b/1.605/init.groovy
@@ -0,0 +1,9 @@
+import hudson.model.*;
+import jenkins.model.*;
+
+
+Thread.start {
+      sleep 10000
+      println "--> setting agent port for jnlp"
+      Jenkins.instance.setSlaveAgentPort(50000)
+}
diff --git a/1.605/jenkins.sh b/1.605/jenkins.sh
new file mode 100755
index 0000000..1bd0f85
--- /dev/null
+++ b/1.605/jenkins.sh
@@ -0,0 +1,30 @@
+#! /bin/bash
+
+# Copy files from /usr/share/jenkins/ref into /var/jenkins_home
+# So the initial JENKINS-HOME is set with expected content. 
+# Don't override, as this is just a reference setup, and use from UI 
+# can then change this, upgrade plugins, etc.
+copy_reference_file() {
+	f=${1%/} 
+	echo "$f"
+    rel=${f:23}
+    dir=$(dirname ${f})
+    echo " $f -> $rel"    
+	if [[ ! -e /var/jenkins_home/${rel} ]] 
+	then
+		echo "copy $rel to JENKINS_HOME"
+		mkdir -p /var/jenkins_home/${dir:23}
+		cp -r /usr/share/jenkins/ref/${rel} /var/jenkins_home/${rel}; 
+	fi; 
+}
+export -f copy_reference_file
+find /usr/share/jenkins/ref/ -type f -exec bash -c 'copy_reference_file {}' \;
+
+# if `docker run` first argument start with `--` the user is passing jenkins launcher arguments
+if [[ $# -lt 1 ]] || [[ "$1" == "--"* ]]; then
+   exec java $JAVA_OPTS -jar /usr/share/jenkins/jenkins.war $JENKINS_OPTS "$@"
+fi
+
+# As argument is not jenkins, assume user want to run his own process, for sample a `bash` shell to explore this image
+exec "$@"
+
diff --git a/1.605/plugins.sh b/1.605/plugins.sh
new file mode 100755
index 0000000..e0df32b
--- /dev/null
+++ b/1.605/plugins.sh
@@ -0,0 +1,17 @@
+#! /bin/bash
+
+# Parse a support-core plugin -style txt file as specification for jenkins plugins to be installed
+# in the reference directory, so user can define a derived Docker image with just :
+# 
+# FROM jenkins
+# COPY plugins.txt /plugins.txt
+# RUN /usr/share/jenkins/plugins.sh /plugins.txt
+# 
+
+REF=/usr/share/jenkins/ref/plugins
+mkdir -p $REF
+
+while read spec; do
+    plugin=(${spec//:/ }); 
+    curl -L ${JENKINS_UC}/download/plugins/${plugin[0]}/${plugin[1]}/${plugin[0]}.hpi -o $REF/${plugin[0]}.hpi;
+done  < $1
diff --git a/README.md b/README.md
index 784120b..cb35e68 100644
--- a/README.md
+++ b/README.md
@@ -82,7 +82,7 @@
 
 # Installing more tools
 
-You can run your container as root - and unstall via apt-get, install as part of build steps via jenkins tool installers, or you can create your own Dockerfile to customise, for example: 
+You can run your container as root - and install via apt-get, install as part of build steps via jenkins tool installers, or you can create your own Dockerfile to customise, for example: 
 
 ```
 FROM jenkins
diff --git a/generate-stackbrew-library.sh b/generate-stackbrew-library.sh
index a94c3b6..328c034 100755
--- a/generate-stackbrew-library.sh
+++ b/generate-stackbrew-library.sh
@@ -1,25 +1,54 @@
-#!/usr/local/Cellar/bash/4.3.30/bin/bash
+#!/bin/bash
+
 set -e
+shopt -s extglob
 
 declare -A aliases
 aliases=(
-	[1.596]='weekly'
-	[1.580.2]='latest'
+	[1.605]='weekly'
+	[1.596.1]='latest'
 )
 
-versions=( */ )
-versions=( "${versions[@]%/}" )
+versions() {
+	local IFS=$'\n'
+	local versions=( "${@%/}" )
+	sort -Vr <<< "${versions[*]}"
+}
+
+lts_versions=( $(versions *.*.*/) )
+weekly_versions=( $(versions !(*.*.*)/) )
 url='git://github.com/cloudbees/jenkins-ci.org-docker'
 
 echo '# maintainer: Nicolas De Loof <nicolas.deloof@gmail.com> (@ndeloof)'
 echo '# maintainer: Michael Neale <mneale@cloudbees.com> (@michaelneale)'
 
 echo
-for version in "${versions[@]}"; do
-	commit="$(git log -1 --format='format:%H' -- "$version")"
-	versionAliases=( $version ${aliases[$version]} )
-	
-	for va in "${versionAliases[@]}"; do
+echo "# group: Current Releases"
+for current in $(IFS=$'\n'; sort -V <<< "${!aliases[*]}"); do
+	commit="$(git log -1 --format='format:%H' -- "$current")"
+	for va in "$current" ${aliases[$current]}; do
 		echo "$va: ${url}@${commit} $version"
 	done
+	echo
+done
+
+echo "# group: Previous LTS Releases"
+for version in "${lts_versions[@]}"; do
+	if [ "${aliases[$version]}" ]; then
+		continue
+	fi
+
+	commit="$(git log -1 --format='format:%H' -- "$version")"
+	echo "$version: ${url}@${commit} $version"
+done
+echo
+
+echo "# group: Previous Weekly Releases"
+for version in "${weekly_versions[@]}"; do
+	if [ "${aliases[$version]}" ]; then
+		continue
+	fi
+
+	commit="$(git log -1 --format='format:%H' -- "$version")"
+	echo "$version: ${url}@${commit} $version"
 done
diff --git a/plugins.sh b/plugins.sh
index e0df32b..df060b3 100755
--- a/plugins.sh
+++ b/plugins.sh
@@ -5,7 +5,7 @@
 # 
 # FROM jenkins
 # COPY plugins.txt /plugins.txt
-# RUN /usr/share/jenkins/plugins.sh /plugins.txt
+# RUN /usr/local/bin/plugins.sh /plugins.txt
 # 
 
 REF=/usr/share/jenkins/ref/plugins
@@ -13,5 +13,7 @@
 
 while read spec; do
     plugin=(${spec//:/ }); 
+    [[ ${plugin[0]} =~ ^# ]] && continue
+    [[ ${plugin[0]} =~ ^\s*$ ]] && continue
     curl -L ${JENKINS_UC}/download/plugins/${plugin[0]}/${plugin[1]}/${plugin[0]}.hpi -o $REF/${plugin[0]}.hpi;
 done  < $1
diff --git a/stackbrew b/stackbrew
index 38776bd..264b0df 100644
--- a/stackbrew
+++ b/stackbrew
@@ -1,46 +1,66 @@
 # maintainer: Nicolas De Loof <nicolas.deloof@gmail.com> (@ndeloof)
 # maintainer: Michael Neale <mneale@cloudbees.com> (@michaelneale)
 
-1.554.3: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.554.3
-1.555: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.555
-1.556: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.556
-1.557: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.557
-1.558: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.558
-1.559: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.559
-1.560: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.560
-1.561: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.561
-1.562: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.562
-1.563: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.563
-1.564: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.564
-1.565.3: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.565.3
-1.565: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.565
-1.566: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.566
-1.567: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.567
-1.568: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.568
-1.569: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.569
-1.570: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.570
-1.571: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.571
-1.572: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.572
-1.573: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.573
-1.574: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.574
-1.575: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.575
-1.576: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.576
-1.577: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.577
-1.578: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.578
-1.579: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.579
-1.580.1: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.580.1
-latest: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.580.1
-1.580: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.580
-1.581: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.581
-1.582: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.582
-1.583: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.583
-1.584: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.584
-1.585: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.585
-1.586: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.586
-1.587: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.587
-1.588: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.588
-1.589: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.589
-1.590: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.590
-1.591: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.591
-1.592: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.592
-weekly: git://github.com/cloudbees/jenkins-ci.org-docker@fb6f45422a99da98d35178e7d6d5e25aa74972b0 1.592
+1.554.1: git://github.com/cloudbees/jenkins-ci.org-docker@f313389f8ab728d7b4207da36804ea54415c830b 1.554.1
+1.554.2: git://github.com/cloudbees/jenkins-ci.org-docker@f313389f8ab728d7b4207da36804ea54415c830b 1.554.2
+1.554.3: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.554.3
+1.555: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.555
+1.556: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.556
+1.557: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.557
+1.558: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.558
+1.559: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.559
+1.560: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.560
+1.561: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.561
+1.562: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.562
+1.563: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.563
+1.564: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.564
+1.565.1: git://github.com/cloudbees/jenkins-ci.org-docker@f313389f8ab728d7b4207da36804ea54415c830b 1.565.1
+1.565.2: git://github.com/cloudbees/jenkins-ci.org-docker@f313389f8ab728d7b4207da36804ea54415c830b 1.565.2
+1.565.3: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.565.3
+1.565: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.565
+1.566: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.566
+1.567: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.567
+1.568: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.568
+1.569: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.569
+1.570: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.570
+1.571: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.571
+1.572: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.572
+1.573: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.573
+1.574: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.574
+1.575: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.575
+1.576: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.576
+1.577: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.577
+1.578: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.578
+1.579: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.579
+1.580.1: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.580.1
+1.580.2: git://github.com/cloudbees/jenkins-ci.org-docker@c39540d22e2a9c20e691cbdc4c9c54aee77be357 1.580.2
+1.580.3: git://github.com/cloudbees/jenkins-ci.org-docker@b7850f2eba0221a1e2ac72b1ea6ecd8d51e3e558 1.580.3
+1.580: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.580
+1.581: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.581
+1.582: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.582
+1.583: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.583
+1.584: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.584
+1.585: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.585
+1.586: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.586
+1.587: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.587
+1.588: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.588
+1.589: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.589
+1.590: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.590
+1.591: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.591
+1.592: git://github.com/cloudbees/jenkins-ci.org-docker@40c3e3f46939b9f9dcf8d46e62fa7daa80485588 1.592
+1.593: git://github.com/cloudbees/jenkins-ci.org-docker@c39540d22e2a9c20e691cbdc4c9c54aee77be357 1.593
+1.594: git://github.com/cloudbees/jenkins-ci.org-docker@c39540d22e2a9c20e691cbdc4c9c54aee77be357 1.594
+1.595: git://github.com/cloudbees/jenkins-ci.org-docker@c39540d22e2a9c20e691cbdc4c9c54aee77be357 1.595
+1.596.1: git://github.com/cloudbees/jenkins-ci.org-docker@ 1.596.1
+latest: git://github.com/cloudbees/jenkins-ci.org-docker@ 1.596.1
+1.596: git://github.com/cloudbees/jenkins-ci.org-docker@c39540d22e2a9c20e691cbdc4c9c54aee77be357 1.596
+1.597: git://github.com/cloudbees/jenkins-ci.org-docker@b7850f2eba0221a1e2ac72b1ea6ecd8d51e3e558 1.597
+1.598: git://github.com/cloudbees/jenkins-ci.org-docker@b7850f2eba0221a1e2ac72b1ea6ecd8d51e3e558 1.598
+1.599: git://github.com/cloudbees/jenkins-ci.org-docker@b7850f2eba0221a1e2ac72b1ea6ecd8d51e3e558 1.599
+1.600: git://github.com/cloudbees/jenkins-ci.org-docker@b7850f2eba0221a1e2ac72b1ea6ecd8d51e3e558 1.600
+1.601: git://github.com/cloudbees/jenkins-ci.org-docker@ 1.601
+1.602: git://github.com/cloudbees/jenkins-ci.org-docker@ 1.602
+1.603: git://github.com/cloudbees/jenkins-ci.org-docker@ 1.603
+1.604: git://github.com/cloudbees/jenkins-ci.org-docker@ 1.604
+1.605: git://github.com/cloudbees/jenkins-ci.org-docker@ 1.605
+weekly: git://github.com/cloudbees/jenkins-ci.org-docker@ 1.605