GitHub actions for building Keyman keyboard packages

I would like to share my experience in connection with use of GitHub actions for building Keyman keyboard packages.

I have a private repository in GitHub for storing some Keyman keyboard source files. I already added tools and resources directories along with the build.sh script to my repository from the Keyman keyboard repository for the purpose of building keyboard packages and validating .keyboard_info files.

Earlier I used clone of the keyboards-starter repository for this purpose.

Now I added the below code to my-repository/.github/workflows/build-keyboards.yml to set up a github action for building Keyman keyboard packages.

name: Build Keyboards
on:
  push:
    paths:
      - 'trigger.txt'
      - 'release/**'
    
jobs:
  Build:
    runs-on: windows-latest
     
    defaults:
      run:
        shell: bash
     
    steps:
      - name: Checkout 
        uses: actions/checkout@v3
      - name: Build Keyboards
        run: ./build.sh release
      - name: Archive Artifacts
        uses: actions/upload-artifact@v3
        with:
          name: Keyman Keyboards
          path: release/*/*/build

It is working perfectly when changing source files.

1 Like

Nice!

We are planning to move to a single-keyboard-per-repository design in the future, using GitHub actions similar to this. Good to see it is already working for you!

1 Like