27 lines
751 B
Bash
27 lines
751 B
Bash
|
#!/bin/bash
|
||
|
|
||
|
# Usage: ./app-version.sh <image> <service>
|
||
|
# Example: ./app-version.sh drone/drone:1.10.1 app
|
||
|
#
|
||
|
# Accepts a full format hub.docker.com image tag which it pulls locally and
|
||
|
# generates output which can be used to put in the abra.sh for app packaging.
|
||
|
# Requires the yq program https://mikefarah.gitbook.io/yq/
|
||
|
|
||
|
error() {
|
||
|
echo "$(tput setaf 1)ERROR: $*$(tput sgr0)"
|
||
|
exit 1
|
||
|
}
|
||
|
|
||
|
IMAGE="$1"
|
||
|
SERVICE="$2"
|
||
|
|
||
|
if ! docker pull -q "$IMAGE" > /dev/null 2>&1; then
|
||
|
error "Failed to download image, is the tag correct?"
|
||
|
fi
|
||
|
|
||
|
version=$(echo "$IMAGE" | cut -d ':' -f2)
|
||
|
digest=$(docker image inspect -f "{{.Id}}" "$IMAGE" | cut -d ':' -f2- | cut -c 1-8)
|
||
|
|
||
|
echo "ABRA_TYPE_${SERVICE^^}_VERSION=${version}"
|
||
|
echo "ABRA_TYPE_${SERVICE^^}_DIGEST=${digest}"
|