Skip to content

Commit bf13136

Browse files
committed
Merge pull request #8 from infosiftr/stackbrew
Script for stackbrew and updating, fix 1.9 onbuild FROM line
2 parents e9241e3 + 4938a7b commit bf13136

File tree

3 files changed

+69
-1
lines changed

3 files changed

+69
-1
lines changed

1.9/onbuild/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM ruby:1.9.3
1+
FROM ruby:1.9.3-p547
22

33
RUN mkdir -p /usr/src/app
44
WORKDIR /usr/src/app

generate-stackbrew-library.sh

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
#!/bin/bash
2+
set -e
3+
4+
declare -A aliases
5+
aliases=(
6+
[2.1]='latest'
7+
)
8+
9+
cd "$(dirname "$(readlink -f "$BASH_SOURCE")")"
10+
11+
versions=( */ )
12+
versions=( "${versions[@]%/}" )
13+
url='git://github.com/docker-library/ruby'
14+
15+
echo '# maintainer: InfoSiftr <[email protected]> (@infosiftr)'
16+
17+
for version in "${versions[@]}"; do
18+
commit="$(git log -1 --format='format:%H' "$version")"
19+
fullVersion="$(grep -m1 'ENV RUBY_VERSION ' "$version/Dockerfile" | cut -d' ' -f3)"
20+
21+
versionAliases=()
22+
while [ "$fullVersion" != "$version" -a "${fullVersion%[.-]*}" != "$fullVersion" ]; do
23+
versionAliases+=( $fullVersion )
24+
fullVersion="${fullVersion%[.-]*}"
25+
done
26+
versionAliases+=( $version ${aliases[$version]} )
27+
28+
echo
29+
for va in "${versionAliases[@]}"; do
30+
echo "$va: ${url}@${commit} $version"
31+
done
32+
33+
for variant in onbuild; do
34+
echo
35+
for va in "${versionAliases[@]}"; do
36+
if [ "$va" = 'latest' ]; then
37+
va="$variant"
38+
else
39+
va="$va-$variant"
40+
fi
41+
echo "$va: ${url}@${commit} $version/$variant"
42+
done
43+
done
44+
done

update.sh

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
#!/bin/bash
2+
set -e
3+
4+
cd "$(dirname "$(readlink -f "$BASH_SOURCE")")"
5+
6+
versions=( "$@" )
7+
if [ ${#versions[@]} -eq 0 ]; then
8+
versions=( */ )
9+
fi
10+
versions=( "${versions[@]%/}" )
11+
12+
for version in "${versions[@]}"; do
13+
fullVersion="$(curl -sSL "http://cache.ruby-lang.org/pub/ruby/$version/" \
14+
| grep -E '<a href="ruby-'"$version"'.[^"]+\.tar\.bz2' \
15+
| grep -vE 'preview|rc' \
16+
| sed -r 's!.*<a href="ruby-([^"]+)\.tar\.bz2.*!\1!' \
17+
| sort -V | tail -1)"
18+
(
19+
set -x
20+
sed -ri 's/^(ENV RUBY_MAJOR) .*/\1 '"$version"'/' "$version/Dockerfile"
21+
sed -ri 's/^(ENV RUBY_VERSION) .*/\1 '"$fullVersion"'/' "$version/Dockerfile"
22+
sed -ri 's/^(FROM ruby):.*/\1:'"$fullVersion"'/' "$version/"*"/Dockerfile"
23+
)
24+
done

0 commit comments

Comments
 (0)