fix(ci): Handle luci.mk auto-generated PKG_NAME
- luci.mk auto-sets PKG_NAME from directory name - Skip PKG_NAME check for packages using luci.mk - PKG_VERSION/PKG_RELEASE are recommended for luci.mk packages - PKG_LICENSE remains recommended for all packages Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
49a6090dcf
commit
1edb8c880c
43
.github/workflows/test-validate.yml
vendored
43
.github/workflows/test-validate.yml
vendored
@ -35,32 +35,39 @@ jobs:
|
|||||||
PKG=$(dirname "$makefile")
|
PKG=$(dirname "$makefile")
|
||||||
echo " 🔍 Checking $PKG..."
|
echo " 🔍 Checking $PKG..."
|
||||||
|
|
||||||
# Required fields (must have)
|
# Check if using luci.mk (auto-sets PKG_NAME from directory)
|
||||||
REQUIRED_FIELDS=(
|
USES_LUCI_MK=false
|
||||||
"PKG_NAME"
|
if grep -q "include.*luci.mk" "$makefile"; then
|
||||||
"PKG_VERSION"
|
USES_LUCI_MK=true
|
||||||
"PKG_RELEASE"
|
fi
|
||||||
)
|
|
||||||
|
|
||||||
# Recommended fields (warn if missing)
|
# Required fields for non-luci.mk packages
|
||||||
RECOMMENDED_FIELDS=(
|
if [[ "$USES_LUCI_MK" == "false" ]]; then
|
||||||
"PKG_LICENSE"
|
if ! grep -q "^PKG_NAME:=" "$makefile"; then
|
||||||
)
|
echo " ❌ Missing required: PKG_NAME"
|
||||||
|
|
||||||
for field in "${REQUIRED_FIELDS[@]}"; do
|
|
||||||
if ! grep -q "^${field}:=" "$makefile"; then
|
|
||||||
echo " ❌ Missing required: $field"
|
|
||||||
ERRORS=$((ERRORS + 1))
|
ERRORS=$((ERRORS + 1))
|
||||||
fi
|
fi
|
||||||
done
|
fi
|
||||||
|
|
||||||
for field in "${RECOMMENDED_FIELDS[@]}"; do
|
# PKG_VERSION and PKG_RELEASE are recommended for luci.mk
|
||||||
|
for field in PKG_VERSION PKG_RELEASE; do
|
||||||
if ! grep -q "^${field}:=" "$makefile"; then
|
if ! grep -q "^${field}:=" "$makefile"; then
|
||||||
echo " ⚠️ Missing recommended: $field"
|
if [[ "$USES_LUCI_MK" == "true" ]]; then
|
||||||
WARNINGS=$((WARNINGS + 1))
|
echo " ⚠️ Missing recommended: $field"
|
||||||
|
WARNINGS=$((WARNINGS + 1))
|
||||||
|
else
|
||||||
|
echo " ❌ Missing required: $field"
|
||||||
|
ERRORS=$((ERRORS + 1))
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
|
# PKG_LICENSE is always recommended
|
||||||
|
if ! grep -q "^PKG_LICENSE:=" "$makefile"; then
|
||||||
|
echo " ⚠️ Missing recommended: PKG_LICENSE"
|
||||||
|
WARNINGS=$((WARNINGS + 1))
|
||||||
|
fi
|
||||||
|
|
||||||
# Check for include statements
|
# Check for include statements
|
||||||
if ! grep -q "include.*luci.mk\|include.*package.mk" "$makefile"; then
|
if ! grep -q "include.*luci.mk\|include.*package.mk" "$makefile"; then
|
||||||
echo " ❌ Missing include statement (luci.mk or package.mk)"
|
echo " ❌ Missing include statement (luci.mk or package.mk)"
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user