Commit graph

139 commits

Author SHA1 Message Date
Eberhard Beilharz
81957750aa
Merge pull request #10637 from keymanapp/chore/linux/10626_apichecks
chore(linux): Move API verification to separate action
2024-05-21 19:03:36 +02:00
Eberhard Beilharz
696a70d58d
chore(linux): Adjust distros for GHA 2024-05-02 12:07:05 +02:00
Eberhard Beilharz
414a120bb2
chore(linux): Move API verification to separate action
The new `api-verification` workflow runs after `deb-packaging`.

Implements #10626.
2024-04-23 15:10:36 +02:00
Eberhard Beilharz
4dad3e2ba7
chore(linux): Fix wrong merge
The recent merge from `beta` into `master` introduced a problem when
resolving merge conflicts, resulting in duplicate definition of
`binary_packages_unreleased` which prevents the workflow from loading.
This change rectifies the file.
2024-04-15 11:03:26 +02:00
Darcy Wong
d6ee7f510c Merge remote-tracking branch 'origin/master' into chore/merge-beta-to-master-b17s5 2024-04-12 09:29:23 +07:00
Eberhard Beilharz
d1573444dc
chore(linux): Update gha-ubuntu-packaging action
This removes warnings about deprecated Node.js 16.
2024-04-04 16:50:14 +02:00
Eberhard Beilharz
2d283d4d13
chore(linux): Show failed job for next Ubuntu version as failed
This change shows failed package builds for the next Ubuntu version
as failed. With the last change it still showed as green in the overview,
despite my experiments. Turns out it depends where you put the
`continue-on-error: true` statement: if it's in the `steps` section
it'll show up green, if you put it in the job's metadata it'll work as
expected and show up as failed.
2024-04-04 16:30:50 +02:00
Eberhard Beilharz
0d7d240584
chore(linux): Sign packages even if build for next Ubuntu fails
We want to run the `deb_signing` job after building binary packages for
both released and unreleased Ubuntu versions finished, so we have to
specify those in the `needs` field. But that on its own causes the
signing job to be skipped if the binary package build for the next
Ubuntu version fails. This change adds conditions so that the
`deb_signing` job always runs if source package build and the binary
package build for the released Ubuntu versions succeeds.
2024-04-04 09:56:47 +02:00
Eberhard Beilharz
774ba9be7c
chore(linux): Revert "Ignore failed package builds for next Ubuntu differently"
This reverts commit 2fe4da7cca.

In my tests in a test repo `continue-on-error` worked as desired but also
seeds the total result as succeeded if the other jobs succeed. It's
possible that we got the behavior we saw because of syntax errors
in our file, so this change tries with the original approach again.
2024-04-03 16:13:45 +02:00
Eberhard Beilharz
2fe4da7cca
chore(linux): Ignore failed package builds for next Ubuntu differently
Previously failed package builds for the next Ubuntu release showed up
with a green check mark. This change allows them to fail, but ignores
them for the following steps.
2024-04-03 11:21:05 +02:00
Eberhard Beilharz
104680b2bd
chore(linux): Update checkout action to v4.1.1 2024-04-03 11:21:04 +02:00
Eberhard Beilharz
239f14597b
chore(linux): Checkout source before building binary packages
Since we use an action that is defined in our source tree we have to
checkout the source before we can build the binary packages.
2024-04-03 11:21:04 +02:00
Eberhard Beilharz
4ac96654ed
chore(linux): Fix typo 2024-04-03 09:06:07 +02:00
Eberhard Beilharz
e07e5ff64a
chore(linux): Fix typo 2024-04-03 09:05:35 +02:00
Eberhard Beilharz
aae25884b5
chore(linux): Build packages for next Ubuntu version separately
This change splits the package builds into building packages for the
released Ubuntu versions and for the next version. A failure to build
packages for the next version will no longer fail the packaging GHA.

Closes #11143.

(cherry picked from commit 043f2c65f5)
2024-04-03 08:55:50 +02:00
Eberhard Beilharz
043f2c65f5
chore(linux): Build packages for next Ubuntu version separately
This change splits the package builds into building packages for the
released Ubuntu versions and for the next version. A failure to build
packages for the next version will no longer fail the packaging GHA.

Closes #11143.
2024-04-02 17:42:41 +02:00
Eberhard Beilharz
59d287a9df
chore(linux): Temporarily disable autopkgtests gha 2024-02-26 19:17:14 +01:00
Eberhard Beilharz
3b37a604dc
fix(linux): Fix autopkgtest gha
- installing missing dependencies
- consider autopkgtest result in final status
2024-02-26 16:27:36 +01:00
Eberhard Beilharz
bc6d8d5515
Merge pull request #10823 from keymanapp/chore/linux/gha-autopkgtest
chore(linux): Add running autopkgtests on GHA
2024-02-26 10:59:16 +01:00
Eberhard Beilharz
501377a5c3
fix(linux): Dynamically get package name
Fixes API verification step in packaging gha.
2024-02-23 15:16:09 +01:00
Eberhard Beilharz
e8e0c1d31f
chore(linux): Add running autopkgtests on GHA 2024-02-23 11:45:26 +01:00
Eberhard Beilharz
9aebb2b41d
chore(linux): Add testbuild info to workflow title
This change adds the `isTestBuild` flag to the workflow title to make
it easier to find the release builds.
2024-02-19 19:26:16 +01:00
Eberhard Beilharz
0b4ade8018
fix(linux): Fix path to artifacts
With the new download-artifact version when using `merge-multiple:true`
all artifacts end up in the same directory. This change adjusts for that.

Another follow-up of #10577.
2024-02-02 12:07:02 +01:00
Eberhard Beilharz
31ef12706e
chore(linux): Fix the path for downloading artifacts
Follow-up of #10577.
2024-02-01 10:37:18 +01:00
Eberhard Beilharz
cb8f68012c
chore(linux): Upgrade artifacts to v4
- Upgrade upload-artifact to v4.3.0
- Upgrade download-artifact to v4.1.1
- Upgrade checkout to v4.1.1
- Upgrade gha-deb-signing to v0.6

Closes #10385.
2024-01-31 16:38:48 +01:00
Eberhard Beilharz
325ab78881
chore(linux): Replace Lunar with Noble
This change removes Ubuntu 23.04 Lunar and adds support for
Ubuntu 24.04 Noble.
2024-01-30 15:40:41 +01:00
Eberhard Beilharz
15d87963b2
chore(core): Ignore C++ symbols
We have a C API, but (internal) C++ template instantiations are visible
and so get flagged by `dpkg-gensymbols`. This change ignores the one
use of C++ by marking it optional. This is listed as a usage scenario
in the dpkg-gensymbols man page.

Note this requires a change how we call dpkg-gensymbols: if the `-O`
parameter is specified, the file is not treated as being a template file
(see man deb-src-symbols) and so the tags are not interpreted.
Additionally the file gets overwritten with the non-tag version. So this
change removes the `-O` parameter, and changes the archiving of the
generated file.
2024-01-15 18:47:53 +01:00
Eberhard Beilharz
30c9aff4ca
chore(linux): fix GHA packaging 2024-01-11 16:16:41 +01:00
Eberhard Beilharz
b5820ffb9e
chore(linux): Output dput exit code after upload to llso
This is an attempt to understand what's going wrong in the gha.
2024-01-10 08:14:15 +01:00
Eberhard Beilharz
9c8566658e
chore(linux): Cleanup tmpfile 2024-01-09 08:47:03 +01:00
Eberhard Beilharz
4aecb28ac4
chore(linux): Retry llso upload
Occasionally name resolution temporarily fails when trying to upload to
llso. This change retries 10 times before giving up.
2024-01-08 15:13:28 +01:00
Darcy Wong
3f213c99d2 chore(common): Specify Keyman repo on GitHub actions 2023-12-11 10:24:30 +07:00
Eberhard Beilharz
afc63278b8
chore(linux): Address code review comments 2023-11-13 18:14:55 +01:00
Eberhard Beilharz
0967e120d3
Merge branch 'master' into chore/linux/9801_coreversion 2023-11-04 21:49:33 +07:00
Eberhard Beilharz
33eae05cb0
Merge branch 'master' into fix/linux/9878_fixpkgenv 2023-11-04 21:35:52 +07:00
Eberhard Beilharz
517c300abc
chore(linux): Revert to repository_dispatch
This addresses code review comments. Also add readme how to manually
trigger a GHA build, e.g. for testing changes to the GHA.
2023-11-02 22:42:49 +07:00
Eberhard Beilharz
6adfa8a9cf
fix(linux): Fix environment for Debian packages
When didn't set the correct environment when building Debian packages
with GitHub actions. The version information wasn't included in the
source file but instead was generated at binary package build time,
at which time not all necessary environment variables were available.
This change will create a patch file on-the-fly which gets
included in the source package that contains the correct information.

Fixes #9878.
2023-11-02 22:18:02 +07:00
Eberhard Beilharz
30250e3d8d
chore(linux): Enhance GHA API check
This change adds additional checks for the symbols file:

- if a line with a method name gets changed, the package version number
  in that line also needs to be updated
- for major API changes (methods renamed or removed) the API version
  numbers needs to be incremented
- the API version numbers in the .symbols file and in `CORE_API_VERSION.md`
  need to match
2023-10-26 18:04:43 +02:00
Eberhard Beilharz
1a2a85affd
chore(linux): Use workflow_dispatch instead of repository_dispatch
This makes it possible to manually trigger workflow runs.

Closes #9548.
2023-10-26 17:16:05 +02:00
Eberhard Beilharz
2e5e586860
chore(linux): Rename libkmnkbp0-0 package
Also removes the temporary libkeymancore/libkmnkbp hack that we put in
for packaging GHA.

Closes #9733.
2023-10-20 17:31:39 +02:00
Eberhard Beilharz
fdc9baadb2
chore(linux): Merge remote-tracking branch 'origin/master' into chore/linux/9733_RenameLibknmkbp 2023-10-20 12:31:14 +02:00
Eberhard Beilharz
1c639e80ea
chore(linux): Update packaging GHA
This enhances the packaging GHA to be able to verify the renamed
core library. Since the GHA packaging build always uses the action
definition from `master` this change has to land before we can
successfully build the PR that does the actual renaming of the core
library and Debian package. Later we can remove the references to
`libkmnkbp0-0` again.

Part of #9733.
2023-10-20 09:56:39 +02:00
Eberhard Beilharz
52bb859817
chore(linux): Rename (lib)kmnkbp to (lib)keymancore 2023-10-19 10:35:09 +02:00
Eberhard Beilharz
46d67d944e
chore(linux): Re-enable building for Ubuntu 23.10 Mantic
Now that we have updated ibus packages in place we can re-enable building
for Mantic.

Fixes #9520 and #9398.
2023-10-17 18:48:53 +02:00
Marc Durdin
e0c2778199
Merge pull request #9644 from keymanapp/chore/merge-master-into-package-metadata
chore: merge master into package-metadata 🎺
2023-10-04 03:43:45 +02:00
Eberhard Beilharz
9a0160746b
chore(linux): Prevent warning during packaging
This change updates gha-ubuntu-packaging to a version that creates
a non-empty changelog entry. This prevents a warning during
package build.
2023-09-21 16:35:33 +02:00
Marc Durdin
3a2540b077 feat(developer): remove kmcomp
Removes kmcomp.dpr, related source, compilekeymanweb.pas, and related
unit tests.

Cleans up a couple of bits and pieces around kmc in order to help tests
to pass, and updates some tests that had legacy code in them
(particularly missing &TARGETS stores).
2023-09-09 17:47:15 +02:00
Marc Durdin
4c07b6c49c feat(developer): remove kmcmpdll 2023-09-02 12:25:29 +04:00
Darcy Wong
1127071d65
Merge pull request #9410 from keymanapp/chore/gha-crowdin-daily
chore(common): Update crowdin GHA to trigger daily
2023-08-04 06:48:30 +07:00
Eberhard Beilharz
464f702b00
Merge pull request #9400 from keymanapp/chore/linux/gha-environment
chore(linux): Properly treat test builds with packaging GHA
2023-08-03 09:25:33 +02:00