aboutsummaryrefslogtreecommitdiffstats
path: root/coin/provisioning/common
Commit message (Collapse)AuthorAgeFilesLines
...
* Do not complain about existing empty filesDimitrios Apostolou2020-02-151-12/+19
| | | | | | | | Sometimes we pre-create the target filename using mktemp. In that case of course the hash will not match, so avoid comparing. Change-Id: Id0feb0178d659e03f5ceb000f738167cdc28a3ec Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
* Alias expansion is not working reliably in non-interactive shellsDimitrios Apostolou2020-02-151-4/+6
| | | | | | | | | | | It happened that old bash version on macOS the alias was not being expanded for non-interactive shells running under "bash" but was being expanded fine when under "sh". Using functions is the recommended way. Here we define a function conditionally. Change-Id: I607b265cb9e88b2b529ed170121e5a0833003acd Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
* Execute a specific version of homebrew install scriptDimitrios Apostolou2020-02-151-4/+13
| | | | | | | | | | | | Also first try to download it from local mirror. This install script appears to be doing a lot of git-cloning and downloading itself though, so it is still far from the ideal solution: to only download from locally cached endpoints. Task-number: QTQAINFRA-3134 Change-Id: I32131045d6e62f302ec666b4ac055ca5ee9662d5 Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
* Provisioning: Update jinja2 to 2.10.3Dominik Holland2020-02-151-1/+1
| | | | | | | | | This makes sure we don't run into CVE-2019-10906 when using jinja2 in QtIvis Autogenerator. Change-Id: If51bf54bd26858c6b5faa3dd6a6627f2979b862d Reviewed-by: Robert Griebl <robert.griebl@qt.io> Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
* Provisioning: Remove unistd.h from postreSQL from 64 bit WindowsTuomas Heimonen2020-02-021-0/+1
| | | | | | | | | | PostreSQL 9.6 version creates emtpy unistd.h file which will cause failure in Qt Safe Renderer' MinGW build. By removing it the system should use the one from the MinGW environment. Task-number: COIN-488 Change-Id: I76d3f34dd9726dc4f0aac06c410f306dffc8f365 Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
* Provisioning: Remove unistd.h from postreSQLHeikki Halmet2020-01-281-0/+1
| | | | | | | | | | PostreSQL 9.6 version creates emtpy unistd.h file which will cause failure in Qt Safe Renderer' MinGW build. By removing it the system should use the one from the MinGW environment. Task-number: COIN-488 Change-Id: Id7f2f5024998cc5fbeb61e144bcd87f6e09b2bb1 Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
* Provisioning: Update postgresqlHeikki Halmet2020-01-141-4/+8
| | | | | | | | | | Apparently libpq version 9.1.9 is no longer supported. Let's use version 9.6 to keep maximum compatibility and align the version with MacOS. Task-number: QTBUG-79555 Change-Id: Iea98a1eb821f103e3a610ed602746407bfe5ea97 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* Use internal mirror repositories for Ubuntu docker containersDimitrios Apostolou2020-01-1323-72/+142
| | | | | | | | | | | | | | | | | | | | | | | | | Depending on different external URLs makes our provisioning scripts flaky, because they can fail if any one of the external servers goes down. In this patch * the docker images qt_ubuntu_16.04 and qt_ubuntu_18.04 are being built first, they apt-get from the internal ubuntu mirror * all the existing docker images have been rebased to these two images, so they inherit this behavior * images that fetch files from the internet have been modified to not do the fetching themselves; insted URLs are fetched in advance using "DownloadURL" which accepts internal mirrored URLs, and the downloaded files are ADDed to the images with a local copy * previously existing git clone commands have been modified to fetch internally mirrored tarballs Task-number: QTQAINFRA-3343 Change-Id: Ic4640a4f7776e38623edba90f0eba7cb68631223 Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io> Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* Do not try to double-install docker-ce-cliDimitrios Apostolou2020-01-131-2/+2
| | | | | | | | That happened because docker-ce* was installing both docker-ce and docker-ce-cli, so apt was printing a warning. Change-Id: I0cad82243c8c3d5c0b9f26fc7b24673268259aa4 Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
* Remove unused scriptDimitrios Apostolou2020-01-101-3/+0
| | | | | Change-Id: Ic3c57966c78fd8158a2467956fd31eaa4374412d Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* Tag the docker images as "latest"Dimitrios Apostolou2019-12-051-6/+8
| | | | | | | | | | We will use this tag in qtbase to refer to the image to run, because with the current sha1tree() tag, every minor change in the docker images requires synchronized changes between repositories. Task-number: QTBUG-79867 Change-Id: If94eb6dd8b97526b589e58064837bc6554fed79c Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Provisioning: Remove sudo when installing pip packages for Qt userSimo Fält2019-11-251-2/+2
| | | | | | | | | There is no need to install as sudo for qt user. Using sudo will change the cache dir's permissions preventing us from installing anything with pip as normal user. Change-Id: Id45bf3805ce4d772a6c82e429d4e1948289f076e Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Provisioning: update SquishJohanna Äijälä2019-11-212-11/+7
| | | | | | | | Update with custom build of Squish to be able to launch Qt5.14 applications in RTA tests. Change-Id: Ic420656852ae885b057de937baabf01135526764 Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
* Provisioning: Change JDK script to use 'Remove' function from helpersHeikki Halmet2019-11-201-2/+1
| | | | | | Task-number: QTQAINFRA-3369 Change-Id: I2e873eb50d9129c48d92370af80fe121039d172e Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* Provisioning: Remove shell scripts under windowsHeikki Halmet2019-11-202-45/+0
| | | | | Change-Id: I3d7a949e95bab39adc349c25d267b7fc28e676cf Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* Provisioning: Install python modules needed by packagingHeikki Halmet2019-11-201-0/+38
| | | | | | | | Needed by packaging scripts Task-number: COIN-214 Change-Id: I3ac719800c3afd183996379f6c23fbe3f8bcf7cb Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* Merge remote-tracking branch 'origin/5.13' into 5.14Liang Qi2019-11-183-13/+39
|\ | | | | | | | | | | | | Conflicts: coin/provisioning/common/linux/docker.sh Change-Id: Ic5c3fcaa856137de46c6f3830ca75cedb084927d
| * Keep debug trace off to avoid polluting the logsDimitrios Apostolou2019-11-141-1/+1
| | | | | | | | | | Change-Id: I8a2d878a52b5e0a818d7f80fff495feca84d0e9c Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
| * Docker installation: do not depend on external repositoriesDimitrios Apostolou2019-11-141-9/+28
| | | | | | | | | | | | | | | | Also updated the docker-compose binary to the latest one. Task-number: QTQAINFRA-3279 Change-Id: Ie09a772ca8247aa5f5bd6d36774b68b6bb846386 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
| * Fix cache URL for telegraf windows packageDimitrios Apostolou2019-11-141-1/+1
| | | | | | | | | | | | Fixes: QTQAINFRA-3340 Change-Id: Ie7bad3666094e3f8f8e8971c2bfe05457ca6cd45 Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
| * DownloadURL last argument (targetFile) is now optionalDimitrios Apostolou2019-11-141-1/+8
| | | | | | | | | | Change-Id: I0864bcb052cddcc9753c056758b6e65fd561d928 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* | Provisioning: Add MSVC 2019 and upgrade MSVC 2017 to the latest versionHeikki Halmet2019-11-074-133/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Under coin/pre-provisioning can be found information what have been provisioned to tier1 image Visual studios are updated to versions: MSVC 2019: version 16.3.1 MSVC 2017: version 15.9.16 Task-number: QTQAINFRA-2875 Change-Id: I3a9748296dcf088bb312dec8f78bdc59dfb281d1 Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into 5.14Liang Qi2019-11-0615-110/+87
|\| | | | | | | | | | | | | Conflicts: coin/provisioning/qtci-macos-10.12-x86_64/05-systemsetup.sh Change-Id: Ie9eae2144868cbe4a6c5ff9472c1a0e8fd53ed08
| * Provisioning: Upgrade OpenSSL version to 1.1.1dHeikki Halmet2019-11-025-87/+9
| | | | | | | | | | | | | | | | Plus removing unused file install_openssl_111a.sh Task-number: QTQAINFRA-3224 Change-Id: If5f9ee12e118e0329eb27f8d3ca9829011874382 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
| * Remove more of update notifiersTony Sarajärvi2019-11-011-1/+1
| | | | | | | | | | Change-Id: I507f584ef82b5f41f6b1cbc22fdd4ff6eff5e911 Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
| * Add allowUntrusted parameter for command line tools and refresh XcodeHeikki Halmet2019-10-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Apple has signed their packages with certificate which has been expired 24.11.2019. Packages are unusable without allowUntrusted parameter Also Xcode package for macOS10.13 needs to be refetched from Apple's download to local cache Task-number: QTQAINFRA-3317 Change-Id: Iebbe81ee0c360e5f0b49d422b38fe1a148424891 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
| * Provision gnuwin32's pathTony Sarajärvi2019-10-261-0/+1
| | | | | | | | | | | | | | | | | | | | By provisioning the path to gnuwin32, we can remove the hard coded paths from Coin. Task-number: QTBUG-73422 Change-Id: Ice96fcd992e22ed39b66496403b9eaa99a6865a0 Reviewed-by: Toni Saario <toni.saario@qt.io> Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
| * Provisioning: Disable automatic cleanup from windowsHeikki Halmet2019-10-181-0/+8
| | | | | | | | | | | | | | | | Task-number: QTQAINFRA-3238 Change-Id: Ie64086b650016adb7129bd4c4592ca987cc1453b Reviewed-by: Daniel Smith <Daniel.Smith@qt.io> Reviewed-by: Dimitrios Apostolou <jimis@qt.io> Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
| * Fix for DownloadURL to try alternative URLDimitrios Apostolou2019-10-151-2/+2
| | | | | | | | | | Change-Id: I7e9a77815ef8f4c258dda44bda6fdd4eb3736ef4 Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
| * Provisioning: Update Cmake to version 3.7.2Heikki Halmet2019-10-152-8/+8
| | | | | | | | | | | | | | | | | | QtCreator requires Cmake minimal version to be at least 3.7.0 Task-number: QTQAINFRA-3272 Change-Id: Id7f2d38ad0581c1aead4b5bac860ac193488ae1b Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io> Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
| * Provisioning: Hide windows squish installation output from the logHeikki Halmet2019-10-091-2/+4
| | | | | | | | | | | | | | This will prevent the output of unwanted information Change-Id: I5f1824a6bbe98c673ef04dc2daa0db0536d27828 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
| * Provisioning: Make sure that Configure and Make will passHeikki Halmet2019-10-091-3/+20
| | | | | | | | | | | | | | | | | | | | During powershell process error is not caught and provisioning continues even if the exitcode is something else that '0' Task-number: QTQAINFRA-3214 Change-Id: I91116a78d0c4defe6ba4287913c2394e199be958 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
| * Ensure provisioning works even without the secretsDimitrios Apostolou2019-10-081-3/+10
| | | | | | | | | | Change-Id: I3869e881341a719da8a351095c3bf314c2fa2f34 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
| * Fix shell function is_script_executedDimitrios Apostolou2019-10-081-1/+3
| | | | | | | | | | | | | | | | It used to return error when tested inside a login shell, because $0 is "-bash" and `basename` was trying to interpret -b as an option. Change-Id: I5faa2dc01e50c7d5bcfc0ab1fcfd910b2538afc2 Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
| * Fix provisioning script for RHEL 6Dimitrios Apostolou2019-10-081-2/+20
| | | | | | | | | | | | | | It seems RHEL 6.6 does not provide /etc/os-release. Change-Id: I01ba2bb17b89c01f9991944a11eeaa9c2eba6f20 Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into 5.14Liang Qi2019-10-0133-39/+1076
|\| | | | | | | | | | | | | | | Conflicts: coin/platform_configs/default.yaml coin/platform_configs/qt5.yaml Change-Id: I48b1e814dd6328dfb2827d0898a277b81ec25e55
| * Reduce noise in the provision logsDimitrios Apostolou2019-10-013-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Reduce verbosity in order to shorten logs and make them more readable. In two cases we just remove the verbose flag. In one other case we undo inlining of a huge script in the command line. Because we run the provisioning scripts in trace mode, this caused the script to be logged, and it was rather long and meaningless since it comes from an external project. Change-Id: I078ee3b3ab2db9425204375deb5815b6526a4466 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
| * DownloadURL now works with either wget or curlDimitrios Apostolou2019-09-271-2/+11
| | | | | | | | | | | | | | | | | | The reason is that Ubuntu does not have curl at the very beginning of provisioning scripts, and also does not have the repositories configured in order to install it. Change-Id: Ia485c1672f894bc800f199b742d238b2945938e5 Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
| * Adjust pre-existing script to use the new common.sourced.shDimitrios Apostolou2019-09-271-10/+8
| | | | | | | | | | Change-Id: Icf7829d3499110a76b90679ba2d067f80d189e69 Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
| * Install telegraf on all provisioned VMsDimitrios Apostolou2019-09-2713-1/+647
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Install binaries as early as possible in the provisioning process, and start them, in order to monitor provisioning too. To achieve this, some OS auto-detection logic is introduced in shell script common.sourced.sh. The script can be sourced and used in all kind of other generic scripts. ioping is also installed from custom-compiled binaries in order to monitor the disk latency of the VMs. Reason we don't use ioping from the repositories, is that the units differ between ioping versions (new ioping reports latencies in nanoseconds, old in microseconds). Fixes: QTQAINFRA-3092 Change-Id: I9d9afb791955725d4bd0b32dae97dfc0bd4a76a3 Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
| * Refactor DownloadURL.shDimitrios Apostolou2019-09-261-23/+61
| | | | | | | | | | | | | | | | | | | | | | | | Auto-detects and verifies all kinds of hashes, not only SHA1. Hash verification is now an autonomous function. If the file is found at the destination, skip redownloading it if the hash is OK. Runs on POSIX sh, not requiring bash. Retain compatibility with previous version. Change-Id: I9930336030aa776f49dc460fe766f3e831700255 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
| * Do not silence standard errorDimitrios Apostolou2019-09-262-3/+3
| | | | | | | | | | | | | | | | | | | | Provisioning was failing and the logs did not provide any useful information because of the silenced squish install command. So I went through all the scripts and I re-enabled stderr logging where I found it silenced (with the exception of where it was purposeful or harmless). Change-Id: I5fa0b0ba4362970b214c150d399b6720b1780e1e Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
| * Increase open files and processes limit on macOSDimitrios Apostolou2019-09-263-0/+112
| | | | | | | | | | Change-Id: If93bbe067f76168a7c131c6ced187f00a8d908e1 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
| * Brew update only onceDimitrios Apostolou2019-09-262-1/+2
| | | | | | | | | | Change-Id: I6c2650574b6b62ceedfc95a9caab7ca26a6fa10b Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
| * Speed up provisioning on LinuxDimitrios Apostolou2019-09-261-1/+1
| | | | | | | | | | Change-Id: I6e4e5621ed0b063215476ef51d61ef1f38198d0c Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
| * Remove the progress bar from the sdkmanager outputDimitrios Apostolou2019-09-261-4/+15
| | | | | | | | | | | | | | Cleans up many thousands of useless lines from the logs. Change-Id: I2673f65b713996637d2161da4db726823e17c0df Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
| * Provisioning: Upgrade Python pip version for Windows machinesHeikki Halmet2019-09-172-2/+9
| | | | | | | | | | | | Task-number: QTQAINFRA-2564 Change-Id: I10402bb3169b483c71e44db7ecba443eb4f46dc1 Reviewed-by: Liang Qi <liang.qi@qt.io>
| * Provisioning: Disable or delete unneeded tasks and servicesHeikki Halmet2019-09-177-0/+208
| | | | | | | | | | | | | | | | | | | | Windows have lot's of tasks and services running which are slowing the performance of build machine. Also 'windows' and 'windows defender' updates need's to be "permanently" disabled. Task-number: QTQAINFRA-3182 Change-Id: I8f6b237fcdc6e38fa9a06836d349821d86c58afc Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into 5.14Liang Qi2019-09-134-3/+28
|\| | | | | | | | | | | | | | | | | | | | | This change partially reverts 24f0367a60fdd3379014e507fa7f4553d433c601. Conflicts: coin/platform_configs/default.yaml SLES 12 got removed temporarily. Task-number: QTQAINFRA-2851 Change-Id: Ib12a6e5ced3c89a5c8c9c2b1548a1c9d23d159d9
| * Merge remote-tracking branch 'origin/5.12' into 5.13Liang Qi2019-09-092-1/+24
| |\ | | | | | | | | | Change-Id: Iffcf9b199df17a50acf03e29b9deae033396dfcb