feat: integrate Allure reporting and enhance CI workflows for better test visibility#63
Conversation
|
🚅 Deployed to the reqcore-pr-63 environment in applirank
|
|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... 📒 Files selected for processing (2)
✏️ Tip: You can disable in-progress messages and the fortune message in your review settings. 📝 WalkthroughWalkthroughImplements Allure reporting integration into the CI/CD pipeline and Playwright test configuration. Adds Allure npm packages, modifies Playwright to report test results to Allure, introduces new GitHub Actions workflows for publishing Allure reports and consolidating test summaries, and updates repository documentation with status badges. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~28 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
🧹 Nitpick comments (1)
.github/workflows/pr-validation.yml (1)
68-68: Install status row is derived from the wrong step outcome.Track install with its own
idand rendersteps.install.outcomedirectly instead of inferring from tests.Suggested refactor
- - name: Install dependencies - run: npm ci + - name: Install dependencies + id: install + run: npm ci- echo "| Install dependencies | $(status_icon '${{ steps.tests.outcome != 'skipped' && 'success' || 'failure' }}') |" >> "$GITHUB_STEP_SUMMARY" + echo "| Install dependencies | $(status_icon '${{ steps.install.outcome }}') ${{ steps.install.outcome }} |" >> "$GITHUB_STEP_SUMMARY"🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.github/workflows/pr-validation.yml at line 68, The install-status row is currently inferred from the tests outcome; add an explicit id to the install step (e.g., set id: install on the job step that runs dependency installation) and change the summary line to reference steps.install.outcome directly instead of "${{ steps.tests.outcome ... }}"; update the echo that writes the Install dependencies row to use $(status_icon '${{ steps.install.outcome != 'skipped' && 'success' || 'failure' }}') so the install row reflects the actual install step outcome.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.github/workflows/e2e-tests.yml:
- Around line 104-109: The "Download previous Allure history" step using
actions/download-artifact@v4 must include run-id and github-token so it can
fetch the artifact from the prior workflow run; update that step (named
"Download previous Allure history") to add inputs run-id: ${{
steps.get_previous_run.outputs.run_id }} and github-token: ${{
secrets.GITHUB_TOKEN }} (or equivalent token), and add/ensure a preceding step
(e.g., "get_previous_run") that queries the GitHub REST API and exposes the
previous workflow's run_id as an output so the download action can restore the
"allure-history" artifact across runs.
In @.github/workflows/pr-validation.yml:
- Around line 59-60: Update the step condition that currently reads `if: ${{
!cancelled() }}` so the PR summary step always runs even after prior failures;
replace it with `if: ${{ always() && !cancelled() }}` to ensure the summary
renders on failed runs while still skipping on cancellation—locate the step with
the `if: ${{ !cancelled() }}` condition in the workflow and update that
condition accordingly.
- Around line 47-49: The audit step uses "npm audit --audit-level=high 2>&1 |
tee audit-output.txt" which can mask failures because pipefail isn't enabled;
update the workflow step to enable pipefail (e.g., set the shell to bash and run
"set -o pipefail" before the pipeline or prefix with "set -o pipefail &&") so
the step fails when npm audit exits non‑zero—locate the command string "npm
audit --audit-level=high 2>&1 | tee audit-output.txt" in the workflow and modify
the step to use bash with pipefail enabled.
---
Nitpick comments:
In @.github/workflows/pr-validation.yml:
- Line 68: The install-status row is currently inferred from the tests outcome;
add an explicit id to the install step (e.g., set id: install on the job step
that runs dependency installation) and change the summary line to reference
steps.install.outcome directly instead of "${{ steps.tests.outcome ... }}";
update the echo that writes the Install dependencies row to use $(status_icon
'${{ steps.install.outcome != 'skipped' && 'success' || 'failure' }}') so the
install row reflects the actual install step outcome.
ℹ️ Review info
Configuration used: defaults
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
package-lock.jsonis excluded by!**/package-lock.json
📒 Files selected for processing (8)
.github/workflows/allure-pages.yml.github/workflows/docker-readme-validation.yml.github/workflows/e2e-tests.yml.github/workflows/pr-validation.yml.gitignoreREADME.mdpackage.jsonplaywright.config.ts
Summary
Type of change
Validation
DCO
Signed-off-by) viagit commit -sSummary by CodeRabbit
New Features
Chores