Skip to content

How to test artifacts from pull requests for Keyman for Linux

Eberhard Beilharz edited this page Jan 27, 2022 · 29 revisions

Each pull request (PR) that touches files from Keyman for Linux or core processor gets build on our Jenkins continuous integration server. Testing those packages requires some manual steps.

Prerequisites

  • create an account on Jenkins (see below)
  • install the current Keyman alpha packages. This is necessary so that you have all the dependencies installed.

Downloading and installing PR packages

Downloading

The easiest way to download the build artifacts for Linux is to look in the status section of the PR on GitHub and click on the "Details" link behind "Test: Keyman packaging (Linux)":

Note: Do not use the "Test-14.0 (Keyman - Linux)" link.

GitHubStatusSection

On the PR build page on Jenkins click on the "Build Artifacts" link at the top:

JenkinsBuildArtifacts

You can either download all artifacts in a zip file, or click on the "results" link and then download only the packages for your Ubuntu version.

If you downloaded all artifacts, unpack the zip file.

Installing

You can install the packages in a terminal window with:

cd $HOME/Downloads # replace with the location of the .deb files
sudo apt update
sudo dpkg -i \
{ibus-keyman,ibus-kmfl,kmflcomp,libkmfl,libkmnkbp0}*$(lsb_release -s -c)*$(dpkg --print-architecture).deb \
{keyman,python3-keyman-config}*$(lsb_release -s -c)*all.deb
sudo apt install -f

Sanity check

Before running more detailed tests, please run a quick sanity check to verify things are in the expected state:

  • open the Keyman Configuration window: from the launcher, enter Keyman Configuration. Alternatively from the command line run km-config.
  • install any Keyman keyboard, either from keyman.com (Download button), or from a local .kmp file (Install button)
  • verify that the keyboard appears in the dropdown with installed keyboards:

Screenshot from 2021-12-07 09-41-51

If the keyboard doesn't appear in the dropdown list

  • open a terminal window and run ps -C ibus-daemon -f. Paste the output in a pull request comment.
  • then reboot
  • and check the dropdown again

If it still doesn't appear, scream for help - something is likely wrong with the system 😄

Creating an account on Jenkins

In order to be able to download artifacts you need an account on the Jenkins continuous integration server. Please use firstname_lastname in all lowercase characters as account name. After account creation send an email to gerrit at sil.org with your username so that you can be given the necessary permissions.

Clone this wiki locally