File tree 9 files changed +174
-19
lines changed
9 files changed +174
-19
lines changed Original file line number Diff line number Diff line change
1
+ language : bash
2
+
3
+ # for secret experimental features ;)
4
+ sudo : 9000
5
+
6
+ env :
7
+ - VERSION=1.5
8
+ - VERSION=1.4
9
+
10
+ install :
11
+ - git clone https://github.com/docker-library/official-images.git ~/official-images
12
+
13
+ before_script :
14
+ - env | sort
15
+ - cd "$VERSION"
16
+ - image="logstash:$VERSION"
17
+
18
+ script :
19
+ - docker build -t "$image" .
20
+ - ~/official-images/test/run.sh "$image"
21
+
22
+ after_script :
23
+ - docker images
24
+
25
+ # vim:set et ts=2 sw=2:
Original file line number Diff line number Diff line change
1
+ FROM java:8-jre
2
+
3
+ # grab gosu for easy step-down from root
4
+ RUN gpg --keyserver ha.pool.sks-keyservers.net --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4
5
+ RUN arch="$(dpkg --print-architecture)" \
6
+ && set -x \
7
+ && curl -o /usr/local/bin/gosu -SL "https://github.com/tianon/gosu/releases/download/1.3/gosu-$arch" \
8
+ && curl -o /usr/local/bin/gosu.asc -SL "https://github.com/tianon/gosu/releases/download/1.3/gosu-$arch.asc" \
9
+ && gpg --verify /usr/local/bin/gosu.asc \
10
+ && rm /usr/local/bin/gosu.asc \
11
+ && chmod +x /usr/local/bin/gosu
12
+
13
+ # http://www.logstash.net/docs/1.4.2/repositories
14
+ # http://packages.elasticsearch.org/GPG-KEY-elasticsearch
15
+ RUN apt-key adv --keyserver ha.pool.sks-keyservers.net --recv-keys 46095ACC8548582C1A2699A9D27D666CD88E42B4
16
+
17
+ ENV LOGSTASH_MAJOR 1.4
18
+ ENV LOGSTASH_VERSION 1.4.4-1-5608c19
19
+
20
+ RUN echo "deb http://packages.elasticsearch.org/logstash/${LOGSTASH_MAJOR}/debian stable main" > /etc/apt/sources.list.d/logstash.list
21
+
22
+ RUN set -x \
23
+ && apt-get update \
24
+ && apt-get install -y --no-install-recommends logstash=$LOGSTASH_VERSION \
25
+ && rm -rf /var/lib/apt/lists/*
26
+
27
+ ENV PATH /opt/logstash/bin:$PATH
28
+
29
+ COPY docker-entrypoint.sh /
30
+
31
+ ENTRYPOINT ["/docker-entrypoint.sh" ]
32
+ CMD ["logstash" , "agent" ]
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ set -e
4
+
5
+ # Add logstash as command if needed
6
+ if [ " ${1: 0: 1} " = ' -' ]; then
7
+ set -- logstash " $@ "
8
+ fi
9
+
10
+ # Run as user "logstash" if the command is "logstash"
11
+ if [ " $1 " = ' logstash' ]; then
12
+ set -- gosu logstash " $@ "
13
+ fi
14
+
15
+ exec " $@ "
Original file line number Diff line number Diff line change @@ -26,7 +26,7 @@ RUN set -x \
26
26
27
27
ENV PATH /opt/logstash/bin:$PATH
28
28
29
- COPY ./ docker-entrypoint.sh /
29
+ COPY docker-entrypoint.sh /
30
30
31
31
ENTRYPOINT ["/docker-entrypoint.sh" ]
32
- CMD ["logstash" ]
32
+ CMD ["logstash" , "agent" ]
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ set -e
4
+
5
+ # Add logstash as command if needed
6
+ if [ " ${1: 0: 1} " = ' -' ]; then
7
+ set -- logstash " $@ "
8
+ fi
9
+
10
+ # Run as user "logstash" if the command is "logstash"
11
+ if [ " $1 " = ' logstash' ]; then
12
+ set -- gosu logstash " $@ "
13
+ fi
14
+
15
+ exec " $@ "
Original file line number Diff line number Diff line change
1
+ FROM java:8-jre
2
+
3
+ # grab gosu for easy step-down from root
4
+ RUN gpg --keyserver ha.pool.sks-keyservers.net --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4
5
+ RUN arch="$(dpkg --print-architecture)" \
6
+ && set -x \
7
+ && curl -o /usr/local/bin/gosu -SL "https://github.com/tianon/gosu/releases/download/1.3/gosu-$arch" \
8
+ && curl -o /usr/local/bin/gosu.asc -SL "https://github.com/tianon/gosu/releases/download/1.3/gosu-$arch.asc" \
9
+ && gpg --verify /usr/local/bin/gosu.asc \
10
+ && rm /usr/local/bin/gosu.asc \
11
+ && chmod +x /usr/local/bin/gosu
12
+
13
+ # http://www.logstash.net/docs/1.4.2/repositories
14
+ # http://packages.elasticsearch.org/GPG-KEY-elasticsearch
15
+ RUN apt-key adv --keyserver ha.pool.sks-keyservers.net --recv-keys 46095ACC8548582C1A2699A9D27D666CD88E42B4
16
+
17
+ ENV LOGSTASH_MAJOR %%LOGSTASH_MAJOR%%
18
+ ENV LOGSTASH_VERSION %%LOGSTASH_VERSION%%
19
+
20
+ RUN echo "deb http://packages.elasticsearch.org/logstash/${LOGSTASH_MAJOR}/debian stable main" > /etc/apt/sources.list.d/logstash.list
21
+
22
+ RUN set -x \
23
+ && apt-get update \
24
+ && apt-get install -y --no-install-recommends logstash=$LOGSTASH_VERSION \
25
+ && rm -rf /var/lib/apt/lists/*
26
+
27
+ ENV PATH /opt/logstash/bin:$PATH
28
+
29
+ COPY docker-entrypoint.sh /
30
+
31
+ ENTRYPOINT ["/docker-entrypoint.sh"]
32
+ CMD ["logstash", "agent"]
Original file line number Diff line number Diff line change 3
3
set -e
4
4
5
5
# Add logstash as command if needed
6
- if [[ " $1 " == - * ] ]; then
6
+ if [ " ${1 : 0 : 1} " = ' - ' ]; then
7
7
set -- logstash " $@ "
8
8
fi
9
9
10
10
# Run as user "logstash" if the command is "logstash"
11
- if [ " $1 " == logstash ]; then
11
+ if [ " $1 " = ' logstash' ]; then
12
12
set -- gosu logstash " $@ "
13
13
fi
14
14
Original file line number Diff line number Diff line change 1
1
#! /bin/bash
2
2
set -e
3
3
4
+ declare -A aliases
5
+ aliases=(
6
+ [1.5]=' 1 latest'
7
+ )
8
+
4
9
cd " $( dirname " $( readlink -f " $BASH_SOURCE " ) " ) "
10
+
11
+ versions=( * / )
12
+ versions=( " ${versions[@]%/ } " )
5
13
url=' git://github.com/docker-library/logstash'
6
- commit=" $( git log -1 --format=' format:%H' -- Dockerfile $( awk ' toupper($1) == "COPY" { for (i = 2; i < NF; i++) { print $i } }' Dockerfile) ) "
7
- debVersion=" $( grep -m1 ' ENV LOGSTASH_VERSION' Dockerfile | cut -d' ' -f3) "
8
- fullVersion=" ${debVersion%% [-]* } " # strip "debian version"
9
- fullVersion=" ${fullVersion##*: } " # strip epoch
10
- version=" ${fullVersion% [.]* } "
11
14
12
15
echo ' # maintainer: InfoSiftr <[email protected] > (@infosiftr)'
13
- echo
14
- # echo "$debVersion: ${url}@${commit}"
15
- echo " $fullVersion : ${url} @${commit} "
16
- echo " $version : ${url} @${commit} "
17
- echo " latest: ${url} @${commit} "
18
16
17
+ for version in " ${versions[@]} " ; do
18
+ commit=" $( cd " $version " && git log -1 --format=' format:%H' -- Dockerfile $( awk ' toupper($1) == "COPY" { for (i = 2; i < NF; i++) { print $i } }' Dockerfile) ) "
19
+ fullVersion=" $( grep -m1 ' ENV LOGSTASH_VERSION' " $version /Dockerfile" | cut -d' ' -f3) "
20
+ fullVersion=" ${fullVersion#*: } " # cut off the Debian epoch
21
+
22
+ versionAliases=()
23
+ while [ " $fullVersion " != " $version " -a " ${fullVersion% [.-]* } " != " $fullVersion " ]; do
24
+ versionAliases+=( $fullVersion )
25
+ fullVersion=" ${fullVersion% [.-]* } "
26
+ done
27
+ versionAliases+=( $version ${aliases[$version]} )
28
+
29
+ echo
30
+ for va in " ${versionAliases[@]} " ; do
31
+ echo " $va : ${url} @${commit} $version "
32
+ done
33
+ done
Original file line number Diff line number Diff line change 3
3
4
4
cd " $( dirname " $( readlink -f " $BASH_SOURCE " ) " ) "
5
5
6
- version=' 1.5'
7
- fullVersion=" $( curl -sSL " http://packages.elasticsearch.org/logstash/$version /debian/dists/stable/main/binary-amd64/Packages.gz" | gunzip | awk -F ' : +' ' $1 == "Package" { pkg = $2 } pkg == "logstash" && $1 == "Version" { print $2 }' | sort -V | tail -1) "
6
+ versions=( " $@ " )
7
+ if [ ${# versions[@]} -eq 0 ]; then
8
+ versions=( * / )
9
+ fi
10
+ versions=( " ${versions[@]%/ } " )
8
11
9
- sed -ri \
10
- -e ' s/^(ENV LOGSTASH_MAJOR) .*/\1 ' " $version " ' /' \
11
- -e ' s/^(ENV LOGSTASH_VERSION) .*/\1 ' " $fullVersion " ' /' Dockerfile
12
+ travisEnv=
13
+ for version in " ${versions[@]} " ; do
14
+ travisEnv=' \n - VERSION=' " $version$travisEnv "
15
+
16
+ fullVersion=" $( curl -fsSL " http://packages.elasticsearch.org/logstash/$version /debian/dists/stable/main/binary-amd64/Packages" | awk -F ' : ' ' $1 == "Package" { pkg = $2 } pkg == "logstash" && $1 == "Version" { print $2 }' | sort -rV | head -n1) "
17
+ if [ -z " $fullVersion " ]; then
18
+ echo >&2 " warning: cannot find full version for $version "
19
+ continue
20
+ fi
21
+ (
22
+ set -x
23
+ cp docker-entrypoint.sh Dockerfile.template " $version /"
24
+ mv " $version /Dockerfile.template" " $version /Dockerfile"
25
+ sed -i '
26
+ s/%%LOGSTASH_MAJOR%%/' " $version " ' /g;
27
+ s/%%LOGSTASH_VERSION%%/' " $fullVersion " ' /g;
28
+ ' " $version /Dockerfile"
29
+ )
30
+ done
12
31
32
+ travis=" $( awk -v ' RS=\n\n' ' $1 == "env:" { $0 = "env:' " $travisEnv " ' " } { printf "%s%s", $0, RS }' .travis.yml) "
33
+ echo " $travis " > .travis.yml
You can’t perform that action at this time.
0 commit comments