diff --git a/letsencrypt-auto-source/pieces/fetch.py b/letsencrypt-auto-source/pieces/fetch.py index d11f8da61..365a5a36a 100644 --- a/letsencrypt-auto-source/pieces/fetch.py +++ b/letsencrypt-auto-source/pieces/fetch.py @@ -2,7 +2,7 @@ # Print latest released version of LE to stdout: python fetch.py --latest-version - + # Download letsencrypt-auto script from git tag v1.2.3 into the folder I'm # in, and make sure its signature verifies: python fetch.py --le-auto-script v1.2.3 diff --git a/tests/modification-check.sh b/tests/modification-check.sh new file mode 100755 index 000000000..53a5efa93 --- /dev/null +++ b/tests/modification-check.sh @@ -0,0 +1,35 @@ +#!/bin/bash + +temp_dir=`mktemp -d` + +# Script should be run from Certbot's root directory +cp letsencrypt-auto ${temp_dir}/letsencrypt-to-be-checked +cp certbot-auto ${temp_dir}/certbot-to-be-checked + +cp letsencrypt-auto-source/pieces/fetch.py ${temp_dir}/fetch.py +cd ${temp_dir} + +LATEST_VERSION=`python fetch.py --latest-version` +python fetch.py --le-auto-script v${LATEST_VERSION} + +cmp -s letsencrypt-auto letsencrypt-to-be-checked + +if [ $? != 0 ]; then + echo "Root letsencrypt-auto has changed." + rm -rf temp_dir + exit 1 +else + echo "Root letsencrypt-auto is unchanged." +fi + +cmp -s letsencrypt-auto certbot-to-be-checked + +if [ $? != 0 ]; then + echo "Root certbot-auto has changed." + rm -rf temp_dir + exit 1 +else + echo "Root certbot-auto is unchanged." +fi + +rm -rf temp_dir diff --git a/tox.ini b/tox.ini index 1a2eed369..19297d38d 100644 --- a/tox.ini +++ b/tox.ini @@ -95,6 +95,7 @@ commands = # At the moment, this tests under Python 2.7 only, as only that version is # readily available on the Trusty Docker image. commands = + {toxinidir}/tests/modification-check.sh docker build -t lea letsencrypt-auto-source docker run --rm -t -i lea whitelist_externals =