Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 50 additions & 0 deletions .github/workflows/trivy-test.yaml.hold
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: Trivy Test.

on:
pull_request:
types: [opened, synchronize, reopened]

jobs:
trivy-comment:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Download Atlantis artifacts
uses: actions/download-artifact@v3
with:
name: atlantis-output
path: .

- name: Parse Trivy results
id: parse-trivy
run: |
if [ -f "trivy-results.json" ]; then
RESULTS=$(cat trivy-results.json)
echo "results=$RESULTS" >> $GITHUB_OUTPUT
else
echo "results={}" >> $GITHUB_OUTPUT
fi

- name: Format Trivy results
id: format-trivy
if: ${{ steps.parse-trivy.outputs.results != '{}' }}
run: |
RESULTS="${{ steps.parse-trivy.outputs.results }}"
FORMATTED_RESULTS=$(echo "$RESULTS" | jq -r '.Results[] | "Severity: \(.Severity), Resource: \(.Target), Message: \(.Messages[])"')
echo "formatted_results<<EOF" >> $GITHUB_OUTPUT
echo "$FORMATTED_RESULTS" >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT
- name: Comment Trivy results
uses: peter-evans/create-or-update-comment@v3
if: ${{ steps.parse-trivy.outputs.results != '{}' }}
with:
issue-number: ${{ github.event.pull_request.number }}
body: |
## Trivy Scan Results

```text
${{ steps.format-trivy.outputs.formatted_results }}
```
reactions: '+1'
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*.terraform
2 changes: 2 additions & 0 deletions example.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Just a simple test!
This is for Trivy.
13 changes: 13 additions & 0 deletions test.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
terraform {
required_version = ">= 0.12"
}

# Define a data object (local value in this case)
data "local_file" "example" {
filename = "example.txt"
}

output "file_content" {
value = data.local_file.example.content
}

Loading