47 lines
1.3 KiB
YAML
47 lines
1.3 KiB
YAML
name: Kernel Watch
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
schedule:
|
|
- cron: '0 12 * * *' # Every day
|
|
|
|
jobs:
|
|
check:
|
|
name: Check for new Release
|
|
runs-on: [ubuntu-latest]
|
|
strategy:
|
|
matrix:
|
|
branch: ['v5.10.x', 'v5.14.x']
|
|
steps:
|
|
- name: Checkout Sources
|
|
uses: actions/checkout@v2
|
|
with:
|
|
ref: ${{ matrix.branch }}
|
|
submodules: recursive
|
|
- name: Setup System Dependencies
|
|
run: sudo apt install jq curl
|
|
- name: Check for Release
|
|
id: check
|
|
run: |
|
|
NEW=$(scripts/check.sh ${{ matrix.branch }})
|
|
if [[ -z $NEW ]]; then
|
|
echo "No new release found"
|
|
exit 0
|
|
fi
|
|
echo "Found new Linux kernel version $NEW"
|
|
STAGING=$(git ls-remote --heads origin "staging/v$NEW*")
|
|
if [[ $STAGING ]]; then
|
|
echo "Existing staging update found"
|
|
exit 0
|
|
fi
|
|
echo "No staging update found: triggering update"
|
|
echo "::set-output name=version::$NEW"
|
|
- name: Trigger Update
|
|
if: ${{ steps.check.outputs.version }}
|
|
uses: benc-uk/workflow-dispatch@v1
|
|
with:
|
|
workflow: Kernel Update
|
|
token: ${{ secrets.PAT }} # Custom token needed to recursively trigger workflows
|
|
inputs: '{ "tag": "v${{ steps.check.outputs.version }}" }'
|
|
ref: ${{ matrix.branch }}
|
|
|