Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improving link management under CI/CD #737

Closed
3 tasks
wendellpiez opened this issue Aug 20, 2020 · 3 comments · Fixed by #1231
Closed
3 tasks

Improving link management under CI/CD #737

wendellpiez opened this issue Aug 20, 2020 · 3 comments · Fixed by #1231

Comments

@wendellpiez
Copy link
Contributor

User Story:

The CI/CD process includes a script to perform link checking. This is very useful, ensuring that the OSCAL web site does not present users with broken links.

But this becomes an impediment when a link breaks. When a linked page or site is no longer available, our builds fail until the offending link is removed or replaced. However, a developer making a PR frequently does not have knowledge or authority for changing a link in a page having nothing to do with the actual work in the branch.

Currently (at time of writing) this is happening with two links, both in the file build/README.md:

Goals:

  1. Repair any pages with broken links that currently prevent building
  2. Provide support to team members to rebase dev branches so they also will build
  3. Clarify editorial policy: when and for what purposes should links be included at all, and how do we ensure that links are to pages that are unlikely to move or disappear? If a link does break, how should we repair it or otherwise mitigate the issue, so that a build will pass validations under CI/CD?
  4. Determine a strategy going forward for maintaining links with less overhead. This could include a capability for adding a link to a do-not-check list but also clear rules on which links can be added and why. Or possibly link checking should not be performed for all PRs, but only some of them (e.g. those devoted to web site maintenance).

Dependencies:

None known.

Acceptance Criteria

  • 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.
@wendellpiez
Copy link
Contributor Author

For the Ubuntu link, my browser is redirected here: http://old-releases.ubuntu.com/releases/18.04.4/. I will see if changing to this addresses the problem.

The Schematron link returns a page reporting a database connection error. (It is interesting that this is detected as a failed link.) One possible alternative would be the Github repo of the (de facto) reference implementation: https://github.com/Schematron/

I will push up changes next and make a PR; if it passes the link checker we can look at the edits.

Next: rebasing other branches (at least those behind pending PRs); any policy considerations going forward.

wendellpiez added a commit to wendellpiez/OSCAL that referenced this issue Aug 20, 2020
@wendellpiez wendellpiez self-assigned this Aug 20, 2020
@david-waltermire david-waltermire linked a pull request Aug 26, 2020 that will close this issue
4 tasks
@david-waltermire david-waltermire removed a link to a pull request Aug 26, 2020
4 tasks
david-waltermire pushed a commit that referenced this issue Aug 26, 2020
* Edits to remove broken links #737
* Small editorial tweak to readme under revision.
david-waltermire pushed a commit that referenced this issue Aug 26, 2020
@david-waltermire
Copy link
Contributor

We fixed the broken links, but we still need to address a more permanent mechanism for managing broken links. The approach going forward needs to allow for minimal disruption to the typical developer working in the repo.

@david-waltermire david-waltermire added this to the OSCAL 1.1.0 milestone Oct 30, 2020
@aj-stein-nist
Copy link
Contributor

Will fix this in #1208 now that Metaschema equivalent of tooling improvement was merged, fixed, and approved by Dave.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants