Merge pull request #68 from valitydev/sec-24

add scan
This commit is contained in:
Ilya 2024-06-13 16:48:43 +03:00 committed by GitHub
commit 73fa9f0e91
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 44 additions and 0 deletions

32
.github/workflows/semgrep-scan.yml vendored Normal file
View File

@ -0,0 +1,32 @@
name: Run Semgrep
on:
workflow_call:
jobs:
semgrep:
runs-on: ubuntu-latest
container:
image: returntocorp/semgrep
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Run Semgrep
run: |
semgrep \
--sarif --output semgrep.sarif \
--metrics=off \
--config="p/default"
- name: Save report
uses: actions/upload-artifact@v3
with:
name: semgrep.sarif
path: semgrep.sarif
- name: Scanning alerts
uses: github/codeql-action/upload-sarif@v3.25.7
with:
sarif_file: semgrep.sarif
category: semgrep

View File

@ -7,6 +7,12 @@
- Library - собираем библиотеку и деплоим в maven central
- Swag - собираем openapi, деплоим в maven central и публикуем в github pages
Инструменты для сканирования:
- Semgrep - сканирует по дефолтным правилам и выводит отчет в формате Sarif
Для сканирования проектов - инструмент Semgrep.
Чтобы начать использовать - добавьте в директорию файл `semgrep-scan.yml`
Чтобы начать использовать java-workflow в своем репозитории - добавьте в директорию `/.github/workflows/` файлы
`build.yml` и `deploy.yml`, файлов описания workflow не обязательно должно быть два, вы можете самостоятельно описать workflow с использованием `java-workflow`.
Ниже приведен пример для `service` типа проекта. Аналогично и для других типов, изменяется только название файла и передаваемые параметры.
@ -103,3 +109,9 @@ secrets:
github-token: ${{ secrets.GITHUB_TOKEN }}
mm-webhook-url: ${{ secrets.MATTERMOST_WEBHOOK_URL }}
```
### Semgrep scan
`semgrep-scan.yml`
```yaml
uses: valitydev/java-workflow/.github/workflows/semgrep-scan.yml@sec-24
```