Skip to content

Commit 084c8b3

Browse files
Create crda.yml
Signed-off-by: Chandu Paladugu <[email protected]>
1 parent 2697f48 commit 084c8b3

File tree

1 file changed

+126
-0
lines changed

1 file changed

+126
-0
lines changed

.github/workflows/crda.yml

Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
# This workflow uses actions that are not certified by GitHub.
2+
# They are provided by a third-party and are governed by
3+
# separate terms of service, privacy policy, and support
4+
# documentation.
5+
6+
# This workflow performs a static analysis of your source code using
7+
# Red Hat CodeReady Dependency Analytics.
8+
9+
# Scans are triggered:
10+
# 1. On every push to default and protected branches
11+
# 2. On every Pull Request targeting the default branch
12+
# 3. On a weekly schedule
13+
# 4. Manually, on demand, via the "workflow_dispatch" event
14+
15+
# 💁 The CRDA Starter workflow will:
16+
# - Checkout your repository
17+
# - Setup the required tool stack
18+
# - Install the CRDA command line tool
19+
# - Auto detect the manifest file and install the project's dependencies
20+
# - Perform the security scan using CRDA
21+
# - Upload the SARIF result to the GitHub Code Scanning which can be viewed under the security tab
22+
# - Optionally upload the SARIF file as an artifact for the future reference
23+
24+
# ℹ️ Configure your repository and the workflow with the following steps:
25+
# 1. Setup the tool stack based on the project's requirement.
26+
# Refer to: https://github.com/redhat-actions/crda/#1-set-up-the-tool-stack
27+
# 2. (Optional) CRDA action attempt to detect the language and install the
28+
# required dependencies for your project. If your project doesn't aligns
29+
# with the default dependency installation command mentioned here
30+
# https://github.com/redhat-actions/crda/#3-installing-dependencies.
31+
# Use the required inputs to setup the same
32+
# 3. (Optional) CRDA action attempts to detect the manifest file if it is
33+
# present in the root of the project and named as per the default mentioned
34+
# here https://github.com/redhat-actions/crda/#3-installing-dependencies.
35+
# If it deviates from the default, use the required inputs to setup the same
36+
# 4. Setup Authentication - Create the CRDA_KEY or SNYK_TOKEN.
37+
# Refer to: https://github.com/redhat-actions/crda/#4-set-up-authentication
38+
# 5. (Optional) Upload SARIF file as an Artifact to download and view
39+
# 6. Commit and push the workflow file to your default branch to trigger a workflow run.
40+
41+
# 👋 Visit our GitHub organization at https://github.com/redhat-actions/ to see our actions and provide feedback.
42+
43+
name: CRDA Scan
44+
45+
# Controls when the workflow will run
46+
on:
47+
# TODO: Customize trigger events based on your DevSecOps processes
48+
#
49+
# This workflow is made to run with OpenShift starter workflow
50+
# https://github.com/actions/starter-workflows/blob/main/deployments/openshift.yml
51+
# However, if you want to run this workflow as a standalone workflow, please
52+
# uncomment the 'push' trigger below and configure it based on your requirements.
53+
#
54+
workflow_call:
55+
secrets:
56+
CRDA_KEY:
57+
required: false
58+
SNYK_TOKEN:
59+
required: false
60+
workflow_dispatch:
61+
62+
# push:
63+
# branches: [ "main" ]
64+
65+
# pull_request_target is used to securely share secret to the PR's workflow run.
66+
# For more info visit: https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request_target
67+
pull_request_target:
68+
branches: [ "main" ]
69+
types: [ assigned, opened, synchronize, reopened, labeled, edited ]
70+
71+
permissions:
72+
contents: read
73+
74+
jobs:
75+
crda-scan:
76+
permissions:
77+
contents: read # for actions/checkout to fetch code
78+
security-events: write # for redhat-actions/crda to upload SARIF results
79+
name: Scan project vulnerabilities with CRDA
80+
runs-on: ubuntu-20.04
81+
steps:
82+
83+
- name: Check out repository
84+
uses: actions/checkout@v2
85+
86+
# *******************************************************************
87+
# Required: Instructions to setup project
88+
# 1. Setup Go, Java, Node.js or Python depending on your project type
89+
# 2. Setup Actions are listed below, choose one from them:
90+
# - Go: https://github.com/actions/setup-go
91+
# - Java: https://github.com/actions/setup-java
92+
# - Node.js: https://github.com/actions/setup-node
93+
# - Python: https://github.com/actions/setup-python
94+
#
95+
# Example:
96+
# - name: Setup Node
97+
# uses: actions/setup-node@v2
98+
# with:
99+
# node-version: '14'
100+
101+
# https://github.com/redhat-actions/openshift-tools-installer/blob/main/README.md
102+
- name: Install CRDA CLI
103+
uses: redhat-actions/openshift-tools-installer@v1
104+
with:
105+
source: github
106+
github_pat: ${{ github.token }}
107+
# Choose the desired version of the CRDA CLI
108+
crda: "latest"
109+
110+
######################################################################################
111+
# https://github.com/redhat-actions/crda/blob/main/README.md
112+
#
113+
# By default, CRDA will detect the manifest file and install the required dependencies
114+
# using the standard command for the project type.
115+
# If your project doesn't aligns with the defaults mentioned in this action, you will
116+
# need to set few inputs that are described here:
117+
# https://github.com/redhat-actions/crda/blob/main/README.md#3-installing-dependencies
118+
# Visit https://github.com/redhat-actions/crda/#4-set-up-authentication to understand
119+
# process to get a SNYK_TOKEN or a CRDA_KEY
120+
- name: CRDA Scan
121+
id: scan
122+
uses: redhat-actions/crda@v1
123+
with:
124+
crda_key: ${{ secrets.CRDA_KEY }} # Either use crda_key or snyk_token
125+
# snyk_token: ${{ secrets.SNYK_TOKEN }}
126+
# upload_artifact: false # Set this to false to skip artifact upload

0 commit comments

Comments
 (0)