diff --git a/.gitea/workflows/smoke.yml b/.gitea/workflows/smoke.yml new file mode 100644 index 00000000..89c53517 --- /dev/null +++ b/.gitea/workflows/smoke.yml @@ -0,0 +1,24 @@ +name: Smoke Test +on: + pull_request: + push: + branches: [main] +jobs: + smoke: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: '3.11' + - name: Parse check + run: | + find . -name '*.yml' -o -name '*.yaml' | grep -v .gitea | xargs -r python3 -c "import sys,yaml; [yaml.safe_load(open(f)) for f in sys.argv[1:]]" + find . -name '*.json' | xargs -r python3 -m json.tool > /dev/null + find . -name '*.py' | xargs -r python3 -m py_compile + find . -name '*.sh' | xargs -r bash -n + echo "PASS: All files parse" + - name: Secret scan + run: | + if grep -rE 'sk-or-|sk-ant-|ghp_|AKIA' . --include='*.yml' --include='*.py' --include='*.sh' 2>/dev/null | grep -v .gitea; then exit 1; fi + echo "PASS: No secrets"