Commit graph

64 commits

Author SHA1 Message Date
Kevin Ottens
f3c2632f8c Try to enable the CI on stable branches as well
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-09-15 12:46:36 +00:00
Kevin Ottens
ee92e5af9a Switch to newer CI image to build csync tests
This new image brings the cmocka dependency and thus will make the CI
build the csync tests which depend on it.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-09-02 06:12:46 +00:00
Kevin Ottens
571e15c6eb Switch to Ninja for the clang build
Clang is generally slower to compile than GCC so use a faster Make for
that build variant. This also allows us to verify our CMake files don't
do anything Make specific.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-08-12 06:45:13 +00:00
Kevin Ottens
5116f4d255 Parallelize the clang-tidy runs
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-08-12 06:45:13 +00:00
Kevin Ottens
db5c186202 Split cmake and compile into separate pipeline steps
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-08-12 06:45:13 +00:00
Kevin Ottens
725f1e742d Switch to actual commands inside of the steps
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-08-12 06:45:12 +00:00
Kevin Ottens
6da67ef653 Split the CI pipelines into proper steps
Will make it easier to navigate the logs

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-08-12 06:45:12 +00:00
Kevin Ottens
65407483e5 Now make sure we're not picking up generated headers
This could happen (and started to happen more with clang-tidy 10) that
clang-tidy picked up errors in headers from the build directory. Now
that we moved the build directory out of source, we can simply filter
headers based on the pwd.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-08-12 06:45:12 +00:00
Kevin Ottens
1e8340cd48 Move the build in a volume to be reused between steps
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-08-12 06:45:12 +00:00
Kevin Ottens
9016ffe4b7 Remove unneeded environment variables
Those are set by the base CI image anyway, no need to do the work again.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-08-12 06:45:12 +00:00
Kevin Ottens
be6a9dab01 Switch to the newer base CI image
We can now spare building QtKeychain over and over shortening a bit the
build. We also update to latest gcc and clang.

Note that I didn't switch the AppImage pipeline to the newer image to
keep the binary compatibility promise required by linuxdeployqt.
Probably would make sense to do a specific image for AppImage with some
other of the cleanups I did there (in particular to avoid building
qtkeychain every time).

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-08-12 06:45:12 +00:00
Kevin Ottens
d264f7078b Parallelize the CI build
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-08-12 06:45:12 +00:00
Michael Schuster
6cc1aa723e
Update CI for Qt 5.12.9
Also remove the jq package installation from the AppImage build script because
the package is included in the new Docker image (see nextcloud/docker-ci#231).

Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-07-22 14:19:57 +02:00
Michael Schuster
c3f5a9b9cc
Drone: Upload AppImage to GitHub using nextcloud-desktop-bot
Uploading AppImage's to transfer.sh often fail and cause the CI to wait for
the 15 minutes timeout.

This new approach uses a bot user to create releases in a dedicated ci-builds
repository. Each PR (or master) will get a dedicated release with the AppImage
supplied as a release asset. Older assets will be deleted prior uploading the
recent build.

The bot will then (in case of a PR) create a comment in the PR, containing the
download link.

Home of the CI releases: https://github.com/nextcloud-desktop-bot/ci-builds/releases

Inspired by: https://github.com/nextcloud/android/blob/master/scripts/uploadArtifact.sh

Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-07-20 17:11:33 +02:00
Stephan Beyer
82f38aa37d Filter clang-tidy output on Drone for errors
The run-clang-tidy is very verbose and prints a lot of unneccessary
information.  This commit greps for errors in the output.
Moreover, we add the -quiet switch.

As a desired "side" effect, this commit repairs the issue of
run-clang-tidy-6.0 that it does not return a usable exit code.
Hence clang-tidy errors will lead to CI failures now.

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
2020-07-08 14:08:41 +02:00
Stephan Beyer
8e6d9401c7 Simplify clang-tidy invocation for Drone
Symlinking and running bash is not necessary.

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
2020-07-08 14:08:41 +02:00
Kevin Ottens
2b4ea340e2 Run clang-tidy from the 5.12-clang pipeline
This should pass, with the minimal .clang-tidy which was provided. Other
PRs should be done to enable further checks.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-05-27 18:44:25 +02:00
Kevin Ottens
7f7dd6bc76 Upgrade to the latest client image
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-05-27 16:43:24 +02:00
Kevin Ottens
3867e73fd5 Stop supporting Qt older than 5.12
This both removes older Qt from the CI and also adjust all the
find_package calls in CMakeLists.txt

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-05-14 21:15:45 +02:00
Michael Schuster
244c8fa995
Drone: Remove CI builds for Qt 5.7 and 5.8
Housekeeping and the new 2.7 Tray builds need at least Qt 5.9

Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-05-07 01:17:36 +02:00
Michael Schuster
e833e86da6 Updater: Add CMake option BUILD_UPDATER to make the updater optional
- Default: BUILD_UPDATER = NO

  To ease builds for distro packages and contributors (regardless of the specified update URL)

- Enable updater build for Drone CI and AppImage builds

Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-03-09 02:34:55 +01:00
Michael Schuster
fce0a50e37
Fix: add /usr/local/lib to LD_LIBRARY_PATH for OpenSSL 1.1.1
Drone pipeline qt-5.12 failed because the unit tests didn't find OpenSSL.

Signed-off-by: Michael Schuster <michael@schuster.ms>
2019-11-17 02:56:53 +01:00
Michael Schuster
c047232c3b
Fix: escape env vars
Signed-off-by: Michael Schuster <michael@schuster.ms>
2019-11-17 01:59:04 +01:00
Michael Schuster
a846f0276d
Bump Qt 5.12.5 image
Signed-off-by: Michael Schuster <michael@schuster.ms>
2019-11-17 01:30:53 +01:00
Michael Schuster
4fc8936553
Make AppImage upload optional and add timeout
Moves the upload into a separate Drone command and adds a timeout for curl
to fail after 15 minutes.

Returns zero to keep Drone from failing.

Signed-off-by: Michael Schuster <michael@schuster.ms>
2019-11-16 21:36:59 +01:00
Michael Schuster
d830a1c5f7
Upgrade for Qt 5.12.5 in docker-ci
- Use the new image: nextcloudci/client-5.12:client-5.12-5
- Use it's new QT_BASE_DIR: /opt/qt5.12.5

Signed-off-by: Michael Schuster <michael@schuster.ms>
2019-11-16 21:31:07 +01:00
asapelkin
704e34fa99 enabled address sanitizing for tests
Signed-off-by: asapelkin <asapelkin0x01@ya.ru>
2019-10-22 01:13:59 +03:00
Roeland Jago Douma
4c791abafc
Bump Qt5.12 image
Main improvement is that this image contains the libsecret.
So when building qtkeychain that should be used.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-10-21 14:50:25 +02:00
István Váradi
ec359d0e6b Reinstate Debian build in the new Drone config
Signed-off-by: István Váradi <ivaradi@varadiistvan.hu>
2019-07-25 16:48:17 +02:00
Roeland Jago Douma
b368a93e2e
New drone config
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-04-12 11:14:05 +02:00
Roeland Jago Douma
bb9017d3a6
Move over AppImage builder to 5.12
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-03-21 15:57:40 +01:00
Roeland Jago Douma
9d87f707a6
Add Qt-5.12 to CI
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-03-21 15:57:40 +01:00
Claas Augner
2344db8937 qtkeychain: 0.8.0 -> 0.9.1 2018-10-26 18:49:03 +02:00
Roeland Jago Douma
5c7c92157f
Bump images
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-08-13 10:56:18 +02:00
Roeland Jago Douma
97ea6c54bc
Run tests on drone
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-28 14:50:35 +02:00
Roeland Jago Douma
8d70eab8fe
Checkout depth of 1 for drone for faster cloning
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-27 23:13:56 +02:00
Roeland Jago Douma
7ce9c22d2c
Build AppImage with Qt-5.11
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-26 17:49:00 +02:00
Roeland Jago Douma
64255f8f09
Add clang build to CI
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-26 15:41:23 +02:00
Roeland Jago Douma
0a9185b88c
Add Qt-5.10 and Qt-5.11 drone builds
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-26 13:08:34 +02:00
Roeland Jago Douma
e79591e52c
Bump drone images
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-23 21:29:16 +02:00
István Váradi
7827fe4151 Fix Debian build 2018-05-03 19:02:49 +02:00
Roeland Jago Douma
ed3a723ad2
Build no debian while it fails
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-05-03 14:28:11 +02:00
Roeland Jago Douma
4c40789dca
Merge pull request #140 from nextcloud/appimage_drone_bump
Bump AppImage Drone
2018-03-23 15:36:33 +01:00
István Váradi
7216d05766 The Debian build script needs the history to generate logs and the tags to be able to determine the version 2018-02-02 19:11:10 +01:00
István Váradi
ed9509f31f Merge branch 'master' into debian-build 2018-02-01 18:44:55 +01:00
Morris Jobke
9c43edcad6
Run documentation tests in seperate job
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-02-01 15:58:51 +01:00
István Váradi
88c03a5858 Stepped the version of the build image 2018-01-30 19:22:46 +01:00
Julius Härtl
da2a1c25d5
Add drone build for documentation
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-01-30 14:23:10 +01:00
Roeland Jago Douma
4ee1f1fe1a
Foo
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-01-28 20:19:37 +01:00
Roeland Jago Douma
45eefb27cf
Bump AppImage Drone
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-01-28 20:04:42 +01:00