DS analyzer: Java Gradle support - build file scanning: build.gradle build.gradle.kts
## Description
This implementation issue covers adding Gradle build file (`build.gradle`, `build.gradle.kts`) scanning capabilities to the Dependency Scanning (DS) analyzer. This build file scanning will serve as a fallback mechanism when lock/graph files are not available.
## Scope
**Objective:** Implement build file scanning functionality for Gradle `build.gradle` and `build.gradle.kts` files.
**Key Components:**
* Add Gradle build file detection and parsing logic for both Groovy (`build.gradle`) and Kotlin DSL (`build.gradle.kts`) formats
* Implement dependency extraction from Gradle build files
* Integrate with existing DS analyzer workflow as a fallback option
* Ensure compatibility with the current dependency scanning pipeline
## Acceptance Criteria:
* DS analyzer successfully detects and processes `build.gradle` and `build.gradle.kts` files
* Direct dependencies are correctly extracted and reported from both Groovy and Kotlin DSL formats
## Related Issues
* Spike: https://gitlab.com/gitlab-org/gitlab/-/work_items/584568
### Release notes
description: [GitLab dependency scanning by using SBOM](https://docs.gitlab.com/user/application_security/dependency_scanning/dependency_scanning_sbom/) now supports scanning Java `build.gradle` and `build.gradle.kts` build files. Previously, dependency scanning for Java projects using Gradle required a lock file to be present. Now, when a lock file is not available, the analyzer automatically falls back to scanning `build.gradle` and `build.gradle.kts` files, extracting and reporting only direct dependencies for vulnerability analysis. This improvement makes it easier for Java projects using Gradle to enable dependency scanning without requiring a lock file.
To enable manifest fallback, set the DS_ENABLE_MANIFEST_FALLBACK CI/CD variable to "true".
documentation_link: https://docs.gitlab.com/user/application_security/dependency_scanning/dependency_scanning_sbom/#manifest-fallback
issue