Skip to content

fix(ci): explicit OWASP data.directory + disable irrelevant analyzers#3

Closed
ahincho wants to merge 1 commit into
mainfrom
fix/owasp-data-directory-analyzers
Closed

fix(ci): explicit OWASP data.directory + disable irrelevant analyzers#3
ahincho wants to merge 1 commit into
mainfrom
fix/owasp-data-directory-analyzers

Conversation

@ahincho

@ahincho ahincho commented Jul 13, 2026

Copy link
Copy Markdown
Owner

Qu\u00e9

Aplica la investigaci\u00f3n de performance de OWASP documentada en docs/java/06-semantic-versioning-en-java.md a este repo:

  1. data.directory expl\u00edcito apuntando a ~/.dependency-check-data, la ruta que ahora cachea/restaura reusable-owasp-check.yml (incluyendo el mirror NVD centralizado de nova-devops). El default impl\u00edcito del plugin nunca fue verificado/documentado.
  2. Analizadores irrelevantes deshabilitados (assembly/.NET, golang, swift, cocoapods, composer/PHP, cpan/Perl, cmake/autoconf, bundleAudit/rubygems, python, dart, retirejs) - cero p\u00e9rdida de detecci\u00f3n ya que ninguno de esos tipos de archivo existe en este repo. Node/nodeAudit se mantienen activos (package.json real con commitlint/lefthook).
  3. Nombres de propiedad verificados contra el jar del plugin 12.2.2 instalado localmente (javap), no asumidos de la documentaci\u00f3n.

Por qu\u00e9

OWASP estaba tomando 30-50+ min por PR. Causa ra\u00edz: el cache de GitHub Actions est\u00e1 scoped por rama/PR y nunca se compart\u00eda entre ramas nuevas, forzando un sync completo (~365k registros NVD) en cada PR. Fix completo (cache + mirror centralizado) vive en reusable-owasp-check.yml (nova-devops).

Validaci\u00f3n

  • Compila localmente (gradlew help) - verificado.
  • Sin cambios funcionales, solo configuraci\u00f3n de CI/OWASP.

- data.directory now points at the shared, build-tool-agnostic path
  (~/.dependency-check-data) that reusable-owasp-check.yml caches and
  restores the centralized nova-devops NVD mirror into. The plugin's
  implicit default was never verified/documented; previous cache sizes
  (15-57MB) strongly suggest it did not match what was being cached.
- Disabled analyzers for ecosystems that plainly do not exist in this
  repo (assembly/nuspec/nugetconf/msbuild/.NET, golang, swift, cocoapods,
  composer/PHP, cpan/Perl, cmake/autoconf, bundleAudit/rubygems, python,
  dart, retirejs) - zero detection-feature cost since none of these file
  types are present. Node/nodeAudit analyzers are NOT disabled (package.json
  is real - commitlint/lefthook devDependencies).
- Verified property names against the actually-installed 12.2.2 Gradle
  plugin jar (javap on AnalyzerExtension.class) rather than assumed from
  docs - e.g. carthageAnalyzerEnabled does not exist in this version.

See docs/java/06-semantic-versioning-en-java.md for the investigation
into why OWASP scans were taking 30-50+ min.
@ahincho

ahincho commented Jul 13, 2026

Copy link
Copy Markdown
Owner Author

Superseded by PR#4 which applies the full pattern (CVE fix + scanConfigurations + override consumer). PR#3 was the initial data.directory + analyzers block only.

@ahincho ahincho closed this Jul 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant