-
Story
-
Resolution: Unresolved
-
Normal
-
None
-
None
-
Quality / Stability / Reliability
-
3
-
False
-
-
True
-
-
-
3
Summary
Reorganize link architecture by moving documentation and remaining support URLs from installLinks.mjs into dedicated files
Following OCMUI-3196 consolidation of hardcoded access.redhat.com URLs, we now need to complete the link architecture reorganization. Currently, installLinks.mjs contains a mix of installation binaries, documentation links, and some remaining support URLs that should be properly separated.
This epic will:
- Create a new docLinks.mjs file for documentation and educational content
- Move remaining access.redhat.com support URLs from installLinks.mjs to supportLinks.mjs
- Move documentation URLs from installLinks.mjs to docLinks.mjs
- Keep only installation/binary-specific URLs in installLinks.mjs
Current State (After OCMUI-3196 closes/merges)
installLinks.mjs: 402 URLs
Installation binaries (mirror.openshift.com)
Documentation links (docs.redhat.com, developers.redhat.com)
Remaining support URLs (access.redhat.com/documentation/*)
Educational content (walkthrough videos, learn more pages)
supportLinks.mjs: 12 URLs
Support case management (access.redhat.com/support/*)
Knowledge base articles (access.redhat.com/articles/*)
Support policies (access.redhat.com/support/policy/*)
docLinks.mjs: Does not exist yet
Target Architecture
installLinks.mjs (Installation & Binaries)
Purpose: Binary downloads, installation tools, and cluster creation workflows
- https://mirror.openshift.com/* - Binary downloads
- https://console.cloud.google.com/* - Cloud marketplace/cluster creation
- Product pricing pages (aws.amazon.com/rosa/pricing)
- CLI download URLs and installation-specific tools
docLinks.mjs (Documentation & Educational) NEW FILE
Purpose: Documentation, tutorials, educational content, and developer resources
- https://docs.redhat.com/* - Red Hat product documentation
- https://developers.redhat.com/* - Developer tutorials and guides
- https://www.redhat.com/*/walkthrough/* - Interactive walkthroughs
- Educational videos (youtube.com)
- "Learn more" and "What is..." informational pages
- Developer-focused documentation and guides
supportLinks.mjs (Support & Troubleshooting)
Purpose: Support cases, knowledge base, policies, and troubleshooting
- https://access.redhat.com/support/* - Support case management (existing)
- https://access.redhat.com/articles/* - Knowledge base articles (existing)
- https://access.redhat.com/documentation/* - Support/troubleshooting docs (move from installLinks)
- https://access.redhat.com/solutions/* - Solution articles (existing)
- Support policies and classifications (existing)
URLs to Move
From installLinks.mjs → docLinks.mjs (~50-70 URLs estimated):
- All DOCS_BASE (docs.redhat.com) references and derived URLs
- All developers.redhat.com URLs
- Educational content URLs:
- WHAT_IS_OPENSHIFT, WHAT_IS_ROSA, WHAT_IS_OSD
- LEARN_MORE_OSD, OSD_INTERACTIVE_WALKTHROUGH
- OSD_QUICKSTART (YouTube video)
- Documentation links: IDP_{}{}, }}{}{{_DOCS constants
From installLinks.mjs → supportLinks.mjs (~10-15 URLs estimated):
- Remaining access.redhat.com/documentation/* URLs
- ROSA_CP_DOCS_BASE and derived troubleshooting/support URLs
- OCM_DOCS_BASE and OCP_DOC_BASE support documentation
Remaining in installLinks.mjs (~300+ URLs estimated):
- All mirror.openshift.com binary downloads (nested urls structure)
- Cloud marketplace URLs (console.cloud.google.com)
- Pricing pages for products
- CLI binary download URLs
- Installation-specific tool downloads
Acceptance Criteria
AC1: Create docLinks.mjs File
- [ ] Create src/common/docLinks.mjs following same pattern as supportLinks.mjs
- [ ] Implement consistent getLinks() interface using combineAndSortLinks from linkUtils.mjs
- [ ] Add JSDoc documentation explaining purpose: "Documentation, tutorials, and educational content"
AC2: Move Documentation URLs
- [ ] Move all docs.redhat.com/* URLs from installLinks.mjs to docLinks.mjs
- [ ] Move all developers.redhat.com/* URLs from installLinks.mjs to docLinks.mjs
- [ ] Move educational/tutorial URLs to docLinks.mjs:
- WHAT_IS_* product information pages
- LEARN_MORE_* educational content
- *_DOCS documentation references
- Interactive walkthroughs and videos
- [ ] Update all component imports to use new docLinks constants
AC3: Move Support URLs
- [ ] Move remaining access.redhat.com/documentation/* URLs from installLinks.mjs to supportLinks.mjs
- [ ] Move troubleshooting and support-specific documentation URLs
- [ ] Update affected component imports to use supportLinks constants
AC4: Update Architecture
- [ ] Update getAllExternalLinks() in urlUtils.mjs to include new docLinks.mjs
- [ ] Update check-links.mjs and dump-links.mjs scripts to include all three link files
- [ ] Ensure no circular dependencies remain
AC5: Testing & Validation
- [ ] All existing unit tests continue to pass
- [ ] Create unit tests for new docLinks.mjs functionality
- [ ] Verify yarn find-circular-dependencies passes
- [ ] Verify yarn check-links validates all URLs from three files
- [ ] Confirm URL count: installLinks + supportLinks + docLinks = original total
AC6: Documentation
- [ ] Update link file comments to clearly describe their purpose
- [ ] Add README.md section explaining three-file link architecture
- [ ] Document the categorization rules for future URL additions
Definition of Done
- [ ] All URLs properly categorized into logical files
- [ ] No hardcoded documentation URLs remain in installLinks.mjs
- [ ] All component imports updated and tested
- [ ] Architecture supports easy future additions to any category
- [ ] Link validation scripts work with all three files
- [ ] Zero circular dependencies
- [ ] All existing functionality preserved
- clones
-
OCMUI-3196 Consolidate all 'access.redhat.com' links into single file
-
- Closed
-
- depends on
-
OCMUI-3196 Consolidate all 'access.redhat.com' links into single file
-
- Closed
-
- is depended on by
-
OCMUI-3335 Find all remaining doc urls outside of installLinks.mjs
-
- To Do
-