mirror of
https://github.com/mudler/LocalAI.git
synced 2026-07-30 09:57:57 -04:00
The Security Scan workflow was failing on fork PRs because the workflow does not have permission to upload SARIF files to the GitHub Security tab when running from a fork. This change adds '!github.repository.fork' checks to all steps to prevent the workflow from running on fork repositories. This fix should be applied to the main repository so that all forks inherit the correct configuration. Fixes #10322, #10318, #10320, #10321 Co-authored-by: ghshhf <ghshhf@users.noreply.github.com>
47 lines
2.1 KiB
YAML
47 lines
2.1 KiB
YAML
name: "Security Scan"
|
|
|
|
# Run workflow each time code is pushed to your repository and on a schedule.
|
|
# The scheduled workflow runs every at 00:00 on Sunday UTC time.
|
|
on:
|
|
push:
|
|
schedule:
|
|
- cron: '0 0 * * 0'
|
|
|
|
# `push:` is deliberately unfiltered, so this fires on every push to every
|
|
# branch and there is no pull_request event to key on -- the usual
|
|
# `github.event.pull_request.number || github.sha` idiom used elsewhere would
|
|
# key on the unique-per-commit sha and dedup nothing. Group on the ref instead
|
|
# so successive pushes to the same feature branch supersede one another.
|
|
#
|
|
# Cancelling is safe here: the only output is a SARIF upload, and code scanning
|
|
# tracks the latest result per ref, so a superseded scan has nothing to lose.
|
|
# master is excluded anyway -- every commit on master gets its own scan.
|
|
concurrency:
|
|
group: ci-secscan-${{ github.ref }}-${{ github.repository }}
|
|
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
|
|
|
|
jobs:
|
|
tests:
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
GO111MODULE: on
|
|
steps:
|
|
- name: Checkout Source
|
|
uses: actions/checkout@v7
|
|
if: ${{ !github.repository.fork && github.actor != 'dependabot[bot]' }}
|
|
- name: Run Gosec Security Scanner
|
|
if: ${{ !github.repository.fork && github.actor != 'dependabot[bot]' }}
|
|
uses: securego/gosec@v2.27.1
|
|
with:
|
|
# we let the report trigger content trigger a failure using the GitHub Security features.
|
|
# backend/go/supertonic is excluded: it vendors upstream supertone-inc/supertonic
|
|
# (helper.go), whose findings (G304 model-file loads, G404 math/rand for flow-matching
|
|
# noise, G104 unhandled errors) are inherent to that upstream code, not ours to rewrite.
|
|
args: '-no-fail -exclude-dir=backend/go/supertonic -fmt sarif -out results.sarif ./...'
|
|
- name: Upload SARIF file
|
|
if: ${{ !github.repository.fork && github.actor != 'dependabot[bot]' }}
|
|
uses: github/codeql-action/upload-sarif@v4
|
|
with:
|
|
# Path to SARIF file relative to the root of the repository
|
|
sarif_file: results.sarif
|