Skip to content

Switch Generated Website Content Link Checking to lychee from untitaker/hyperlink #1208

@aj-stein-nist

Description

@aj-stein-nist

User Story:

As a NIST OSCAL developer, in order to ensure all links in the generated website content point to valid hyperlink targets in a faster and more efficient way with minimal configuration, I would to implement an alternative approach to link checking the generated content as part of CI workflows in GitHub Actions.

This closes #1201.

Goals:

When reviewing current work with Dave for the sprint, we reviewed #1201. The nokogiri dependency is needed for HTML proofer, which is tech debt from a previous iteration of proper link checking needed for generated HTML and was replaced in the interim by the Javascript-based untitaker/hyperlink in a published GitHub action. See 9a6eb48 for the current approach.

Goals of the replacement:

  • Available in a stable, well-maintained GitHub Action
  • As performant and fast as possible
  • As little configuration out of the box needed as possible
    • Ability to exclude resources in an easy, configurable way
  • Reliable reporting in a usable format

After using usnistgov/metaschema#204 as a quick in the moment spike, Dave and I agreed lychee and its officially published GH Action better fit the bill.

Dependencies:

Final completion and review of usnistgov/metaschema#204 once merged for final integration testing.

Acceptance Criteria

  • Necessary GH Action workflow specifications and modified and reviewed by one or more team members.
  • All OSCAL website and readme documentation affected by the changes in this issue have been updated. Changes to the OSCAL website can be made in the docs/content directory of your branch.
  • A Pull Request (PR) is submitted that fully addresses the goals of this User Story. This issue is referenced in the PR.
  • The CI-CD build process runs without any reported errors on the PR. This can be confirmed by reviewing that all checks have passed in the PR.

{The items above are general acceptance criteria for all User Stories. Please describe anything else that must be completed for this issue to be considered resolved.}

Metadata

Metadata

Assignees

Labels

Developer ExperienceIssues around enhancing and optimizing work for development of NIST OSCAL artifactsScope: CI/CDEnhancements to the project's Continuous Integration and Continuous Delivery pipeline.User Storyenhancement

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions