Commit graph

29 commits

Author SHA1 Message Date
Dirk Hohndel
30efede730 build-system: small changes for better debugging
In order to make it easier to see what's happening inside get-atomic-buildnr.sh
write the result to a file that can be read by the caller. Not quite as
elegant, but hopefully more practical to see what's going wrong when no new
build number is created.

Make sure that post-releasenotes is successfull by actually posting a release
artifact (apparently the gh release action otherwise quietly fails).

Try to ensure we find the Android APK when uploading to the release.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-01-10 11:54:44 -08:00
Dirk Hohndel
c33e05c1d4 build-system: create release notes only once
Some experimentation showed what should have been obvious. The release
information is additive. So it's enough if ONE of the actions creates release
notes, all the others can simply add additional release artifacts.

To make this more obvious, this commit creates a new action that does nothing
but create the release notes and publish the release. Since it really doesn't
do anything else, it's likely to be the quickest to complete, but that doesn't
matter - the last action that has a body or body_path in the gh-release action
determines the release notes. And we now have exactly one action that does so.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-01-10 09:17:49 -08:00
Dirk Hohndel
14e715be6e build-system: assemble release notes using gh CLI
Instead of using a thirdparty action and painfully passing things around,
simply use the GitHub CLI (gh) and assemble the release notes on the fly.

This makes for much simpler and much easier to maintain code.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-01-09 17:14:42 -08:00
Dirk Hohndel
4f077ef00e build-system: fix incorrect path to helper script
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-01-08 18:01:03 -08:00
Dirk Hohndel
f1ac55d322 build-system: replace repetitive GH Action code with script call
This is now much easier to maintain.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-01-08 17:51:54 -08:00
Michael Keller
e247d4cb3c CICD: Improve the Text for CICD Releases.
- add a note about the artifacts being added asynchronously
- add the commit message

Signed-off-by: Michael Keller <github@ike.ch>
2024-01-08 03:14:01 -08:00
Michael Keller
d867701233 Update GitHub action to include signing.
Signed-off-by: Michael Keller <github@ike.ch>
2024-01-08 19:46:37 +13:00
Dirk Hohndel
5fcfe5298a remove CICD release warning
I guess the version change worked better than expected. So we should be able to
drop the warning.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-01-07 17:46:26 -08:00
Dirk Hohndel
7b59749bcb Add warning about changes to release announcement
This SHOULD work - but of course I can't test it until I try.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-01-06 10:55:24 -08:00
Dirk Hohndel
62477d8c65 Complete redesign of Subsurface version numbers
- for now all versions start with v6.0
- CICD builds use the monolithic build number as patch level, e.g. v6.0.12345
- local builds use the following algorithm
  - find the newest commit with a CICD build number that is included in the
    working tree
  - count the number of commits in the working tree since that commit
  - if there are no commits since the last CICD build, the local build version
    will be v6.0.12345-local
  - if there are N commits since the last CICD build, it will be
    v6.0.12345-N-local
- test builds in the CICD that don't create artifacts simply use a dummy release
  in order to not incorrectly increment the build number and also not to waste
  time and resources by manually checking out the nightly-build repo for each of
  these builds.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-01-06 10:55:24 -08:00
Dirk Hohndel
fa609a9e9b Fix workflow issue caused by backwards incompatible component
Thanks to @probonopd for suggesting this fix.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2023-12-15 13:48:49 -08:00
Dirk Hohndel
c1e7cd1428 build-system: consistently mark git directories safe
Even on platforms that don't have the new git version, yet.
And using the convoluted way to create an environment variable that should
point to our checked out tree in the GitHub Action. The more obvious ways
have resulted in failed builds for obscure reasons.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2022-05-14 10:28:56 -07:00
Dirk Hohndel
faf349bbda prepare for 5.0.1
Update README and ReleaseNotes.

Also remove outdated workflow badge, add a couple new one, and hack around a
rendering issue where the last character of longer workflow names gets
overwritten by the status - which resulted in the arguably most important info
(which Qt version) being hidden.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2021-03-31 09:07:01 -07:00
Subsurface CI
3cf6848605 build-system/trusty: use new Qt installer
Update to Qt 5.12.10, latest OpenSSL, add QtChart, add other missing packages.
Also switch to gcc-7 as our statistics code requires better C++17 support than
what gcc-6 can offer.

This then creates trusty-qt512:1.1

Signed-off-by: Subsurface CI <dirk@hohndel.org>
2020-12-29 08:38:36 -08:00
Dirk Hohndel
de194d56be GitHub Actions: better job names
This makes it more obvious which action actually failed.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-12-17 09:17:54 -08:00
Dirk Hohndel
d49647d288 GitHub Actions: stop creating CI releases
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-05-04 08:51:49 -07:00
Dirk Hohndel
d54c26e627 GitHub Actions: remove outdated libdivecomputer header files
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-28 11:21:10 -08:00
Dirk Hohndel
932031bf4c GitHub Actions: better names for the Linux builds
This makes it easier to figure out which build is doing what.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-12-30 17:43:31 -08:00
Dirk Hohndel
0c6f86f12d GitHub Action: use the containers we create with GitHub Actions
This closes the loop.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-12-05 15:51:29 -08:00
Anton Lundin
6612297022 GitHub Actions: let CI build docker images
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-28 11:12:59 -08:00
Dirk Hohndel
6b080525b2 GitHub Actions: switch back to the GitHub artifacts for PRs
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>
2019-10-27 03:42:04 -07:00
Dirk Hohndel
d4ce793540 GitHub Actions: fix several errors in previous commits
I have no excuse.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-25 22:07:03 -04:00
Dirk Hohndel
2aac551089 GitHub Actions: add apt-get update before installing curl
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-25 21:49:41 -04:00
Dirk Hohndel
de1e439110 GitHub Actions: only build pushes into and PR against master
This should fix the odd double builds for people who create branches for
pull requests in the main repository.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-25 18:32:50 -07:00
Dirk Hohndel
f83505b554 GitHub Actions: push to transfer.sh for PRs, post release for pushes
This means that PRs from people using the main repo for their staging
branches will get both transfer.sh and a release.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-25 18:32:50 -07:00
Dirk Hohndel
a07c2feb95 GitHub Actions: run them on pull requests as well
I wonder if this will cause issues where the actions sometimes run
twice.  But we'll deal with that rather than dealing with not having the
tests on pull requests.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-25 14:13:15 +02:00
Dirk Hohndel
6b334ac7d9 GitHub Actions: improve naming and location of files
Just to make things a little more consistent.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-18 20:46:01 -07:00
Dirk Hohndel
aff54e17e5 GitHub Actions: post releases
This so far just works on push and hopefullt pull requests, not for tags
and therefore actual releases.

In order not to conflict with the binaries from Travis, I changed the
name to "ci-release" instead of "continuous".

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-18 20:46:01 -07:00
Dirk Hohndel
ef3d67be08 GitHub Actions: add Linux Qt 5.12 container build
The AppImage works - I just need to figure out how to post releases. For now
it'a available on the Actions page as Artifact.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-16 10:57:32 -07:00