Skip to content

[ACTIONS] DRY artifacts upload #270

[ACTIONS] DRY artifacts upload

[ACTIONS] DRY artifacts upload #270

Workflow file for this run

name: CI Build
on:
push:
pull_request:
workflow_call:
inputs:
submodule:
required: true
type: string
jobs:
build:
name: kernel for MiyooCFW (uClibc)
runs-on: ubuntu-22.04
container:
image: miyoocfw/toolchain-shared-uclibc:master
steps:
- uses: actions/checkout@v3
- if: inputs.submodule
run: git submodule update --init --depth 1 -- ${{ inputs.submodule }}
- name: Generate cache key
if: inputs.submodule
id: cache-key
run: |
cd ${{ inputs.submodule }}
echo "key=${{ inputs.submodule }}-$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
- uses: actions/cache@v3
if: inputs.submodule
with:
path: ${{ inputs.submodule || '.' }}/dist/*
key: ${{ steps.cache-key.outputs.key }}
id: cache
# ARCH=arm and CROSS_COMPILE=arm-buildroot-linux-musleabi- env props are set in the docker image
- name: build
if: steps.cache.outputs.cache-hit != 'true'
run: |
cd ${{ inputs.submodule || '.' }}
make miyoo_defconfig
make
# put everything in the same folder so that we can grab it all as a single artifact
- name: gather files
if: steps.cache.outputs.cache-hit != 'true'
run: |
cd ${{ inputs.submodule || '.' }}
mkdir dist
mv arch/arm/boot/dts/*.dtb dist/
mv arch/arm/boot/zImage dist/
mv drivers/video/fbdev/core/*.ko dist/
mv drivers/video/fbdev/*.ko dist/
mv drivers/usb/gadget/legacy/*.ko dist/
mv sound/drivers/*.ko dist/
- run: find ${{ inputs.submodule || '.' }}/dist
- uses: actions/upload-artifact@v3
with:
name: kernel (uClibc)
path: ${{ inputs.submodule || '.' }}/dist/*
if-no-files-found: error # 'error', 'warn', 'ignore'; defaults to `warn`