Finish HTML Report Portal conversion and fix publish blockers - #1
Merged
Conversation
The convert-to-html-portal branch was still Postman-specific: Node 10 only, a summary attachment type mismatch, and success detection that threw on generic HTML. This completes the generic viewer, adds Node 16/20 handlers, and covers the task helpers with unit tests. Co-authored-by: Jeff Jones <joneja09@users.noreply.github.com>
CI installed azure-devops-ui 2.278 via the caret range, which requires the webpack 5 loader API (this.getOptions). Lock exact versions and commit package-lock files so npm ci stays on a compatible tree. Co-authored-by: Jeff Jones <joneja09@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why this exists
feature/convert-to-html-portalstarted turning the Postman/Newman extension into a generic HTML viewer, but the rename was incomplete. Several issues would have prevented it from working on current Azure DevOps agents or with non-Postman HTML.This PR lands that conversion on
masterand the enhancements needed to make it usable.Blockers that were still in the conversion branch
UploadPostmanHtmlReportissue Nodejs dependant version update maciejmaciejewski/azure-pipelines-postman#25 upstream). The task now declaresNode16andNode20_1.report.summarywhile the tab looked forportal.summary, so the build tab would never find reports.checkIfSuccessful()assumed Newman HTML Extra (Failed Tests N) and threw when that text was missing.supportsTasks/OUR_TASK_IDS, so this extension would collide with (or hide behind) the Postman one.Enhancements included
4d9a74ab-346a-4549-936a-6a3d3ad77227so this extension does not conflict with Postman Report.reportDiraccepts a single HTML file or a directory (recursive.html/.htm).redactSecrets(off by default). When on, Bearer tokens and nested secret keys are masked, includingpassword/access_tokeninside JSON — without rewriting originals (copies go to the agent temp dir).failOnEmpty(on by default).npm testintasks/UploadPortalHtmlReport).azure-devops-ui@2.165.1and committed lockfiles. A caret range installed 2.278 on GitHub Actions, which requires webpack 5 (this.getOptions).Usage
Reports should be self-contained HTML. Companion CSS/JS folders (for example Playwright’s full
playwright-report/) are not published as a static site.Intentionally not in this PR
These are still worth doing later, but they are larger product/architecture changes:
2.165.1so webpack 4 still builds)Testing
npm run buildsucceeds for the extension tab withazure-devops-ui@2.165.1