parent
538ac6bcf5
commit
aad561a10d
|
@ -12,6 +12,9 @@ addons:
|
||||||
packages:
|
packages:
|
||||||
- docker-ce
|
- docker-ce
|
||||||
|
|
||||||
|
before_install:
|
||||||
|
- source functions.sh && images_updated $TRAVIS_COMMIT_RANGE || tests_updated $TRAVIS_COMMIT_RANGE || travis_terminate
|
||||||
|
|
||||||
script: ./test-build.sh $NODE_VERSION $VARIANT
|
script: ./test-build.sh $NODE_VERSION $VARIANT
|
||||||
|
|
||||||
stages:
|
stages:
|
||||||
|
|
51
functions.sh
51
functions.sh
|
@ -239,3 +239,54 @@ function sort_versions() {
|
||||||
|
|
||||||
echo "${sorted[@]}"
|
echo "${sorted[@]}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function commit_range() {
|
||||||
|
local commit_id_end=${1}
|
||||||
|
shift
|
||||||
|
local commit_id_start=${1}
|
||||||
|
|
||||||
|
if [ -z "${commit_id_start}" ]; then
|
||||||
|
if [ -z "${commit_id_end}" ]; then
|
||||||
|
echo "HEAD~1..HEAD"
|
||||||
|
elif [[ "${commit_id_end}" =~ .. ]]; then
|
||||||
|
echo "${commit_id_end}"
|
||||||
|
else
|
||||||
|
echo "${commit_id_end}~1..${commit_id_end}"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "${commit_id_end}..${commit_id_start}"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function images_updated() {
|
||||||
|
local commit_range
|
||||||
|
local versions
|
||||||
|
local images_changed
|
||||||
|
|
||||||
|
commit_range="$(commit_range "$@")"
|
||||||
|
|
||||||
|
IFS=' ' read -ra versions <<<"$(
|
||||||
|
IFS=','
|
||||||
|
get_versions
|
||||||
|
)"
|
||||||
|
images_changed=$(git diff --name-only "${commit_range}" "${versions[@]}")
|
||||||
|
|
||||||
|
if [ -z "${images_changed}" ]; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
function tests_updated() {
|
||||||
|
local commit_range
|
||||||
|
local test_changed
|
||||||
|
|
||||||
|
commit_range="$(commit_range "$@")"
|
||||||
|
|
||||||
|
test_changed=$(git diff --name-only "${commit_range}" test*)
|
||||||
|
|
||||||
|
if [ -z "${test_changed}" ]; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
|
@ -31,22 +31,6 @@ UPSTREAM_SLUG="docker-library/${REPO_NAME}"
|
||||||
DOCKER_SLUG="nodejs/docker-node"
|
DOCKER_SLUG="nodejs/docker-node"
|
||||||
gitpath="../${REPO_NAME}"
|
gitpath="../${REPO_NAME}"
|
||||||
|
|
||||||
function updated() {
|
|
||||||
local versions
|
|
||||||
local images_changed
|
|
||||||
|
|
||||||
IFS=' ' read -ra versions <<<"$(
|
|
||||||
IFS=','
|
|
||||||
get_versions
|
|
||||||
)"
|
|
||||||
images_changed=$(git diff --name-only "${COMMIT_ID}".."${COMMIT_ID}"~1 "${versions[@]}")
|
|
||||||
|
|
||||||
if [ -z "${images_changed}" ]; then
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
function auth_header() {
|
function auth_header() {
|
||||||
echo "Authorization: token ${GITHUB_API_TOKEN}"
|
echo "Authorization: token ${GITHUB_API_TOKEN}"
|
||||||
}
|
}
|
||||||
|
@ -104,7 +88,7 @@ function comment_payload() {
|
||||||
}"
|
}"
|
||||||
}
|
}
|
||||||
|
|
||||||
if updated; then
|
if images_updated "${COMMIT_ID}"; then
|
||||||
|
|
||||||
permission_check
|
permission_check
|
||||||
|
|
||||||
|
|
|
@ -10,6 +10,9 @@ addons:
|
||||||
packages:
|
packages:
|
||||||
- docker-ce
|
- docker-ce
|
||||||
|
|
||||||
|
before_install:
|
||||||
|
- source functions.sh && images_updated $TRAVIS_COMMIT_RANGE || tests_updated $TRAVIS_COMMIT_RANGE || travis_terminate
|
||||||
|
|
||||||
script: ./test-build.sh $NODE_VERSION $VARIANT
|
script: ./test-build.sh $NODE_VERSION $VARIANT
|
||||||
|
|
||||||
stages:
|
stages:
|
||||||
|
|
Loading…
Reference in New Issue