feat: add chart filter input to cve-edge-post workflow

Allow scanning a single catalog (manifests/helm/<chart>/) via the
workflow_dispatch chart input, filtering images_final.tsv by chart
name before the limit is applied. Empty value scans the full catalog
as before.
This commit is contained in:
ychangkim
2026-07-21 10:20:13 +09:00
parent a1e726b755
commit 8b370be748
+2 -8
View File
@@ -1,18 +1,10 @@
name: helm-catalog-cve-edge-post
# manifests/helm 카탈로그의 컨테이너 이미지 취약점을 스캔해 단일 JSON 요약으로 출력한다.
# SBOM 산출물 자체는 필요 없으므로(sbom.yml 과 달리), extract-helm-images.sh 로 이미지
# 목록만 뽑은 뒤 각 이미지를 `trivy image` 로 직접 스캔한다(SBOM 생성 단계 생략).
#
# [{"image": "...", "low": 0, "high": 0, "medium": 0, "critical": 0,
# "scanned_at": "2026-07-13T06:19:44Z", "summary": "CVE-xxxx-xxxxx, ..."}, ...]
#
# 이미지별로 배열 원소 하나. summary 는 해당 이미지에서 발견된 CRITICAL CVE ID 전체를
# 콤마로 나열한다(중복 제거).
# 생성된 JSON 은 POST https://edge.gke.paasup.io/api/v1/cve-scans 로 전송한다.
# (X-CVE-API-Key 헤더 필요 — Repo Secret CVE_API_KEY, SSL 검증은 --insecure 로 스킵)
#
# 실행 컨테이너: sbom.yml 과 동일하게 vars.SBOM_PIPELINE_IMAGE (helm+trivy+python3+bash+git) 사용.
on:
workflow_dispatch:
@@ -21,6 +13,8 @@ on:
description: '대상 이미지 수 상한 (0=전체). 테스트 시 예: 3'
required: false
default: '0'
schedule:
- cron: '0 18 * * 6'
permissions:
contents: read