Add Kconfig field to matrix and inputs workflows

- rename outboards files
This commit is contained in:
Manna Harbour 2021-08-22 21:27:40 +10:00
parent 33823c5c15
commit 196a00c86f
39 changed files with 260 additions and 88 deletions

View File

@ -28,6 +28,8 @@ jobs:
- default
mapping:
- default
kconfig:
- default
steps:
- name: Checkout
uses: actions/checkout@v2
@ -35,7 +37,6 @@ jobs:
id: variables
run: |
if [ -n "${{ matrix.shield }}" -a "${{ matrix.shield }}" != "default" ]
then
SHIELD_ARG="-DSHIELD=${{ matrix.shield }}"
keyboard=${{ matrix.shield }}
@ -63,17 +64,34 @@ jobs:
;;
esac
done
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
echo "::set-output name=artifact-dir::artifacts"
outboard_file=".github/workflows/outboards/$keyboard"
artifacts_dir="artifacts"
echo "::set-output name=artifact-dir::$artifacts_dir"
mkdir "$artifacts_dir"
cp "$configfile" "$artifacts_dir"
if [ -n "${{ matrix.kconfig }}" -a "${{ matrix.kconfig }}" != 'default' ]
then
kconfig_file="config/$keyboard.conf"
echo "${{ matrix.kconfig }}" > "$kconfig_file"
cat "$kconfig_file"
cp "$kconfig_file" "$artifacts_dir"
artifact_build_name="$artifact_build_name kconfig_"`echo "${{ matrix.kconfig }}" | md5sum | cut -d ' ' -f 1`
fi
outboard_file=".github/workflows/outboards/$keyboard.outboard"
if [ -f "$outboard_file" ]
then
grep -v '^#' "$outboard_file" >> $GITHUB_ENV
cat "$outboard_file"
cp "$outboard_file" "$artifacts_dir"
fi
echo "::set-output name=outboard_dir::outboard"
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
- name: Checkout outboard
if: ${{ env.outboard_repository != '' && env.outboard_ref != '' }}
uses: actions/checkout@v2
@ -119,10 +137,8 @@ jobs:
run: west zephyr-export
- name: Build (west build)
run: west build -s zmk/app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }} -DZMK_CONFIG="${GITHUB_WORKSPACE}/config"
- name: Prepare artifacts
- name: Prepare firmware artifacts
run: |
mkdir ${{ steps.variables.outputs.artifact-dir }}
cp "${{ steps.variables.outputs.configfile }}" "${{ steps.variables.outputs.artifact-dir }}"
for extension in "hex" "uf2"
do
file="build/zephyr/zmk.$extension"

View File

@ -28,6 +28,8 @@ jobs:
- default
mapping:
- default
kconfig:
- default
steps:
- name: Checkout
uses: actions/checkout@v2
@ -35,7 +37,6 @@ jobs:
id: variables
run: |
if [ -n "${{ matrix.shield }}" -a "${{ matrix.shield }}" != "default" ]
then
SHIELD_ARG="-DSHIELD=${{ matrix.shield }}"
keyboard=${{ matrix.shield }}
@ -63,17 +64,34 @@ jobs:
;;
esac
done
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
echo "::set-output name=artifact-dir::artifacts"
outboard_file=".github/workflows/outboards/$keyboard"
artifacts_dir="artifacts"
echo "::set-output name=artifact-dir::$artifacts_dir"
mkdir "$artifacts_dir"
cp "$configfile" "$artifacts_dir"
if [ -n "${{ matrix.kconfig }}" -a "${{ matrix.kconfig }}" != 'default' ]
then
kconfig_file="config/$keyboard.conf"
echo "${{ matrix.kconfig }}" > "$kconfig_file"
cat "$kconfig_file"
cp "$kconfig_file" "$artifacts_dir"
artifact_build_name="$artifact_build_name kconfig_"`echo "${{ matrix.kconfig }}" | md5sum | cut -d ' ' -f 1`
fi
outboard_file=".github/workflows/outboards/$keyboard.outboard"
if [ -f "$outboard_file" ]
then
grep -v '^#' "$outboard_file" >> $GITHUB_ENV
cat "$outboard_file"
cp "$outboard_file" "$artifacts_dir"
fi
echo "::set-output name=outboard_dir::outboard"
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
- name: Checkout outboard
if: ${{ env.outboard_repository != '' && env.outboard_ref != '' }}
uses: actions/checkout@v2
@ -119,10 +137,8 @@ jobs:
run: west zephyr-export
- name: Build (west build)
run: west build -s zmk/app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }} -DZMK_CONFIG="${GITHUB_WORKSPACE}/config"
- name: Prepare artifacts
- name: Prepare firmware artifacts
run: |
mkdir ${{ steps.variables.outputs.artifact-dir }}
cp "${{ steps.variables.outputs.configfile }}" "${{ steps.variables.outputs.artifact-dir }}"
for extension in "hex" "uf2"
do
file="build/zephyr/zmk.$extension"

View File

@ -33,6 +33,10 @@ on:
description: 'Miryoku Mapping'
required: false
default: 'default'
kconfig:
description: 'Kconfig'
required: false
default: 'default'
jobs:
process-inputs:
runs-on: ubuntu-latest
@ -44,6 +48,7 @@ jobs:
clipboard: ${{ steps.process-inputs.outputs.clipboard }}
layers: ${{ steps.process-inputs.outputs.layers }}
mapping: ${{ steps.process-inputs.outputs.mapping }}
kconfig: ${{ steps.process-inputs.outputs.kconfig }}
steps:
- name: Process inputs
id: process-inputs
@ -60,6 +65,7 @@ jobs:
set-output "clipboard" "${{ github.event.inputs.clipboard }}"
set-output "layers" "${{ github.event.inputs.layers }}"
set-output "mapping" "${{ github.event.inputs.mapping }}"
set-output "kconfig" "${{ github.event.inputs.kconfig }}"
build:
runs-on: ubuntu-latest
container:
@ -75,6 +81,7 @@ jobs:
clipboard: ${{ fromJSON(needs.process-inputs.outputs.clipboard) }}
layers: ${{ fromJSON(needs.process-inputs.outputs.layers) }}
mapping: ${{ fromJSON(needs.process-inputs.outputs.mapping) }}
kconfig: ${{ fromJSON(needs.process-inputs.outputs.kconfig) }}
steps:
- name: Checkout
uses: actions/checkout@v2
@ -82,7 +89,6 @@ jobs:
id: variables
run: |
if [ -n "${{ matrix.shield }}" -a "${{ matrix.shield }}" != "default" ]
then
SHIELD_ARG="-DSHIELD=${{ matrix.shield }}"
keyboard=${{ matrix.shield }}
@ -110,17 +116,34 @@ jobs:
;;
esac
done
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
echo "::set-output name=artifact-dir::artifacts"
outboard_file=".github/workflows/outboards/$keyboard"
artifacts_dir="artifacts"
echo "::set-output name=artifact-dir::$artifacts_dir"
mkdir "$artifacts_dir"
cp "$configfile" "$artifacts_dir"
if [ -n "${{ matrix.kconfig }}" -a "${{ matrix.kconfig }}" != 'default' ]
then
kconfig_file="config/$keyboard.conf"
echo "${{ matrix.kconfig }}" > "$kconfig_file"
cat "$kconfig_file"
cp "$kconfig_file" "$artifacts_dir"
artifact_build_name="$artifact_build_name kconfig_"`echo "${{ matrix.kconfig }}" | md5sum | cut -d ' ' -f 1`
fi
outboard_file=".github/workflows/outboards/$keyboard.outboard"
if [ -f "$outboard_file" ]
then
grep -v '^#' "$outboard_file" >> $GITHUB_ENV
cat "$outboard_file"
cp "$outboard_file" "$artifacts_dir"
fi
echo "::set-output name=outboard_dir::outboard"
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
- name: Checkout outboard
if: ${{ env.outboard_repository != '' && env.outboard_ref != '' }}
uses: actions/checkout@v2
@ -166,10 +189,8 @@ jobs:
run: west zephyr-export
- name: Build (west build)
run: west build -s zmk/app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }} -DZMK_CONFIG="${GITHUB_WORKSPACE}/config"
- name: Prepare artifacts
- name: Prepare firmware artifacts
run: |
mkdir ${{ steps.variables.outputs.artifact-dir }}
cp "${{ steps.variables.outputs.configfile }}" "${{ steps.variables.outputs.artifact-dir }}"
for extension in "hex" "uf2"
do
file="build/zephyr/zmk.$extension"

View File

@ -18,4 +18,6 @@ m4_include(include/jobs-build.yml.m4)m4_dnl
- default
mapping:
- default
kconfig:
- default
m4_include(include/build-steps.yml.m4)m4_dnl

View File

@ -18,4 +18,6 @@ m4_include(include/jobs-build.yml.m4)m4_dnl
- default
mapping:
- default
kconfig:
- default
m4_include(include/build-steps.yml.m4)m4_dnl

View File

@ -32,6 +32,10 @@ on:
description: 'Miryoku Mapping'
required: false
default: 'default'
kconfig:
description: 'Kconfig'
required: false
default: 'default'
jobs:
process-inputs:
runs-on: ubuntu-latest
@ -43,6 +47,7 @@ jobs:
clipboard: ${{ steps.process-inputs.outputs.clipboard }}
layers: ${{ steps.process-inputs.outputs.layers }}
mapping: ${{ steps.process-inputs.outputs.mapping }}
kconfig: ${{ steps.process-inputs.outputs.kconfig }}
steps:
- name: Process inputs
id: process-inputs
@ -59,6 +64,7 @@ jobs:
set-output "clipboard" "${{ github.event.inputs.clipboard }}"
set-output "layers" "${{ github.event.inputs.layers }}"
set-output "mapping" "${{ github.event.inputs.mapping }}"
set-output "kconfig" "${{ github.event.inputs.kconfig }}"
build:
runs-on: ubuntu-latest
container:
@ -74,4 +80,5 @@ jobs:
clipboard: ${{ fromJSON(needs.process-inputs.outputs.clipboard) }}
layers: ${{ fromJSON(needs.process-inputs.outputs.layers) }}
mapping: ${{ fromJSON(needs.process-inputs.outputs.mapping) }}
kconfig: ${{ fromJSON(needs.process-inputs.outputs.kconfig) }}
m4_include(include/build-steps.yml.m4)m4_dnl

View File

@ -5,7 +5,6 @@
id: variables
run: |
if [ -n "${{ matrix.shield }}" -a "${{ matrix.shield }}" != "default" ]
then
SHIELD_ARG="-DSHIELD=${{ matrix.shield }}"
keyboard=${{ matrix.shield }}
@ -33,17 +32,34 @@
;;
esac
done
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
echo "::set-output name=artifact-dir::artifacts"
outboard_file=".github/workflows/outboards/$keyboard"
artifacts_dir="artifacts"
echo "::set-output name=artifact-dir::$artifacts_dir"
mkdir "$artifacts_dir"
cp "$configfile" "$artifacts_dir"
if [ -n "${{ matrix.kconfig }}" -a "${{ matrix.kconfig }}" != 'default' ]
then
kconfig_file="config/$keyboard.conf"
echo "${{ matrix.kconfig }}" > "$kconfig_file"
cat "$kconfig_file"
cp "$kconfig_file" "$artifacts_dir"
artifact_build_name="$artifact_build_name kconfig_"`echo "${{ matrix.kconfig }}" | md5sum | cut -d ' ' -f 1`
fi
outboard_file=".github/workflows/outboards/$keyboard.outboard"
if [ -f "$outboard_file" ]
then
grep -v '^#' "$outboard_file" >> $GITHUB_ENV
cat "$outboard_file"
cp "$outboard_file" "$artifacts_dir"
fi
echo "::set-output name=outboard_dir::outboard"
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
- name: Checkout outboard
if: ${{ env.outboard_repository != '' && env.outboard_ref != '' }}
uses: actions/checkout@v2
@ -89,10 +105,8 @@
run: west zephyr-export
- name: Build (west build)
run: west build -s zmk/app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }} -DZMK_CONFIG="${GITHUB_WORKSPACE}/config"
- name: Prepare artifacts
- name: Prepare firmware artifacts
run: |
mkdir ${{ steps.variables.outputs.artifact-dir }}
cp "${{ steps.variables.outputs.configfile }}" "${{ steps.variables.outputs.artifact-dir }}"
for extension in "hex" "uf2"
do
file="build/zephyr/zmk.$extension"

View File

@ -23,4 +23,6 @@ m4_include(include/jobs-build.yml.m4)m4_dnl
- default
mapping:
- default
kconfig:
- default
m4_include(include/build-steps.yml.m4)m4_dnl

View File

@ -31,4 +31,6 @@ jobs:
- default
mapping:
- default
kconfig:
- default
m4_include(include/build-steps.yml.m4)m4_dnl

View File

@ -29,4 +29,6 @@ m4_include(include/jobs-build.yml.m4)m4_dnl
# - flip # TODO
mapping:
- default
kconfig:
- default
m4_include(include/build-steps.yml.m4)m4_dnl

View File

@ -22,4 +22,6 @@ m4_include(include/jobs-build.yml.m4)m4_dnl
- default
mapping:
- default
kconfig:
- default
m4_include(include/build-steps.yml.m4)m4_dnl

View File

@ -66,4 +66,6 @@ m4_include(include/jobs-build.yml.m4)m4_dnl
- default
mapping:
- default
kconfig:
- default
m4_include(include/build-steps.yml.m4)m4_dnl

View File

@ -33,6 +33,8 @@ jobs:
- default
mapping:
- default
kconfig:
- default
steps:
- name: Checkout
uses: actions/checkout@v2
@ -40,7 +42,6 @@ jobs:
id: variables
run: |
if [ -n "${{ matrix.shield }}" -a "${{ matrix.shield }}" != "default" ]
then
SHIELD_ARG="-DSHIELD=${{ matrix.shield }}"
keyboard=${{ matrix.shield }}
@ -68,17 +69,34 @@ jobs:
;;
esac
done
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
echo "::set-output name=artifact-dir::artifacts"
outboard_file=".github/workflows/outboards/$keyboard"
artifacts_dir="artifacts"
echo "::set-output name=artifact-dir::$artifacts_dir"
mkdir "$artifacts_dir"
cp "$configfile" "$artifacts_dir"
if [ -n "${{ matrix.kconfig }}" -a "${{ matrix.kconfig }}" != 'default' ]
then
kconfig_file="config/$keyboard.conf"
echo "${{ matrix.kconfig }}" > "$kconfig_file"
cat "$kconfig_file"
cp "$kconfig_file" "$artifacts_dir"
artifact_build_name="$artifact_build_name kconfig_"`echo "${{ matrix.kconfig }}" | md5sum | cut -d ' ' -f 1`
fi
outboard_file=".github/workflows/outboards/$keyboard.outboard"
if [ -f "$outboard_file" ]
then
grep -v '^#' "$outboard_file" >> $GITHUB_ENV
cat "$outboard_file"
cp "$outboard_file" "$artifacts_dir"
fi
echo "::set-output name=outboard_dir::outboard"
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
- name: Checkout outboard
if: ${{ env.outboard_repository != '' && env.outboard_ref != '' }}
uses: actions/checkout@v2
@ -124,10 +142,8 @@ jobs:
run: west zephyr-export
- name: Build (west build)
run: west build -s zmk/app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }} -DZMK_CONFIG="${GITHUB_WORKSPACE}/config"
- name: Prepare artifacts
- name: Prepare firmware artifacts
run: |
mkdir ${{ steps.variables.outputs.artifact-dir }}
cp "${{ steps.variables.outputs.configfile }}" "${{ steps.variables.outputs.artifact-dir }}"
for extension in "hex" "uf2"
do
file="build/zephyr/zmk.$extension"

View File

@ -32,6 +32,8 @@ jobs:
- default
mapping:
- default
kconfig:
- default
steps:
- name: Checkout
uses: actions/checkout@v2
@ -39,7 +41,6 @@ jobs:
id: variables
run: |
if [ -n "${{ matrix.shield }}" -a "${{ matrix.shield }}" != "default" ]
then
SHIELD_ARG="-DSHIELD=${{ matrix.shield }}"
keyboard=${{ matrix.shield }}
@ -67,17 +68,34 @@ jobs:
;;
esac
done
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
echo "::set-output name=artifact-dir::artifacts"
outboard_file=".github/workflows/outboards/$keyboard"
artifacts_dir="artifacts"
echo "::set-output name=artifact-dir::$artifacts_dir"
mkdir "$artifacts_dir"
cp "$configfile" "$artifacts_dir"
if [ -n "${{ matrix.kconfig }}" -a "${{ matrix.kconfig }}" != 'default' ]
then
kconfig_file="config/$keyboard.conf"
echo "${{ matrix.kconfig }}" > "$kconfig_file"
cat "$kconfig_file"
cp "$kconfig_file" "$artifacts_dir"
artifact_build_name="$artifact_build_name kconfig_"`echo "${{ matrix.kconfig }}" | md5sum | cut -d ' ' -f 1`
fi
outboard_file=".github/workflows/outboards/$keyboard.outboard"
if [ -f "$outboard_file" ]
then
grep -v '^#' "$outboard_file" >> $GITHUB_ENV
cat "$outboard_file"
cp "$outboard_file" "$artifacts_dir"
fi
echo "::set-output name=outboard_dir::outboard"
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
- name: Checkout outboard
if: ${{ env.outboard_repository != '' && env.outboard_ref != '' }}
uses: actions/checkout@v2
@ -123,10 +141,8 @@ jobs:
run: west zephyr-export
- name: Build (west build)
run: west build -s zmk/app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }} -DZMK_CONFIG="${GITHUB_WORKSPACE}/config"
- name: Prepare artifacts
- name: Prepare firmware artifacts
run: |
mkdir ${{ steps.variables.outputs.artifact-dir }}
cp "${{ steps.variables.outputs.configfile }}" "${{ steps.variables.outputs.artifact-dir }}"
for extension in "hex" "uf2"
do
file="build/zephyr/zmk.$extension"

View File

@ -39,6 +39,8 @@ jobs:
# - flip # TODO
mapping:
- default
kconfig:
- default
steps:
- name: Checkout
uses: actions/checkout@v2
@ -46,7 +48,6 @@ jobs:
id: variables
run: |
if [ -n "${{ matrix.shield }}" -a "${{ matrix.shield }}" != "default" ]
then
SHIELD_ARG="-DSHIELD=${{ matrix.shield }}"
keyboard=${{ matrix.shield }}
@ -74,17 +75,34 @@ jobs:
;;
esac
done
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
echo "::set-output name=artifact-dir::artifacts"
outboard_file=".github/workflows/outboards/$keyboard"
artifacts_dir="artifacts"
echo "::set-output name=artifact-dir::$artifacts_dir"
mkdir "$artifacts_dir"
cp "$configfile" "$artifacts_dir"
if [ -n "${{ matrix.kconfig }}" -a "${{ matrix.kconfig }}" != 'default' ]
then
kconfig_file="config/$keyboard.conf"
echo "${{ matrix.kconfig }}" > "$kconfig_file"
cat "$kconfig_file"
cp "$kconfig_file" "$artifacts_dir"
artifact_build_name="$artifact_build_name kconfig_"`echo "${{ matrix.kconfig }}" | md5sum | cut -d ' ' -f 1`
fi
outboard_file=".github/workflows/outboards/$keyboard.outboard"
if [ -f "$outboard_file" ]
then
grep -v '^#' "$outboard_file" >> $GITHUB_ENV
cat "$outboard_file"
cp "$outboard_file" "$artifacts_dir"
fi
echo "::set-output name=outboard_dir::outboard"
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
- name: Checkout outboard
if: ${{ env.outboard_repository != '' && env.outboard_ref != '' }}
uses: actions/checkout@v2
@ -130,10 +148,8 @@ jobs:
run: west zephyr-export
- name: Build (west build)
run: west build -s zmk/app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }} -DZMK_CONFIG="${GITHUB_WORKSPACE}/config"
- name: Prepare artifacts
- name: Prepare firmware artifacts
run: |
mkdir ${{ steps.variables.outputs.artifact-dir }}
cp "${{ steps.variables.outputs.configfile }}" "${{ steps.variables.outputs.artifact-dir }}"
for extension in "hex" "uf2"
do
file="build/zephyr/zmk.$extension"

View File

@ -32,6 +32,8 @@ jobs:
- default
mapping:
- default
kconfig:
- default
steps:
- name: Checkout
uses: actions/checkout@v2
@ -39,7 +41,6 @@ jobs:
id: variables
run: |
if [ -n "${{ matrix.shield }}" -a "${{ matrix.shield }}" != "default" ]
then
SHIELD_ARG="-DSHIELD=${{ matrix.shield }}"
keyboard=${{ matrix.shield }}
@ -67,17 +68,34 @@ jobs:
;;
esac
done
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
echo "::set-output name=artifact-dir::artifacts"
outboard_file=".github/workflows/outboards/$keyboard"
artifacts_dir="artifacts"
echo "::set-output name=artifact-dir::$artifacts_dir"
mkdir "$artifacts_dir"
cp "$configfile" "$artifacts_dir"
if [ -n "${{ matrix.kconfig }}" -a "${{ matrix.kconfig }}" != 'default' ]
then
kconfig_file="config/$keyboard.conf"
echo "${{ matrix.kconfig }}" > "$kconfig_file"
cat "$kconfig_file"
cp "$kconfig_file" "$artifacts_dir"
artifact_build_name="$artifact_build_name kconfig_"`echo "${{ matrix.kconfig }}" | md5sum | cut -d ' ' -f 1`
fi
outboard_file=".github/workflows/outboards/$keyboard.outboard"
if [ -f "$outboard_file" ]
then
grep -v '^#' "$outboard_file" >> $GITHUB_ENV
cat "$outboard_file"
cp "$outboard_file" "$artifacts_dir"
fi
echo "::set-output name=outboard_dir::outboard"
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
- name: Checkout outboard
if: ${{ env.outboard_repository != '' && env.outboard_ref != '' }}
uses: actions/checkout@v2
@ -123,10 +141,8 @@ jobs:
run: west zephyr-export
- name: Build (west build)
run: west build -s zmk/app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }} -DZMK_CONFIG="${GITHUB_WORKSPACE}/config"
- name: Prepare artifacts
- name: Prepare firmware artifacts
run: |
mkdir ${{ steps.variables.outputs.artifact-dir }}
cp "${{ steps.variables.outputs.configfile }}" "${{ steps.variables.outputs.artifact-dir }}"
for extension in "hex" "uf2"
do
file="build/zephyr/zmk.$extension"

View File

@ -76,6 +76,8 @@ jobs:
- default
mapping:
- default
kconfig:
- default
steps:
- name: Checkout
uses: actions/checkout@v2
@ -83,7 +85,6 @@ jobs:
id: variables
run: |
if [ -n "${{ matrix.shield }}" -a "${{ matrix.shield }}" != "default" ]
then
SHIELD_ARG="-DSHIELD=${{ matrix.shield }}"
keyboard=${{ matrix.shield }}
@ -111,17 +112,34 @@ jobs:
;;
esac
done
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
echo "::set-output name=artifact-dir::artifacts"
outboard_file=".github/workflows/outboards/$keyboard"
artifacts_dir="artifacts"
echo "::set-output name=artifact-dir::$artifacts_dir"
mkdir "$artifacts_dir"
cp "$configfile" "$artifacts_dir"
if [ -n "${{ matrix.kconfig }}" -a "${{ matrix.kconfig }}" != 'default' ]
then
kconfig_file="config/$keyboard.conf"
echo "${{ matrix.kconfig }}" > "$kconfig_file"
cat "$kconfig_file"
cp "$kconfig_file" "$artifacts_dir"
artifact_build_name="$artifact_build_name kconfig_"`echo "${{ matrix.kconfig }}" | md5sum | cut -d ' ' -f 1`
fi
outboard_file=".github/workflows/outboards/$keyboard.outboard"
if [ -f "$outboard_file" ]
then
grep -v '^#' "$outboard_file" >> $GITHUB_ENV
cat "$outboard_file"
cp "$outboard_file" "$artifacts_dir"
fi
echo "::set-output name=outboard_dir::outboard"
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
echo "::set-output name=artifact-build-name::$artifact_build_name"
echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'`
- name: Checkout outboard
if: ${{ env.outboard_repository != '' && env.outboard_ref != '' }}
uses: actions/checkout@v2
@ -167,10 +185,8 @@ jobs:
run: west zephyr-export
- name: Build (west build)
run: west build -s zmk/app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }} -DZMK_CONFIG="${GITHUB_WORKSPACE}/config"
- name: Prepare artifacts
- name: Prepare firmware artifacts
run: |
mkdir ${{ steps.variables.outputs.artifact-dir }}
cp "${{ steps.variables.outputs.configfile }}" "${{ steps.variables.outputs.artifact-dir }}"
for extension in "hex" "uf2"
do
file="build/zephyr/zmk.$extension"

View File

@ -5,7 +5,7 @@
[[https://raw.githubusercontent.com/manna-harbour/miryoku/master/data/cover/miryoku-kle-cover.png]]
[[https://github.com/manna-harbour/miryoku/][Miryoku]] is an ergonomic, minimal, orthogonal, and universal keyboard layout. This is the miryoku implementation for [[https://zmkfirmware.dev/][ZMK]].
[[https://github.com/manna-harbour/miryoku/][Miryoku]] is an ergonomic, minimal, orthogonal, and universal keyboard layout. This is the Miryoku implementation for [[https://zmkfirmware.dev/][ZMK]].
* Contents :TOC_1:
- [[#building][Building]]
@ -49,15 +49,19 @@ Clone this repo and use for [[https://zmk.dev/docs/development/build-flash#build
Workflow files are in [[.github/workflows]]. To access a workflow, log in to GitHub, visit the [[https://github.com/manna-harbour/zmk-config/actions][Actions]] tab, and select the workflow. To download the firmware from a workflow run, select the workflow, select the workflow run, select the desired Artifacts, and unzip the downloaded zip file.
[[#Supported-Keyboards][Supported keyboards]] and [[#configuration-options][configuration options]] can be used as values for the corresponding [[#build-examples][matrix]] or [[#build-inputs][inputs]] options.
*** Build Inputs
Fork this repo, select the [[https://github.com/manna-harbour/zmk-config/actions/workflows/build-inputs.yml][Build Inputs]] workflow, select Run workflow, fill out the form with [[#Supported-Keyboards][supported keyboards]] and [[#configuration-options][configuration options]], activate Run workflow, wait for successful completion. Multiple (comma and / or space separated) values can be entered in each field.
The ~kconfig~ option can be used to generate a ~keyboard.conf~. Join multiple lines with ~\n~.
*** Build Examples
Fork this repo, copy one the included Build Example workflow files, edit the ~name~ value, and edit the values for the desired [[#Supported-Keyboards][supported keyboards]] and [[#configuration-options][configuration options]].
Fork this repo, copy one of the included Build Example workflow files, edit the ~name~ value, and edit the values for each matrix option as desired.
*** Build Inputs
Fork this repo, select the [[https://github.com/manna-harbour/zmk-config/actions/workflows/build-inputs.yml][Build Inputs]] workflow, select Run workflow, and fill out the form as desired. Multiple (comma and / or space separated) values can be entered in each field. Activate Run workflow, and wait for successful completion.
*** Prebuilt Firmware
@ -67,7 +71,7 @@ Some prebuilt firmware is available from previous workflow runs.
* Miryoku Keymap
The miryoku keymap is a ZMK DT keymap file using C preprocessor macros for [[#configuration-options][configuration options]] and to abstract the physical layout. The file is [[miryoku/miryoku.dtsi]]. The file is included into the [[#keyboard-keymaps][keyboard's keymap]] with
The Miryoku keymap is a ZMK DT keymap file using C preprocessor macros for [[#configuration-options][configuration options]] and to abstract the physical layout. The file is [[miryoku/miryoku.dtsi]]. The file is included into the [[#keyboard-keymaps][keyboard's keymap]] with
#+BEGIN_SRC C :tangle no
#include "../miryoku/miryoku.dtsi"
@ -114,7 +118,7 @@ Below is an example [[#config-file][config file]] with the following keymap [[#c
* Mapping
The keymap is mapped onto keyboards with different physical layouts. The keymap is specified in terms of the ~MIRYOKU_MAPPING~ macro. The macro is defined in a C header file for each physical layout. Unused keys are mapped to ~&none~. The files are in [[miryoku/mapping/]]. The mapping file is included into the keyboard's keymap file before the miryoku keymap with e.g.
The keymap is mapped onto keyboards with different physical layouts. The keymap is specified in terms of the ~MIRYOKU_MAPPING~ macro. The macro is defined in a C header file for each physical layout. Unused keys are mapped to ~&none~. The files are in [[miryoku/mapping/]]. The mapping file is included into the keyboard's keymap file before the Miryoku keymap with e.g.
#+BEGIN_SRC C :tangle no
#include "../miryoku/mapping/36-minidox.h"