aboutsummaryrefslogtreecommitdiffstats
path: root/docker
Commit message (Collapse)AuthorAgeFilesLines
* Android: Correct qt6 testRaphael Cotty2021-04-061-2/+8
| | | | | Change-Id: I1f05ae51f30f0158cb3dec6ce189d96f52987c7a Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Add Qt6 docker image and update Qt5 imageIvan Komissarov2021-03-191-1/+2
| | | | | | | ...to add additional packages required for the Qt6 image Change-Id: I42791440eaa754a1ae4ea3c24f86dd0ccedc1ed6 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* Merge branch '1.18'Ivan Komissarov2021-02-191-0/+40
|\ | | | | | | Change-Id: I4e437865514add88558f66420718bc02fb39e41d
| * Add qt4 docker image for basic testingRaphaël Cotty2020-12-181-0/+40
| | | | | | | | | | Change-Id: Ied6d9eac49fcb20de72499ab7c39e83a90a98b75 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | baremetal: Add RISC-V 64-bit architecture for GCC compiler to CIDenis Shienkov2021-02-121-1/+2
| | | | | | | | | | Change-Id: Iff317ec5e4a06e9fc9ae4e0a20c6e55656af2855 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | baremetal: Add XTENSA architecture for GCC compiler to CIDenis Shienkov2021-02-081-1/+3
|/ | | | | Change-Id: I810f6b6c263a1b5ade0ece35e57f6ad30b2864ed Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Android: Update sdk/ndk/tools versionsRaphaël Cotty2020-11-181-12/+12
| | | | | | | | | build-tools: 29.0.3 NDK: 21.3.6528147 SDK Platform: 29 Change-Id: I6d281aa2e914d7567fa2d57698146465b41838d7 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Android: Update for Qt 6Raphaël Cotty2020-11-171-2/+8
| | | | | | | | | | Manage the new directory layout of Qt6. Update generation of the input file for androiddeployqt. Fixes: QBS-1613 Fixes: QBS-1609 Change-Id: Ie633fad467f310bfc4cd42e9c32d9cfc2e734582 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Upgrade linux images to Ubuntu 20.04Ivan Komissarov2020-09-144-104/+10
| | | | | Change-Id: I4dcfbe846f7847874908ed8ad84ac615a5a739c1 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* docker: Install additional dependencies in the imagesIvan Komissarov2020-08-312-0/+3
| | | | | | | | To be able to run Qbs with sanitizer Change-Id: Ia098a419a001ebbea039281ff20ccbc11198226a Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Initial CMake portIvan Komissarov2020-08-171-0/+2
| | | | | | | | | | | | | | | | | | | This change allows to build Qbs using CMake build tool Tested platforms - Linux (gcc) - macOS (clang) - Windows (msvc2017) Missing features (compared to Qbs build) - Documentation build - Bundled QtScript support - Static build - .pc file for qbscore - qbs module for qbscore Change-Id: I09b5dadd6723d5a47e5ef2a9a38d3300488718f2 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* baremetal: Add basic docker-compose auto-tests configurationDenis Shienkov2020-08-042-0/+141
| | | | | | | | | | | | | | | | This commit adds a basic 'docker-compose' <focal-baremetal> configuration which allows to produce the bare-metal tests. Current docker image contains the following toolchains: * gcc-arm-none-eabi * gcc-avr * gcc-msp430 * sdcc Change-Id: I7e020081dcb763d704c309ffd96fa03b3c56e4fb Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com> Reviewed-by: Richard Weickelt <richard@weickelt.de>
* travis: install cap'n'proto packages in Bionic imageIvan Komissarov2020-07-281-0/+2
| | | | | | | This allows to run capnproto tests on Linux Change-Id: I1c500063f13f4aecc16c088f91d3ce790c750abf Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Switch to Qt 5.15.0 and drop CI support for MinGW on LinuxRichard Weickelt2020-07-202-118/+17
| | | | | | | | | | | Cross-builds with MinGW on Linux are dropped mainly because of build issues and because MinGW support bloats the resulting Docker image. We have CI jobs running on Windows with MSVC and Clang-cl which should be sufficient. Change-Id: Iac4e0eaf1270844836697bebf52f9c056457caaf Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Android: Add support to generation of aab packageRaphaël Cotty2020-06-251-0/+4
| | | | | | | | | This patch adds the Android.sdk packageType property which sets the target application. By default (previous behavior) qbs generates an apk package. When set to aab, qbs generates instead an aab package Change-Id: Ic09776d08e2a2ecd68fb4c08881201a7a0a25240 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* docker: fix PATH in android imagesIvan Komissarov2020-06-091-1/+1
| | | | | | Change-Id: I5856b6d6edcf37a9af9dada72271caff60f311f2 Reviewed-by: Raphaël Cotty <raphael.cotty@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Merge branch '1.16' into masterRichard Weickelt2020-04-153-174/+6
|\ | | | | | | Change-Id: Ie3f341fe18e2ffaf676721748279c6b027590727
| * Use docker-compose exclusively for managing Docker imagesRichard Weickelt2020-03-261-32/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qbs used to have docker products and a module for building the images, but this became obsolet and was superseded by the docker-compose infrastructure. Docker-compose is a much better fit for our use-case (which is mostly CI). It allows us to use unique (and complicated) tags both when building and running the images without exposing that to the user. Unique tags like bionic-5.12.6_1.14.1-2 instead of just bionic ensure that changes in the infrastructure don't suddenly break builds in older branches using the same image. This patch also updates the documentation to emphasize the usage of docker-compose. Change-Id: I45335d37034d10dda5ab5079ee3be1f81cb3e5c5 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * Remove Debian stretch from Docker build environmentsRichard Weickelt2020-03-242-142/+0
| | | | | | | | | | | | | | | | | | We have not been able to build Qbs with it for a while and it was superseded by Ubuntu Bionic. Change-Id: I8fe0d40baf8f522d4fd0b94a0b403b324c300e74 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Install libgrpc++-dev packages in Bionic imageIvan Komissarov2020-04-021-0/+1
|/ | | | | | | | | This enables autotesting the GRPC test in Travis (otherwise, headers are missing and IncludeProbe fails to find them) Change-Id: I77792a2c5dbfc3f73020b7964cca3274a5165c3c Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Update windowsservercore Docker imageRichard Weickelt2020-03-173-62/+40
| | | | | | | | | | | | | Qt is updated to 5.12.5, MSVC is updated to 2017. Qbs is updated to 1.15.0. Docker-compose is used for managing the image. A unique tag name is used instead of the generic windowsservercore tag to be always able to refer to a specific version. Docker-compose is now used for managing the image. Change-Id: Ia5733992e7692561b1a6e74a4ac2ea3a7a01c4d8 Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Add OpenGL to bionic-android Docker imageRichard Weickelt2020-02-261-1/+1
| | | | | | | | This is needed to run Qbs binaries created with qbsbuildconfig.enableProjectFileUpdates:true. Change-Id: I9a5f5065df46e90d54bd47d8559fc36cf58fa590 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Use python3 in Travis for building docs and running clang-tidyIvan Komissarov2020-02-211-2/+5
| | | | | | Change-Id: I2f0d72abdf12a4e64b79bf9a3c02b32cf4cbeed6 Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Install more packages in bionic image to run more testsIvan Komissarov2020-02-101-5/+17
| | | | | | Change-Id: I21691196660a6f5650f6328abe43ec2269a09dbc Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Add Docker environment to test Qbs with Qt for AndroidRaphaël Cotty2020-01-101-0/+107
| | | | | | | | | | | | | | | | | | | | | | The Docker images contains ndk r20 and qt 5.13.2 as well as 5.14.0. Containers can be started with the following command line: - docker-compose pull bionic-android-513 - docker-compose run --rm bionic-android-513 The current folder is mounted under /qbs. Assuming that Qbs has been built in the current directory and with release configuration, the autotests can be invoked with: docker-compose run --rm bionic-android-513 scripts/test-qt-for-android.sh \ release/install-root/usr/local/bin A job Travis CI job is added which builds Qt and runs the Android blackbox tests. Change-Id: I76b1901cb7c41f8b5b0122265c99c9b37b59f261 Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Update Dockerfile for Ubuntu/bionic to install clang-8Ivan Komissarov2019-12-021-2/+9
| | | | | | | | Requied to be able to run clang-tidy Change-Id: Ie0b6eb3229e8a93ea2e7dd10d75824fb40702fa6 Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Enable ccache on Linux/DockerRichard Weickelt2019-11-251-0/+1
| | | | | | | | This speeds up CI builds a lot. Change-Id: I53962e1683b4dd923c3a7d254db24164a4e623a6 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Export the GLIB switch properlyRichard Weickelt2019-10-211-1/+1
| | | | | | | | | The GLIB event dispatcher was disabled in order to work around QTBUG-79020. But the environment variable was not exported properly and hence, the work-around had no effect. Change-Id: I9bad99168456ae734c895db0ed4f46885d6b4d48 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Update windowsservercore/DockerfileJoerg Bornemann2019-10-114-74/+59
| | | | | | | | | | | | | | | | | | | - Update qbs to 1.12.1 - Update Qt to 5.12.5 We're not using the installer anymore, because a) the unattended-install-hack doesn't work for newer Qt installers b) newer installers do not provide VS 2015 builds. c) it allows us to tailor the Qt build to our needs in the future. We're not building the documentation on Windows anymore due to the genius move to require libclang for qdoc. That means we need additional twiddling with the packages to add documentation that was built on an usable OS. Task-number: QBS-1438 Change-Id: I77a487562c2f5edd69b8b8a10ef3410ab599dc92 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Disable glib event dispatcher in bionic Docker imageRichard Weickelt2019-10-071-0/+3
| | | | | | | | | | | | Disable glib in the bionic Docker image, as the glib event dispatcher leads to deadlocks in TestBlackbox::concurrentExecutor quite often. The problem should hardly occur in practice. This is a work-around until QTBUG-79020 is fixed. Fixes: QBS-1499 Change-Id: I8cecc979b1c13b053c0ee0787cc4bc0a0de8b701 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Allow overlapping uid/gid in containerRichard Weickelt2019-09-021-2/+2
| | | | | | | | | | | | | | | Makes it possible to start the container on a Linux host where the uid/gid of the current user is similar to an existing uid/gid in the container that is not the "devel" user. For instance, if the host gid is 100, then groupmod in the entrypoint script refuses to change the "devel" user to gid 100 because that gid is already taken by the "apt" group in the container. Change-Id: Ifc4980b118b9b94bf744aa1108225d3c727eb644 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Add Ubuntu 18.04 Docker imageRichard Weickelt2019-08-272-0/+276
| | | | | | | | | | | | | | | | | | | Contains: - Qbs 1.13.1 (from QtCreator 4.9.2) - Qt 5.12.4 for Linux (prebuilt) - Qt 5.12.4 for Windows (compiled from source) - gcc 7.4 - mingw-w64 (7.3) This image can build Qbs and all its components for Linux and Windows targets. It might supersede Debian stretch which is not officially supported by Qt 5.12. The only limitation is that it can neither build Chocolatey packages nor run windeployqt. Change-Id: Icee1f002483f68839d39c8c152a9c5d886dabcfb Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Switch to Qt installer script in Docker containerRichard Weickelt2019-08-231-138/+27
| | | | | | | | | | | Use the official packages instead of compiling Qt ourselves. This simplifies the Docker image a lot. For accessing the script folder, the Docker context needs to change to the root directory. Thus, we need a .dockerignore file to keep the size of the context low. Change-Id: I58ec8f364feba955518f1eaf5bff234332ae8dec Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Make the address sanitizer work in DockerRichard Weickelt2019-06-071-1/+6
| | | | | | | | | | | | - Libasan requires ptrace capabilities when running in Docker - Provide a suppressions file - Update stretch Docker image to build against libicu and match the configure options of the official Qt release. Otherwise the address sanitizer fails when Qbs loads plugins. Change-Id: Ib620187a3cdd486eaf646ee0bd022b811744a998 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Update and optimize the Docker infrastructureRichard Weickelt2019-05-072-10/+21
| | | | | | | | | | | | | | | | | | - Extend Qt installation to enable Qbs autotests and building docs (QtDeclarative and QtTools, libclang were missing). - Add Qt to PATH in the container - Allow users of docker-compose to override the Docker username so that they can potentially use their own repositories without changing the file. - Fix error in the entrypoint script which didn't work when running the container without arguments. - Replace the non-interesting output of building Qt with dots because the log exceeded the maximum log length on Travis CI, but being entirely silent triggered the watchdog. Task-number: QBS-1438 Change-Id: Ibd3abacadfc001db5169a9a3fffce908f8e6e760 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Update Debian Stretch Docker imageRichard Weickelt2019-04-294-82/+237
| | | | | | | | | | | | | | | | | The Debian Docker image is outdated and the user experience is not optimal, especially when using it on Linux hosts. - Update Qt to 5.11.3 and build it from source since the Qt installer is overly complicated to use - Create a Qt profile and make it the default - Add entrypoint script to avoid file permission problems on Linux hosts - Add docker-compose.yml file for easier command line usage - Improve documentation Task-number: QBS-1402 Task-number: QBS-1438 Change-Id: I2cbe53ed115fc8cbb96c1e1305297c581e7d0589 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Account for the Qbs docs build now requiring additional dependenciesJake Petroules2018-01-052-1/+8
| | | | | | | | | | | | | | Document it, and install the dependencies in the Docker images. For the man page build, the installed version of the qbs app is now used to get the help text rather than the non-installed version, since the non-installed version may not be able to find all library dependencies (like Qt) on some platforms by default. The build also now depends on the other executables as well since their presence affects the output of qbs --help. Change-Id: Ic9896231aa76a346180bf30f7b2483391f5e4ea0 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Update Docker images with the latest softwareJake Petroules2017-12-054-14/+22
| | | | | Change-Id: I360fbab406a0bd82dd0a09462585681625c1539c Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Merge remote-tracking branch 'origin/1.9'Joerg Bornemann2017-09-261-1/+1
|\ | | | | | | Change-Id: I40c1ea23e7351deac715958783158c089e65a02d
| * Docker image: update to the latest Windows 10 patch releaseJake Petroules2017-09-201-1/+1
| | | | | | | | | | Change-Id: I59c4e38be62c41577f2953ac7f3cb3c7f2f1eb08 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Merge remote-tracking branch 'origin/1.9' into masterJoerg Bornemann2017-09-111-1/+1
|\| | | | | | | Change-Id: Ib18e50ecdc9be5f9deaebf68414c2082ddafcc8b
| * Docker/Windows: use a simpler workaround for UNC paths in release scriptJake Petroules2017-09-071-1/+1
| | | | | | | | | | | | | | | | | | | | This should make release builds faster since all of the source files don't need to be copied to a temporary directory. Qbs is also updated to 1.9 since another bug was fixed in that version which prevented from building when the Qbs sources were located in the root of a drive. Change-Id: I9d333dd0e0bf1fafc72cff093c90f8d0111162b3 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Merge 1.9 into masterChristian Kandeler2017-08-281-5/+5
|\| | | | | | | Change-Id: I5320b7c62d6a80089df75c2caca79c15602c01e5
| * Docker: check that the installation of Chocolatey packages succeedsJake Petroules2017-08-221-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | In some versions of Windows with a certain set of patches installed, the Visual C++ Build Tools installer has been observed to fail during initialization but still exit with zero status causing a silent failure. This patch ensures that it won't be possible to build a Docker image where the build tools didn't actually get installed. Change-Id: Ibc90b476dae901651002a3619f7c1dbec38bc51b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * Docker image: update to the latest* Windows 10 patch releaseJake Petroules2017-08-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | *We actually only update to 10.0.14393.1480 and not 10.0.14393.1593 because at the time of writing, .1593 causes the installation of Visual C++ Build Tools to silently fail. Safeguards against this failure will be provided in a subsequent patch. Change-Id: I3b643592a5948daafc00f84489e54211679666cc Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Add products to build the Qbs Docker imagesJake Petroules2017-08-181-0/+35
|/ | | | | Change-Id: Id88521a86c057ad09355dff11ff69a1aba000a17 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Add a Dockerfile to create a Debian Linux dev environment for QbsJake Petroules2017-07-122-0/+74
| | | | | | | | | | | | | | | This patch includes a Dockerfile that can be used to create a Docker machine image suitable for Qbs development and for creating Qbs release packages. The image produced by this Dockerfile has been uploaded to Docker Hub as qbsbuild/qbsdev:stretch. Developers can either build the Docker image manually using `docker build` (which takes longer) or download the prebuilt image from Docker Hub using `docker pull`. Change-Id: I058c1c91a4a1bd075604d476467fd4de4be00807 Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Update Docker image to Windows 10.0.14393.1358, Qt 5.9, and Qbs 1.8.1Jake Petroules2017-07-102-14/+20
| | | | | Change-Id: Ie09780e1674663013aef09ec7ab98095538f0f59 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Add a Dockerfile to create a Windows dev environment for QbsJake Petroules2017-06-142-0/+74
This patch includes a Dockerfile that can be used to create a Docker machine image suitable for Qbs development and for creating Qbs release packages. The image produced by this Dockerfile has been uploaded to Docker hub as qtproject/qbswindowsservercore. Developers can either build the Docker image manually using `docker build` (which takes longer) or download the prebuilt image from Docker Hub using `docker pull`. These instructions are also present in the README, along with examples for using Docker in conjunction with the releasing script added in the previous patch in order to create Windows release packages. Change-Id: I4faa969f42dbc57cca929b674c8ca8695767fee3 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>