File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -84,6 +84,15 @@ docker run -it -p 18000:18000 ghcr.io/maxluxs/flagent:latest
84842 . Нажмите ** New repository secret**
85853 . Добавьте необходимые секреты (например, API ключи для интеграций)
8686
87+ ### NVD_API_KEY (для Security Scan — Dependency Check)
88+
89+ Для стабильной работы шага ** Dependency Vulnerability Scan** в workflow ` security-scan.yml ` добавьте секрет ** NVD_API_KEY** :
90+
91+ - ** Name:** ` NVD_API_KEY `
92+ - ** Value:** бесплатный API-ключ с [ NVD — Request an API Key] ( https://nvd.nist.gov/developers/request-an-api-key )
93+
94+ Без ключа запросы к NVD часто получают 403/rate limit, сканирование долго ретраится и может падать. С ключом обновление базы CVE быстрее и стабильнее.
95+
8796## Структура workflows
8897
8998- ** ` .github/workflows/ci.yml ` ** - Основной CI: тесты, сборка, покрытие кода
Original file line number Diff line number Diff line change 6868
6969 - name : Start Flagent Server
7070 env :
71+ PORT : 8000
7172 FLAGENT_DB_DBDRIVER : postgresql
7273 FLAGENT_DB_DBCONNECTIONSTR : postgresql://flagent:flagent@localhost:5432/flagent
7374 run : |
Original file line number Diff line number Diff line change 3030 - name : Gradle Dependency Check
3131 env :
3232 NVD_API_KEY : ${{ secrets.NVD_API_KEY }}
33- run : ./gradlew :backend:dependencyCheckAnalyze
33+ run : ./gradlew :backend:dependencyCheckAnalyze -PdependencyCheck.dataDirectory=$RUNNER_TEMP/dependency-check-data
3434
3535 - name : Upload Dependency Check Results
3636 if : always()
@@ -47,13 +47,25 @@ jobs:
4747 with :
4848 fetch-depth : 0
4949
50- # On push use event.before so BASE != HEAD; on PR use PR base/head
50+ - name : Resolve base SHA
51+ id : resolve_base
52+ run : |
53+ if [ -n "${{ github.event.pull_request.base.sha }}" ]; then
54+ echo "base=${{ github.event.pull_request.base.sha }}" >> "$GITHUB_OUTPUT"
55+ elif [ -n "${{ github.event.before }}" ] && [ "${{ github.event.before }}" != "0000000000000000000000000000000000000000" ]; then
56+ echo "base=${{ github.event.before }}" >> "$GITHUB_OUTPUT"
57+ else
58+ BASE=$(git rev-parse HEAD^ 2>/dev/null || true)
59+ echo "base=${BASE:-${{ github.sha }}}" >> "$GITHUB_OUTPUT"
60+ fi
61+
5162 - name : TruffleHog Scan
63+ if : steps.resolve_base.outputs.base != github.sha
5264 uses : trufflesecurity/trufflehog@main
5365 with :
5466 path : ./
55- base : ${{ github.event.pull_request .base.sha || github.event.before || github.event.repository.default_branch }}
56- head : ${{ github.event.pull_request.head.sha || github. sha }}
67+ base : ${{ steps.resolve_base.outputs .base }}
68+ head : ${{ github.sha }}
5769
5870 container-scan :
5971 name : Container Image Scan
Original file line number Diff line number Diff line change @@ -14,6 +14,9 @@ dependencyCheck {
1414 failBuildOnCVSS = 11f // Don't fail on CVSS, only report
1515 failOnError = false // Don't fail when NVD is unreachable (403, etc.)
1616 formats = listOf (" HTML" , " JSON" )
17+ val dataDir = project.findProperty(" dependencyCheck.dataDirectory" )?.toString()
18+ ? : " ${System .getenv(" RUNNER_TEMP" ) ? : layout.buildDirectory.get().asFile} /dependency-check-data"
19+ data.directory.set(dataDir)
1720}
1821
1922java {
@@ -66,6 +69,8 @@ dependencies {
6669
6770 // Messaging
6871 implementation(libs.bundles.messaging)
72+ // Override transitive lz4-java (kafka-clients pulls org.lz4:1.8.0); root build substitutes with at.yawk.lz4 fork
73+ implementation(libs.lz4.java)
6974
7075 // JWT (JJWT)
7176 implementation(libs.jjwt.api)
You can’t perform that action at this time.
0 commit comments