aboutsummaryrefslogtreecommitdiffstats
path: root/.github
AgeCommit message (Collapse)Author
2020-10-30build-system: Docker build for 64bit MXEGravatar Dirk Hohndel
We previously tried to build the MXE Docker container on GitHub using an Action, but that really didn't work well and was a lot more trouble than it was worth. So this goes back to an offline build mechanism where I simply create an updated Docker image when needed and push that to Docker Hub. But this nearly hides the most interesting change here - we are finally switching to using 64bit binaries on Windows. It's 2020 and fewer than 1% of our users use 32bit Windows machines. We'll need to expand this to be able to have both a 32bit and a 64bit version of Subsurface for Windows. But for now, this solves the problem for 99% of our users. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: add libmtp for our Windows buildsGravatar Dirk Hohndel
This uses latest master (as that's the only one that has the explicit Descent Mk2i support in it). Right now, unfortunately the MXE build fails. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: add libmtp for Linux and macOSGravatar Dirk Hohndel
Since MXE doesn't offer libmtp I'll need to add code to manually build libmtp there. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-26build-system: use openSUSE Tumbleweed latestGravatar Dirk Hohndel
Without a distro update, Leap 15.2 appears to only give us Qt 5.12. Since the upgrade takes forever and causes problems as it requests a senseless 'reboot' of the container, let's try using Tumbleweed instead. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-24test: manually run gitStorageTestGravatar Dirk Hohndel
This way we should see the output and hopefully be able to figure out why that silly test keeps randomly failing. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-16build-system: add GitHub action for openSUSE Leap 15.2Gravatar Dirk Hohndel
This way we test a Qt 5.15 build. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-16build-system: add GitHub action for Ubuntu 20.10Gravatar Dirk Hohndel
This way we test a Qt 5.14 build. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-16build-system: add GitHub scanningGravatar Dirk Hohndel
Enable the newly re-imagined Semmel based CodeQL scanning. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-08build-system: remove building Grantlee from AppImage buildGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-09-20build-system/packaging: add bluez dependency for Coverity buildGravatar Dirk Hohndel
I had missed this one in commit d73e0a0fb4028ea967ce24a162328853dd248dac ("build-system/packaging: add bluez dependency for Linux builds"). Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-09-19build-system/packaging: add bluez dependency for Linux buildsGravatar Dirk Hohndel
I hope this captures all the variations Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-06-25build-system/mxe: use the new container imageGravatar Paul Buxton
[Dirk Hohndel: switched back to our docker hub repo] Signed-off-by: Paul Buxton <paulbuxton.mail@googlemail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-06-25build-system/MXE: build with more up to date MXE tools.Gravatar Paul Buxton
- use hidapi grantlee and mdbtools from MXE - update MXE version to use QT 5.15, and pull in libzstd and CMake 3.17.3 - fix linking of winmm on windows build with new mxe - add some instructions on building the container - add some new dependancies from QT 5.15 to the packaging - add a patch to MXE to Build qtconnectivity with native-win32-bluetooth [Dirk Hohndel: small refactor] Signed-off-by: Paul Buxton <paulbuxton.mail@googlemail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-05-04GitHub Actions: stop creating CI releasesGravatar Dirk Hohndel
Net net this has caused more problems than it solved. Too often binaries were missing or broken. Instead 'release equivalent' binaries are now consistently posted to downloads/test via a Webhook. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-04-30Github Actions: don't bundle mac appGravatar Dirk Hohndel
There's no point in doing that since the app directory this creates is broken on older macOS versions, anyway (and we create a working DMG through a webhook). Additionally, lately this has started to fail on GitHub, so let's just rip this out. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-04-27GitHub Actions: we can't have an action with no on: clauseGravatar Dirk Hohndel
So in order to disable an action, I'll just use an unused repository_dispatch. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-04-25GitHub Actions: disable Android container builds on GitHubGravatar Dirk Hohndel
Building this locally and squashing layers creates a MUCH smaller image. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-04-25GitHub Actions: use the Qt 5.13.2 based Android build containerGravatar Dirk Hohndel
This is no longer created using GitHub actions (but all the necessary information is still included in this repo). We need to be able to shrink this container so our GitHub Action runs don't run out of disk space. Adjust the path where the resulting binaries are found with this build. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-04-15testing/git-storage: don't override test accountsGravatar Dirk Hohndel
We now have a much better way of dealing with the issue of colliding tests inside the test. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-04-04GitHub Actions: add pkg-config to iOS buildGravatar Dirk Hohndel
Our builds fail because we are missing pkg-config. I'm not quite sure if this is triggered by a new dependency or if pkg-config used to be there and now isn't. Either way, this should hopefully fix things. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-02-13GitHub Actions/iOS: shift to using a pre-packaged Qt installationGravatar Dirk Hohndel
Since the official Qt binaries can no longer be installed without disclosing credentials (well, sure, that could be done through secrets), I decided that we should go back to packaging just the part of the iOS Qt SDK that we need. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-02-10build-system/coverity: it seems silly to need both wget and curlGravatar Dirk Hohndel
But hopefully with this we'll get the Coverity scans back. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-02-05GitHub Actions: convert Coverity build to using container as wellGravatar Dirk Hohndel
Same build failures as we had with the other Bionic based build. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-02-03GitHub Actions: use the official Ubuntu 18.04 containerGravatar Dirk Hohndel
Something is seriously wrong with the default Ubuntu 18.04 environment on GitHub Actions. C++ builds fail with very confusing messages about C++11 support. Switching to building in a Ubuntu 18.04 based container - that seems redundant, but it fixes the problem. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-01-28GitHub Actions: remove outdated libdivecomputer header filesGravatar Dirk Hohndel
We never noticed this before, but during the build of the Trusty Qt5.12 container itself we create libdivecomputer include files and we ship them with the container. And as the recent build failures after an incompatible API change in libdivecomputer show, those include files are apparently used in this build, not the ones that are newly created during the build. Obviously the build container needs to be fixed, but as a quick workaround, this should do. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-01-04GitHub Actions: change passwords to be hard codedGravatar Dirk Hohndel
As much as I hate having passwords exposed through the source code, since GitHub wisely prevents reading secrets in pull requests, there isn't really a sane way to have this use confidential credentials. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-01-01GitHub Actions: execute the Ubuntu 19.10 steps in yamlGravatar Dirk Hohndel
This way we can also easily name them as we did for the other two tested platforms. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-01-01GitHub Actions: better grouping of test stepsGravatar Dirk Hohndel
This is a bit more convoluted to do inside of the Ubuntu 19.10 container, but at least for Ubuntu 14.04 and for Mac this will be an improvement. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-01-01GitHub Actions: use custom logins for cloud testsGravatar Dirk Hohndel
This should reduce the risk of stepping on top of each other. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-12-30GitHub Actions: better names for the Linux buildsGravatar Dirk Hohndel
This makes it easier to figure out which build is doing what. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-12-30GitHub Actions: add Ubuntu 19.10 / Qt 5.12 buildGravatar Dirk Hohndel
And run tests for desktop and mobile. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-12-30GitHub Actions: run the tests on Mac and Ubuntu 18.04/Qt 5.9 desktopGravatar Dirk Hohndel
We lost running the tests when migrating to GitHub Actions... Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-12-30GitHub Actions: install missing Homebrew packages to run testsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-12-07AppImage: don't bundle our libdbusGravatar Dirk Hohndel
This appears to prevent Bluetooth from working. Fixes: #2370 Suggested-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-12-05GitHub Actions: fix typo extracting the branch nameGravatar Dirk Hohndel
Also deal more gracefully with other potential bugs so that we don't add an spurious '-' at the end if the branch is empty for some reason (as that makes the image name invalid). Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-12-05GitHub Actions: ensure container names are all lower caseGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-12-05GitHub Actions: clarify commentGravatar Dirk Hohndel
Really, this is just here to re-trigger that container build now that things are merged and stage 2 will actually work... Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-12-05GitHub Action: use the containers we create with GitHub ActionsGravatar Dirk Hohndel
This closes the loop. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-11-28GitHub Actions: add branch name to docker image nameGravatar Dirk Hohndel
Unless we're on master. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-11-28GitHub Actions: better names for the docker workflowsGravatar Dirk Hohndel
This way it's much easier to see on the GitHub website which one is which. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-11-28GitHub Actions: set new version numbers for the docker imagesGravatar Dirk Hohndel
These are of course arbitrary. The Android container image for some reason based its version number on the Qt version. Which may or may not be a good idea. The other two had 0.x version numbers, so let's move them to 1.0 for the first release that gets pushed to the subsurface account on docker hub. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-11-28GitHub Actions: build stage 2 of MXE image for correct branchGravatar Dirk Hohndel
When triggered by a push event, the checkout action checks out the correct branch. But without this change, the stage 2 action would always run on master. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-11-28GitHub Actions: trigger docker builds on more pathsGravatar Dirk Hohndel
Not only a change to the docker file, also changes to the yaml files should trigger rebuilds. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-11-28GitHub Actions: push Linux and Android containers to docker hubGravatar Dirk Hohndel
For now simply using the existing version numbers. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-11-28GitHub Actions: add two stage MXE container buildGravatar Dirk Hohndel
Based on ideas from Anton - both the basic building of containers in the first place as well as the workaround for the 6h build limit. Because GitHub Actions are limited to 6 hours we split the creation of the MXE container into two steps and push the intermediary container after stage 1 to docker hub. Right now each of the steps takes about 3.5 hours, so hopefully even with changes in the future this will continue to work. This commit also introduces use of docker hub instead of GitHub's own registry (since strangely right now GitHub actions cannot run containers from GitHub's private registry). In order for this to work, we need to have the docker credentials in secrets in GitHub. As a result, only people who can create branches in our repository can easily test changes to the container images. Others can modify the code to use a different docker hub account and provide those secrets in their own GitHub account. Not ideal, but of course we cannot allow every pull request to potentially overwrite docker images in our "official" docker hub account. Suggested-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-11-28GitHub Actions: split the container build action into twoGravatar Dirk Hohndel
And remove the Windows/MXE one that doesn't work because of the 6h time limit. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-11-28GitHub Actions: let CI build docker imagesGravatar Anton Lundin
This create a GitHub Actions workflow to build the docker images we use in our CI workflows. Signed-off-by: Anton Lundin <glance@acc.umu.se>
2019-11-22GitHub Actions: don't add macOS artifacts to releaseGravatar Dirk Hohndel
We now get a working macOS DMG for each CICD release via the webhook - and the GitHub built .app.zip only worked on the latest macOS and was near-unusable there. We still make it available as an artifact of that macIS GitHub action in case there is some value, but we no longer push it into the GitHub release artifacts. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-11-18GitHub actions: fix macOS artifact uploadGravatar Dirk Hohndel
Previously this created a bogus Subsurface.app.zip.zip file and then failed to upload it to the release. The upload / download pair of default actions is happier with just the folder. And then the creation of the zip file needs the '-r' switch. Oops. Finally, the pull-request specific uploads as build artifact are completely redundant since we already do this to move the data from the macOS build to the container that runs our own publish action in the first place. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-27GitHub Actions: switch back to the GitHub artifacts for PRsGravatar Dirk Hohndel
transfer.sh has suddenly started to time out. And for the rather occasional need of having a binary to test from a PR, this should be good enough. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>