@@ -21,7 +21,7 @@ VARIANT=build
22 echo "$0: $1" >&2
22 echo "$0: $1" >&2
24− echo "Usage: $0 [--push] [--dry-run] [--small] lts-X.Y|lts-X|lts]"
24+ echo "Usage: $0 [--push] [--dry-run] [--small] lts-X.Y]"
25 echo "See README.md for more information."
25 echo "See README.md for more information."
@@ -77,27 +77,16 @@ while [[ $# -gt 0 ]]; do
81−# Determine actual snapshot version from aliases
84−SNAPSHOTS="$(mktemp "lts-snapshots.json.XXXXXX")"
85−trap "rm -f \"$SNAPSHOTS\"" EXIT
86−wget -qO- https://www.stackage.org/download/lts-snapshots.json >"$SNAPSHOTS"
88case "$LTS_SLUG_ARG" in
80case "$LTS_SLUG_ARG" in
90− usage "Missing argument: snapshot or alias"
82+ usage "Missing argument: snapshot"
93 LTS_SLUG="$LTS_SLUG_ARG"
85 LTS_SLUG="$LTS_SLUG_ARG"
96− LTS_SLUG=$(jq -r ".[\"$LTS_SLUG_ARG\"]" "$SNAPSHOTS")
88+ echo "$0: Wrong snapshot format: $LTS_SLUG_ARG" >&2
97− if [[ -z "$LTS_SLUG" || "$LTS_SLUG" = "null" ]]; then
89+ exit 1
98− echo "$0: Cannot find LTS version for slug: $LTS_SLUG_ARG" >&2
@@ -105,24 +94,6 @@ LTS_VERSION="${LTS_SLUG#lts-}"
105LTS_MAJOR="${LTS_VERSION%.*}"
94LTS_MAJOR="${LTS_VERSION%.*}"
106LTS_MINOR="${LTS_VERSION#*.}"
95LTS_MINOR="${LTS_VERSION#*.}"
109−# Determine latest LTS version
112−LATEST_LTS_SLUG=$(jq -r ".[\"lts\"]" $SNAPSHOTS)
113−LATEST_LTS_VERSION="${LATEST_LTS_SLUG#lts-}"
114−LATEST_LTS_MAJOR="${LATEST_LTS_VERSION%.*}"
115−LATEST_LTS_MINOR="${LATEST_LTS_VERSION#*.}"
118−# Determine latest minor version of the selected major version
121−MAJOR_LATEST_LTS_SLUG=$(jq -r ".[\"lts-$LTS_MAJOR\"]" $SNAPSHOTS)
122−MAJOR_LATEST_LTS_VERSION="${MAJOR_LATEST_LTS_SLUG#lts-}"
123−MAJOR_LATEST_LTS_MAJOR="${MAJOR_LATEST_LTS_VERSION%.*}"
124−MAJOR_LATEST_LTS_MINOR="${MAJOR_LATEST_LTS_VERSION#*.}"
127# Find the Dockerfile for the selected snapshot
98# Find the Dockerfile for the selected snapshot
@@ -157,14 +128,9 @@ fi
157# Create and push additional tags
128# Create and push additional tags
160−# If we select the latest minor version for the selected major version, then
131+# Create and push an 'lts-X' tag.
161−# also create and push an 'lts-X' tag.
132+tagpush "$DOCKER_REPO:$LTS_SLUG" "$DOCKER_REPO:lts-$LTS_MAJOR"
162−if [[ "$MAJOR_LATEST_LTS_VERSION" = "$LTS_VERSION" ]]; then
163− tagpush "$DOCKER_REPO:$LTS_SLUG" "$DOCKER_REPO:lts-$LTS_MAJOR"
166−# If we selected the latest LTS snapshot, also create and push the 'lts' and 'latest' tags.
134+# Create and push the 'lts' and 'latest' tags.
167−if [[ "$LATEST_LTS_VERSION" = "$LTS_VERSION" ]]; then
135+tagpush "$DOCKER_REPO:$LTS_SLUG" "$DOCKER_REPO:lts"
168− tagpush "$DOCKER_REPO:$LTS_SLUG" "$DOCKER_REPO:lts"
136+tagpush "$DOCKER_REPO:$LTS_SLUG" "$DOCKER_REPO:latest"
169− tagpush "$DOCKER_REPO:$LTS_SLUG" "$DOCKER_REPO:latest"