Skip to content
Merged
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
45 changes: 8 additions & 37 deletions .github/workflows/module-evaluation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,16 +27,6 @@ on:
required: false
type: string
default: ''
no_cleanup:
description: 'Keep cloned repository for inspection (do not delete after evaluation)'
required: false
type: boolean
default: false
custom_output_dir:
description: 'Custom output directory for reports'
required: false
type: string
default: './reports'

jobs:
evaluate-module:
Expand Down Expand Up @@ -105,10 +95,7 @@ jobs:
id: prepare-args
run: |
ARGS="${{ inputs.repository_url }}"

# Normalize output directory (remove leading ./ if present)
OUTPUT_DIR="${{ inputs.custom_output_dir }}"
OUTPUT_DIR="${OUTPUT_DIR#./}" # Remove leading ./
OUTPUT_DIR="reports"

# Add output directory
ARGS="$ARGS --output $OUTPUT_DIR"
Expand Down Expand Up @@ -136,25 +123,18 @@ jobs:
ARGS="$ARGS --criteria ${{ inputs.criteria_filter }}"
fi

# Add no-cleanup flag if requested
if [ "${{ inputs.no_cleanup }}" = "true" ]; then
ARGS="$ARGS --no-cleanup"
fi

echo "cli_args=$ARGS" >> $GITHUB_OUTPUT
echo "normalized_output_dir=$OUTPUT_DIR" >> $GITHUB_OUTPUT
echo "output_dir=$OUTPUT_DIR" >> $GITHUB_OUTPUT
echo "Prepared CLI arguments: $ARGS"
echo "Normalized output directory: $OUTPUT_DIR"
echo "Output directory: $OUTPUT_DIR"

- name: Run module evaluation
run: |
echo "🚀 Starting FOLIO Module Evaluation..."
echo "Repository: ${{ inputs.repository_url }}"
echo "Branch: ${{ inputs.branch || '(default)' }}"
echo "Output format: ${{ inputs.output_format }}"
echo "Output directory: ${{ inputs.custom_output_dir }}"
echo "Criteria filter: ${{ inputs.criteria_filter }}"
echo "No cleanup: ${{ inputs.no_cleanup }}"
echo ""

# Run the evaluation
Expand All @@ -177,12 +157,12 @@ jobs:
run: |
echo "📊 Evaluation completed!"
echo ""
echo "📁 Generated files in ${{ steps.prepare-args.outputs.normalized_output_dir }}:"
find ${{ steps.prepare-args.outputs.normalized_output_dir }} -type f -name "*.html" -o -name "*.json" | head -20
echo "📁 Generated files in ${{ steps.prepare-args.outputs.output_dir }}:"
find ${{ steps.prepare-args.outputs.output_dir }} -type f -name "*.html" -o -name "*.json" | head -20
echo ""

# Show JSON summary if available
JSON_FILE=$(find ${{ steps.prepare-args.outputs.normalized_output_dir }} -name "*.json" | head -1)
JSON_FILE=$(find ${{ steps.prepare-args.outputs.output_dir }} -name "*.json" | head -1)
if [ -f "$JSON_FILE" ]; then
echo "📈 Evaluation Summary:"
# Extract key metrics from JSON using jq if available, otherwise use basic tools
Expand All @@ -204,15 +184,6 @@ jobs:
if: always()
with:
name: folio-module-evaluation-reports
path: ${{ steps.prepare-args.outputs.normalized_output_dir }}/
path: ${{ steps.prepare-args.outputs.output_dir }}/
retention-days: 90
if-no-files-found: warn

- name: Upload cloned repository (if no-cleanup enabled)
uses: actions/upload-artifact@v4
if: inputs.no_cleanup == true
with:
name: cloned-repository-for-inspection
path: temp/
retention-days: 30
if-no-files-found: ignore
if-no-files-found: warn