Fix continuous integration of pull requests
- Travis doesn't set the $encrypted_* variables for PRs, so disable GPG
signing when building a PR (artifacts aren't deployed for PRs anyhow,
and even if they were, I wouldn't want them to be signed, as they may
contain unvetted code.)
- Take advantage of the new -d option in buildljt, which allows for
building from an existing Git clone directory. This eliminates the need
to rename and restore .git/shallow, allows the official build scripts to
work properly when building PRs, and prevents 'git clone' being invoked
twice in CI builds.
Refer to #217
diff --git a/.travis.yml b/.travis.yml
index 9569525..499aeb9 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -60,30 +60,26 @@
docker pull dcommander/buildljt;
fi &&
git clone --depth=1 https://github.com/libjpeg-turbo/buildscripts.git -b $TRAVIS_BRANCH ~/src/buildscripts &&
- openssl aes-256-cbc -K $encrypted_f92e8533f6f1_key -iv $encrypted_f92e8533f6f1_iv -in ci/keys.enc -out ci/keys -d &&
- tar xf ci/keys &&
- rm ci/keys &&
- mv ci/gpgsign ~/src/buildscripts &&
- gpg --import ci/sign_ljt &&
- rm ci/sign_ljt;
+ if [ -n "$encrypted_f92e8533f6f1_iv" ]; then
+ openssl aes-256-cbc -K $encrypted_f92e8533f6f1_key -iv $encrypted_f92e8533f6f1_iv -in ci/keys.enc -out ci/keys -d &&
+ tar xf ci/keys &&
+ rm ci/keys &&
+ mv ci/gpgsign ~/src/buildscripts &&
+ gpg --import ci/sign_ljt &&
+ rm ci/sign_ljt;
+ fi
fi
script:
- if [ "${BUILD_OFFICIAL:-}" != "" ]; then
mkdir -p ~/src/ljt.nightly &&
- if [ -f .git/shallow ]; then
- mv .git/shallow .git/shallow.bak;
- fi &&
if [ "$TRAVIS_OS_NAME" = "linux" ]; then
- docker run -v $HOME/src/ljt.nightly:/root/src/ljt.nightly -v $HOME/src/buildscripts:/root/src/buildscripts -v $TRAVIS_BUILD_DIR:/root/src/libjpeg-turbo -v $HOME/.gnupg:/root/.gnupg -t dcommander/buildljt:latest bash -c "rpm --import http://pgp.mit.edu/pks/lookup?op=get\&search=0x0575F26BD5B3FDB1 && ~/src/buildscripts/buildljt -r file:///root/src/libjpeg-turbo $TRAVIS_BRANCH -v" &&
+ docker run -v $HOME/src/ljt.nightly:/root/src/ljt.nightly -v $HOME/src/buildscripts:/root/src/buildscripts -v $TRAVIS_BUILD_DIR:/root/src/libjpeg-turbo -v $HOME/.gnupg:/root/.gnupg -t dcommander/buildljt:latest bash -c "rpm --import http://pgp.mit.edu/pks/lookup?op=get\&search=0x0575F26BD5B3FDB1 && ~/src/buildscripts/buildljt -d /root/src/libjpeg-turbo -v" &&
sudo chown -R travis:travis ~/src/ljt.nightly &&
mv ~/src/ljt.nightly/latest/log-$TRAVIS_OS_NAME.txt ~/src/ljt.nightly/latest/files/;
else
- PATH=$PATH:~/src/gas-preprocessor ~/src/buildscripts/buildljt -r file://$TRAVIS_BUILD_DIR $TRAVIS_BRANCH -v &&
+ PATH=$PATH:~/src/gas-preprocessor ~/src/buildscripts/buildljt -d $TRAVIS_BUILD_DIR -v &&
mv ~/src/ljt.nightly/latest/log-$TRAVIS_OS_NAME.txt ~/src/ljt.nightly/latest/files/;
- fi &&
- if [ -f .git/shallow.bak ]; then
- mv .git/shallow.bak .git/shallow;
fi
fi
- if [ "${BUILD_OFFICIAL:-}" == "" ]; then
diff --git a/appveyor.yml b/appveyor.yml
index 0acc329..f3bf8b1 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -26,7 +26,7 @@
- cmd: >-
for /f %%i in ('"cygpath %CD%"') do set MINGWPATH=%%i
- bash c:/buildscripts/buildljt -r file://%MINGWPATH% -b /c/ljt.nightly %APPVEYOR_REPO_BRANCH% -v
+ bash c:/buildscripts/buildljt -d %MINGWPATH% -b /c/ljt.nightly -v
move c:\ljt.nightly\files\*.tar.gz .