Files
home-assistant-addons/.github/workflows/ci.yaml

43 lines
1.4 KiB
YAML

name: CI
on:
push:
branches:
- main
pull_request:
jobs:
validate:
runs-on: ubuntu-latest
name: Validate Addon Config
steps:
- uses: actions/checkout@v4
- name: Install yq
run: |
sudo wget -qO /usr/local/bin/yq https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64
sudo chmod +x /usr/local/bin/yq
- name: Validate hamh config
run: |
echo "Validating hamh/config.yaml..."
yq eval '.' hamh/config.yaml > /dev/null
echo " hamh config is valid YAML"
- name: Validate repository.yaml
run: |
echo "Validating repository.yaml..."
yq eval '.' repository.yaml > /dev/null
echo " repository.yaml is valid YAML"
- name: Check required fields
run: |
for addon in hamh; do
echo "Checking $addon required fields..."
yq eval '.name' $addon/config.yaml > /dev/null || (echo "Missing name in $addon" && exit 1)
yq eval '.version' $addon/config.yaml > /dev/null || (echo "Missing version in $addon" && exit 1)
yq eval '.slug' $addon/config.yaml > /dev/null || (echo "Missing slug in $addon" && exit 1)
yq eval '.arch' $addon/config.yaml > /dev/null || (echo "Missing arch in $addon" && exit 1)
echo " $addon has all required fields"
done