Skip to content

Commit cfeb6b9

Browse files
committed
Enable the whole action
Signed-off-by: tdruez <[email protected]>
1 parent 1e81a12 commit cfeb6b9

File tree

1 file changed

+73
-78
lines changed

1 file changed

+73
-78
lines changed

action.yml

Lines changed: 73 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -72,11 +72,6 @@ runs:
7272
run: |
7373
echo "SCANPIPE_CMD=docker run --rm -v \"${{ github.workspace }}/scancode-inputs\":/scancode/input:ro -v \"${{ github.workspace }}/scancode-outputs\":/scancode/output -w /scancode ghcr.io/aboutcode-org/scancode.io:latest scanpipe" >> $GITHUB_ENV
7474
75-
- name: Define `scanpipe` Docker command
76-
shell: bash
77-
run: |
78-
${{ env.SCANPIPE_CMD }} --help
79-
8075
# - name: Install ScanCode.io
8176
# shell: bash
8277
# run: |
@@ -92,76 +87,76 @@ runs:
9287
# shell: bash
9388
# run: scanpipe migrate --verbosity 0
9489
#
95-
# - name: Generate `--pipeline` CLI arguments
96-
# shell: bash
97-
# run: |
98-
# IFS=',' read -ra PIPELINES <<< "${{ inputs.pipelines }}"
99-
# PIPELINE_CLI_ARGS=""
100-
# for pipeline in "${PIPELINES[@]}"; do
101-
# PIPELINE_CLI_ARGS+=" --pipeline $pipeline"
102-
# done
103-
# echo "PIPELINE_CLI_ARGS=${PIPELINE_CLI_ARGS}" >> $GITHUB_ENV
104-
#
105-
# - name: Generate `--input-url` CLI arguments
106-
# shell: bash
107-
# run: |
108-
# INPUT_URL_CLI_ARGS=""
109-
# for url in ${{ inputs.input-urls }}; do
110-
# INPUT_URL_CLI_ARGS+=" --input-url $url"
111-
# done
112-
# echo "INPUT_URL_CLI_ARGS=${INPUT_URL_CLI_ARGS}" >> $GITHUB_ENV
113-
#
114-
# - name: Create project
115-
# shell: bash
116-
# run: |
117-
# scanpipe create-project ${{ inputs.project-name }} \
118-
# ${{ env.PIPELINE_CLI_ARGS }} \
119-
# ${{ env.INPUT_URL_CLI_ARGS }}
120-
#
121-
# - name: Set project work directory in the environment
122-
# shell: bash
123-
# run: |
124-
# project_status=$(scanpipe status --project ${{ inputs.project-name }})
125-
# work_directory=$(echo "$project_status" | grep -oP 'Work directory:\s*\K[^\n]+')
126-
# echo "PROJECT_WORK_DIRECTORY=$work_directory" >> $GITHUB_ENV
127-
#
128-
# - name: Copy input files to project work directory
129-
# shell: bash
130-
# run: |
131-
# SOURCE_PATH="${{ inputs.inputs-path }}"
132-
# DESTINATION_PATH="${{ env.PROJECT_WORK_DIRECTORY }}/input/"
133-
# if [ -d "$SOURCE_PATH" ]; then
134-
# cp -r "$SOURCE_PATH"/* "$DESTINATION_PATH"
135-
# fi
136-
#
137-
# - name: Run the pipelines
138-
# shell: bash
139-
# run: scanpipe execute --project ${{ inputs.project-name }} --no-color
140-
#
141-
# - name: Generate outputs
142-
# id: scanpipe
143-
# shell: bash
144-
# run: scanpipe output
145-
# --project ${{ inputs.project-name }}
146-
# --format ${{ inputs.output-formats }}
147-
#
148-
# - name: Upload outputs
149-
# uses: actions/upload-artifact@v4
150-
# id: artifact-upload-step
151-
# with:
152-
# name: ${{ inputs.outputs-archive-name }}
153-
# path: ${{ env.PROJECT_WORK_DIRECTORY }}/output/*
154-
#
155-
# - name: Check compliance
156-
# if: inputs.check-compliance == 'true'
157-
# shell: bash
158-
# run: |
159-
# cmd="scanpipe check-compliance \
160-
# --project ${{ inputs.project-name }} \
161-
# --fail-level ${{ inputs.compliance-fail-level }}"
162-
#
163-
# if [[ "${{ inputs.compliance-fail-on-vulnerabilities }}" == "true" ]]; then
164-
# cmd="$cmd --fail-on-vulnerabilities"
165-
# fi
166-
#
167-
# eval "$cmd"
90+
- name: Generate `--pipeline` CLI arguments
91+
shell: bash
92+
run: |
93+
IFS=',' read -ra PIPELINES <<< "${{ inputs.pipelines }}"
94+
PIPELINE_CLI_ARGS=""
95+
for pipeline in "${PIPELINES[@]}"; do
96+
PIPELINE_CLI_ARGS+=" --pipeline $pipeline"
97+
done
98+
echo "PIPELINE_CLI_ARGS=${PIPELINE_CLI_ARGS}" >> $GITHUB_ENV
99+
100+
- name: Generate `--input-url` CLI arguments
101+
shell: bash
102+
run: |
103+
INPUT_URL_CLI_ARGS=""
104+
for url in ${{ inputs.input-urls }}; do
105+
INPUT_URL_CLI_ARGS+=" --input-url $url"
106+
done
107+
echo "INPUT_URL_CLI_ARGS=${INPUT_URL_CLI_ARGS}" >> $GITHUB_ENV
108+
109+
- name: Create project
110+
shell: bash
111+
run: |
112+
${{ env.SCANPIPE_CMD }} create-project ${{ inputs.project-name }} \
113+
${{ env.PIPELINE_CLI_ARGS }} \
114+
${{ env.INPUT_URL_CLI_ARGS }}
115+
116+
- name: Set project work directory in the environment
117+
shell: bash
118+
run: |
119+
project_status=$(${{ env.SCANPIPE_CMD }} status --project ${{ inputs.project-name }})
120+
work_directory=$(echo "$project_status" | grep -oP 'Work directory:\s*\K[^\n]+')
121+
echo "PROJECT_WORK_DIRECTORY=$work_directory" >> $GITHUB_ENV
122+
123+
- name: Copy input files to project work directory
124+
shell: bash
125+
run: |
126+
SOURCE_PATH="${{ inputs.inputs-path }}"
127+
DESTINATION_PATH="${{ env.PROJECT_WORK_DIRECTORY }}/input/"
128+
if [ -d "$SOURCE_PATH" ]; then
129+
cp -r "$SOURCE_PATH"/* "$DESTINATION_PATH"
130+
fi
131+
132+
- name: Run the pipelines
133+
shell: bash
134+
run: ${{ env.SCANPIPE_CMD }} execute --project ${{ inputs.project-name }} --no-color
135+
136+
- name: Generate outputs
137+
id: scanpipe
138+
shell: bash
139+
run: ${{ env.SCANPIPE_CMD }} output
140+
--project ${{ inputs.project-name }}
141+
--format ${{ inputs.output-formats }}
142+
143+
- name: Upload outputs
144+
uses: actions/upload-artifact@v4
145+
id: artifact-upload-step
146+
with:
147+
name: ${{ inputs.outputs-archive-name }}
148+
path: ${{ env.PROJECT_WORK_DIRECTORY }}/output/*
149+
150+
- name: Check compliance
151+
if: inputs.check-compliance == 'true'
152+
shell: bash
153+
run: |
154+
cmd="${{ env.SCANPIPE_CMD }} check-compliance \
155+
--project ${{ inputs.project-name }} \
156+
--fail-level ${{ inputs.compliance-fail-level }}"
157+
158+
if [[ "${{ inputs.compliance-fail-on-vulnerabilities }}" == "true" ]]; then
159+
cmd="$cmd --fail-on-vulnerabilities"
160+
fi
161+
162+
eval "$cmd"

0 commit comments

Comments
 (0)