Skip to content

Commit db768d1

Browse files
author
Lenard Gutierrez
committed
Add security workflow
1 parent 1e4718f commit db768d1

File tree

1 file changed

+62
-0
lines changed

1 file changed

+62
-0
lines changed

.github/workflows/security.yml

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
name: Security Compliance
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
8+
jobs:
9+
check-quality:
10+
runs-on: ubuntu-latest
11+
name: Datadog Static Analyzer
12+
env:
13+
DD_API_KEY: ${{ secrets.DD_API_KEY }}
14+
DD_APP_KEY: ${{ secrets.DD_APP_KEY }}
15+
DD_SERVICE: go-corellium-api-client
16+
DD_ENV: ci
17+
steps:
18+
- name: Checkout
19+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
20+
- name: Check code meets quality standards
21+
id: datadog-static-analysis
22+
run: |
23+
sudo apt update
24+
sudo apt install nodejs
25+
# Download Datadog static analyzer v0.6.4:
26+
# https://github.com/DataDog/datadog-static-analyzer/releases
27+
DATADOG_STATIC_ANALYZER_URL=https://github.com/DataDog/datadog-static-analyzer/releases/download/0.6.4/datadog-static-analyzer-x86_64-unknown-linux-gnu.zip
28+
curl -L $DATADOG_STATIC_ANALYZER_URL > /tmp/ddog-static-analyzer.zip
29+
unzip /tmp/ddog-static-analyzer.zip -d /tmp
30+
sudo mv /tmp/datadog-static-analyzer /usr/local/datadog-static-analyzer
31+
# Run Static Analysis
32+
/usr/local/datadog-static-analyzer -i . -o report.sarif -f sarif
33+
# Upload results
34+
npx @datadog/datadog-ci sarif upload report.sarif
35+
software-composition-analysis:
36+
runs-on: ubuntu-latest
37+
name: Datadog SBOM Generation and Upload
38+
env:
39+
DD_API_KEY: ${{ secrets.DD_API_KEY }}
40+
DD_APP_KEY: ${{ secrets.DD_APP_KEY }}
41+
DD_SERVICE: go-corellium-api-client
42+
DD_ENV: ci
43+
steps:
44+
- name: Checkout
45+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
46+
- name: Check imported libraries are secure and compliant
47+
id: datadog-software-composition-analysis
48+
run: |
49+
sudo apt update
50+
sudo apt install nodejs
51+
# Download the Datadog OSV Scanner v0.14.0:
52+
# https://github.com/DataDog/osv-scanner/releases
53+
DATADOG_OSV_SCANNER_URL=https://github.com/DataDog/osv-scanner/releases/download/v0.14.0/osv-scanner_linux_amd64.zip
54+
# Install OSV Scanner
55+
sudo mkdir /osv-scanner
56+
sudo curl -L -o /osv-scanner/osv-scanner.zip $DATADOG_OSV_SCANNER_URL
57+
sudo unzip /osv-scanner/osv-scanner.zip -d /osv-scanner
58+
sudo chmod 755 /osv-scanner/osv-scanner
59+
# Run OSV Scanner and scan your dependencies
60+
/osv-scanner/osv-scanner --skip-git -r --experimental-only-packages --format=cyclonedx-1-5 --paths-relative-to-scan-dir --output=sbom.json .
61+
# Upload results to Datadog
62+
npx @datadog/datadog-ci sbom upload sbom.json

0 commit comments

Comments
 (0)