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