Browse Source
* Move testing logic from travis.yml to tests-ci.sh script This way we can share this logic between travis CI and other systems like for example a docker container. * Move logic to create a testing environment to tests-environment.sh As with the logic to execute the tests, this way we can share this logic with other systems to tests linuxdeployqt. * Install Qt also in tests-environment.sh No reason to keep it separate from the rest as far as I know * Wait until the X server is up and running Otherwise we get into a racy situation. * Add Dockerfile to create a testing container This container tries to emulate the environment we have in travis-ci, this way we can test whatever is failing on the CI locally.master
Àlex Fiestas
8 years ago
committed by
probonopd
4 changed files with 66 additions and 30 deletions
@ -0,0 +1,16 @@ |
|||
# This container amins to offer a testing environment similar to the one we are |
|||
# creating in travis-ci so we can easily reproduce issues detected on our CI |
|||
# locally |
|||
# |
|||
# To use it, simply execute the container like this: |
|||
# docker run --rm -ti --privileged -v /path/to/linuxdeployqt:/linuxdeployqt bash |
|||
# and then execute tests/tests-ci.sh |
|||
|
|||
FROM ubuntu:trusty |
|||
|
|||
RUN apt-get update && apt-get -y install software-properties-common wget build-essential \ |
|||
autoconf git fuse libgl1-mesa-dev psmisc |
|||
|
|||
COPY tests/tests-environment.sh / |
|||
|
|||
RUN /tests-environment.sh |
@ -0,0 +1,28 @@ |
|||
#!/bin/bash |
|||
|
|||
set -x |
|||
|
|||
source /opt/qt*/bin/qt*-env.sh |
|||
/opt/qt*/bin/qmake linuxdeployqt.pro |
|||
make -j2 |
|||
|
|||
mkdir -p linuxdeployqt.AppDir/usr/bin/ |
|||
cp /usr/local/bin/patchelf linuxdeployqt.AppDir/usr/bin/ |
|||
cp /usr/local/bin/appimagetool linuxdeployqt.AppDir/usr/bin/ |
|||
find linuxdeployqt.AppDir/ |
|||
export VERSION=continuous |
|||
cp ./linuxdeployqt/linuxdeployqt linuxdeployqt.AppDir/usr/bin/ |
|||
./linuxdeployqt/linuxdeployqt linuxdeployqt.AppDir/linuxdeployqt.desktop -verbose=3 -appimage |
|||
ls -lh |
|||
find *.AppDir |
|||
xpra start :99 |
|||
|
|||
export DISPLAY=:99 |
|||
|
|||
until xset -q |
|||
do |
|||
echo "Waiting for X server to start..." |
|||
sleep 1; |
|||
done |
|||
|
|||
bash -e tests/tests.sh |
@ -0,0 +1,20 @@ |
|||
#!/bin/bash |
|||
|
|||
set -e |
|||
|
|||
sudo add-apt-repository --yes ppa:beineri/opt-qt58-trusty |
|||
sudo apt-get update -qq |
|||
|
|||
git clone https://github.com/NixOS/patchelf.git |
|||
cd patchelf |
|||
bash ./bootstrap.sh |
|||
./configure |
|||
make -j2 |
|||
sudo make install |
|||
|
|||
cd - |
|||
|
|||
sudo wget -c "https://github.com/probonopd/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage" -O /usr/local/bin/appimagetool |
|||
sudo chmod a+x /usr/local/bin/appimagetool |
|||
|
|||
sudo apt-get -y install qt58base qt58declarative qt58webengine binutils xpra |
Loading…
Reference in new issue