Files
NeoTachyon/.github/workflows/shellcheck.yml
T
Dushnilin d097494b23 test(infra): shellcheck не-.sh скриптов, фикс BOM, регрессионный тест RAG
- workflow shellcheck теперь покрывает агентский CGI, hotplug WAN-монитор и
  точки входа usr/bin; в CGI перед shebang стоял UTF-8 BOM, из-за которого
  Linux вообще не мог исполнить скрипт (bad interpreter) - удалён вместе со
  случайными BOM в исходниках фронтенда
- новый rag_embeddings.sh фиксирует исправленный порядок аргументов push(),
  инвалидацию кэша по отпечатку индекса, нормализацию null model_override и
  порядок объявлений - ни один из починенных багов RAG не сможет вернуться
  незаметно
- hosts_li
2026-08-21 20:58:51 +03:00

65 lines
1.7 KiB
YAML

name: Differential ShellCheck
on:
workflow_dispatch:
push:
branches:
- main
- 'rc/**'
paths:
- 'build.sh'
- 'install.sh'
- 'tachyon/files/etc/init.d/**'
- 'tachyon/files/usr/bin/**'
- 'tachyon/files/usr/lib/cgi-bin/**'
- 'tachyon/files/etc/hotplug.d/iface/**'
- 'luci-app-tachyon/root/etc/uci-defaults/**'
- 'tests/**/*.sh'
- '.github/workflows/shellcheck.yml'
pull_request:
branches:
- main
- 'rc/**'
paths:
- 'build.sh'
- 'install.sh'
- 'tachyon/files/etc/init.d/**'
- 'tachyon/files/usr/bin/**'
- 'tachyon/files/usr/lib/cgi-bin/**'
- 'tachyon/files/etc/hotplug.d/iface/**'
- 'luci-app-tachyon/root/etc/uci-defaults/**'
- 'tests/**/*.sh'
- '.github/workflows/shellcheck.yml'
permissions:
contents: read
jobs:
shellcheck:
name: Differential ShellCheck
runs-on: ubuntu-24.04
steps:
- name: Checkout code
uses: actions/checkout@v5.0.0
- name: Install ShellCheck
run: |
sudo apt-get update
sudo apt-get install -y shellcheck
- name: ShellCheck
shell: bash
run: |
mapfile -d '' scripts < <(
find . -type f \
\( -name '*.sh' -o -path './build.sh' -o -path './install.sh' \
-o -path './tachyon/files/etc/init.d/*' \
-o -path './tachyon/files/usr/bin/*' \
-o -path './tachyon/files/usr/lib/cgi-bin/*' \
-o -path './tachyon/files/etc/hotplug.d/iface/*' \
-o -path './luci-app-tachyon/root/etc/uci-defaults/*' \) \
-print0
)
shellcheck --severity=error "${scripts[@]}"