Skip to content

feat: unify workflows, remove duplications and update packages for the website#2231

Merged
morri-son merged 3 commits into
open-component-model:mainfrom
Skarlso:migrate-ocm-website-2
Apr 10, 2026
Merged

feat: unify workflows, remove duplications and update packages for the website#2231
morri-son merged 3 commits into
open-component-model:mainfrom
Skarlso:migrate-ocm-website-2

Conversation

@Skarlso

@Skarlso Skarlso commented Apr 9, 2026

Copy link
Copy Markdown
Contributor

What this PR does / why we need it

Refactor the website to remove some duplication and formalize the actions.

Which issue(s) this PR fixes

Fixes open-component-model/ocm-project#1003

Testing

How to test the changes
Verification
  • I have tested the changes locally by running ocm

@netlify

netlify Bot commented Apr 9, 2026

Copy link
Copy Markdown

Deploy Preview for ocm-website canceled.

Name Link
🔨 Latest commit cf140b6
🔍 Latest deploy log https://app.netlify.com/projects/ocm-website/deploys/69d7c615fbfecc0009ee3d9f

@coderabbitai

coderabbitai Bot commented Apr 9, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

Consolidates website markdown checks into the main markdown workflow, removes website-specific spellcheck and wordlist, updates multiple GitHub Actions pins and runtime/tool versions, revises core and website wordlists, removes website license/REUSE files, and bumps several website development and Go module dependencies.

Changes

Cohort / File(s) Summary
Markdown lint configs
.github/config/.markdownlint-cli2.yaml, .github/config/website.markdownlint-cli2.yaml
Added ignores for versioned content; reordered/relocated MD rule entries and adjusted an inline comment for MD001.
Website spellcheck & wordlist removed
.github/config/website-spellcheck.yml, .github/config/website-wordlist.txt
Deleted the website-specific spellcheck workflow config and its dedicated wordlist file.
Core wordlist updated
.github/config/wordlist.txt
Large rewrite: tokens reordered/added/removed, new domain-specific terms and variants introduced (+282/-119 net).
Markdown workflow refactor
.github/workflows/markdown.yml, .github/workflows/website-verify-markdown.yml
Consolidated website markdown verification into main workflow; added website-specific markdown-lint job, conditional verify-links-website job (Netlify preview detection + Linkspector), split/renamed link-check jobs; removed the old dedicated website workflow.
GitHub Actions pins & runtimes
.github/workflows/.../website-*.yaml, .github/workflows/website-verify-scripts.yml
Updated multiple uses: pins to newer commit SHAs and bumped actions (checkout, setup-node) and runtimes (Hugo, Python) across website workflows.
Website license/REUSE removal
website/LICENSE, website/LICENSES/Apache-2.0.txt, website/REUSE.toml
Removed Apache-2.0 license files and REUSE.toml metadata from the website directory.
Website build & deps
website/netlify.toml, website/package.json, website/hack/generate-cli-docs/go.mod
Netlify ignore scope changed to repo-wide diff; bumped hugo-extended and typescript-eslint; updated ocm.software/ocm and many indirect Go module versions (substantial go.mod changes).

Sequence Diagram(s)

sequenceDiagram
  participant PR as Pull Request
  participant GA as GitHub Actions
  participant Netlify as Netlify Deploy Preview
  participant Linkspector as Linkspector
  participant Repo as Repository

  PR->>GA: Trigger main markdown workflow (includes website paths)
  GA->>Repo: Checkout repo
  GA->>GA: Run website `markdown-lint` job against `website/**/*.md`
  GA->>Netlify: Wait for deploy-preview check (poll via GitHub checks)
  alt Netlify preview available
    Netlify->>GA: Respond with preview target_url
    GA->>Repo: Generate `.github/config/website-linkspector.yaml` with preview URL
    GA->>Linkspector: Run Linkspector on `./website/content` using generated config
    Linkspector->>GA: Return link results (report to PR checks)
  else No website changes
    GA->>GA: Skip `verify-links-website` job
  end
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Possibly related PRs

Suggested reviewers

  • frewilhelm
  • morri-son
  • fabianburth

Poem

🐰 I hopped through configs, tidy and spry,
I nudged workflows, watched checks fly by,
Wordlists refreshed with a curious wink,
Licenses parted, dependencies sync,
A little rabbit dance — CI smiles nearby 🥕

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title directly aligns with the main changes in the PR: unifying workflows (consolidating website verification into markdown.yml), removing duplications (deleting website-verify-markdown.yml), and updating packages across configuration files and workflows.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description check ✅ Passed The PR description relates to the changeset, discussing website refactoring, duplication removal, and workflow unification, which aligns with the actual changes.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions Bot added kind/feature new feature, enhancement, improvement, extension component/github-actions Changes on GitHub Actions or within `.github/` directory size/l Large labels Apr 9, 2026
@Skarlso Skarlso force-pushed the migrate-ocm-website-2 branch 3 times, most recently from f19bba0 to fc56e18 Compare April 9, 2026 11:48
…e website

On-behalf-of: Gergely Brautigam <gergely.brautigam@sap.com>

Signed-off-by: Gergely Brautigam <182850+Skarlso@users.noreply.github.com>
@Skarlso Skarlso force-pushed the migrate-ocm-website-2 branch from 7aeb271 to 131dbed Compare April 9, 2026 13:05
@Skarlso Skarlso marked this pull request as ready for review April 9, 2026 13:43
@Skarlso Skarlso requested a review from a team as a code owner April 9, 2026 13:43

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🧹 Nitpick comments (1)
website/netlify.toml (1)

6-6: Keep Netlify ignore scoped to website changes.

Line 6 now tracks the entire repo (-- ./), which will trigger website builds for unrelated changes. If the goal is to avoid unnecessary previews, keep this scoped to website paths.

Suggested change
-  ignore = "git diff --quiet $CACHED_COMMIT_REF $COMMIT_REF -- ./"
+  ignore = "git diff --quiet $CACHED_COMMIT_REF $COMMIT_REF -- website/"
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@website/netlify.toml` at line 6, The Netlify ignore rule currently uses the
repository root marker `-- ./` in the `ignore` setting, causing builds to
trigger for unrelated repo changes; update the `ignore` value (the `ignore` key
that contains the `"git diff --quiet $CACHED_COMMIT_REF $COMMIT_REF -- ./"`
string) to scope diffs to website files only (e.g., replace `-- ./` with the
website path(s) like `-- website/` or the specific directories/files that should
trigger a site build) so only changes under the website paths will trigger
Netlify builds.
🤖 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/config/wordlist.txt:
- Line 493: Replace the misspelled token "omponentsubscription's" with the
correct "componentsubscription's" in the wordlist entry; locate the exact string
"omponentsubscription's" in the file and update it to "componentsubscription's"
so the allowlist token is spelled correctly.

In @.github/workflows/markdown.yml:
- Around line 8-10: The workflow's trigger only includes '**/*.md' under the
paths filter, so changes in non-Markdown website files won't run the
verify-links-website job; update the paths filter to include website/** (or more
narrowly include website/**/*.md if you prefer limiting to markdown) so that
changes under the website directory will trigger the workflow, or alternatively
change the condition that gates the verify-links-website job to only run when
website/**/*.md changed; refer to the paths block and the verify-links-website
job name when making the change.
- Around line 108-111: The workflow currently extracts PREVIEW_STATUS and
PREVIEW_URL using the hardcoded context "netlify/ocm-website/deploy-preview"
which can yield an empty PREVIEW_URL; update the shell block that sets
PREVIEW_STATUS and PREVIEW_URL to either (a) select the status with a tolerant
jq filter (e.g., match contexts that contain "netlify" and "deploy-preview") or
(b) keep the current selector but immediately validate PREVIEW_URL after
extraction and fail fast if empty: print a clear error like "No Netlify preview
URL found for context ...: $PREVIEW_STATUS" and exit 1; ensure the failing path
happens before writing to GITHUB_OUTPUT and before the linkspector/baseUrl
generation so downstream steps never receive an invalid baseUrl.

---

Nitpick comments:
In `@website/netlify.toml`:
- Line 6: The Netlify ignore rule currently uses the repository root marker `--
./` in the `ignore` setting, causing builds to trigger for unrelated repo
changes; update the `ignore` value (the `ignore` key that contains the `"git
diff --quiet $CACHED_COMMIT_REF $COMMIT_REF -- ./"` string) to scope diffs to
website files only (e.g., replace `-- ./` with the website path(s) like `--
website/` or the specific directories/files that should trigger a site build) so
only changes under the website paths will trigger Netlify builds.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 6f40cab1-bc44-4406-8e38-23b4bf044ef9

📥 Commits

Reviewing files that changed from the base of the PR and between a6aca34 and edc67b1.

⛔ Files ignored due to path filters (2)
  • website/hack/generate-cli-docs/go.sum is excluded by !**/*.sum
  • website/package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (18)
  • .github/config/.markdownlint-cli2.yaml
  • .github/config/website-spellcheck.yml
  • .github/config/website-wordlist.txt
  • .github/config/website.markdownlint-cli2.yaml
  • .github/config/wordlist.txt
  • .github/workflows/markdown.yml
  • .github/workflows/website-manual-update-cli-docs.yaml
  • .github/workflows/website-publish-site.yaml
  • .github/workflows/website-update-cli-docs.yaml
  • .github/workflows/website-update-security-txt.yaml
  • .github/workflows/website-verify-markdown.yml
  • .github/workflows/website-verify-scripts.yml
  • website/LICENSE
  • website/LICENSES/Apache-2.0.txt
  • website/REUSE.toml
  • website/hack/generate-cli-docs/go.mod
  • website/netlify.toml
  • website/package.json
💤 Files with no reviewable changes (6)
  • website/LICENSE
  • .github/config/website-spellcheck.yml
  • website/REUSE.toml
  • .github/config/website-wordlist.txt
  • website/LICENSES/Apache-2.0.txt
  • .github/workflows/website-verify-markdown.yml

Comment thread .github/config/wordlist.txt Outdated
Comment thread .github/workflows/markdown.yml
Comment thread .github/workflows/markdown.yml
morri-son
morri-son previously approved these changes Apr 9, 2026

@frewilhelm frewilhelm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm, beside the findings from coderabbitai

Comment thread .github/workflows/markdown.yml
On-behalf-of: Gergely Brautigam <gergely.brautigam@sap.com>

Signed-off-by: Gergely Brautigam <182850+Skarlso@users.noreply.github.com>
@Skarlso

Skarlso commented Apr 9, 2026

Copy link
Copy Markdown
Contributor Author

fixed the typo the "clever" ai flagged :P

@morri-son morri-son merged commit 0a5db92 into open-component-model:main Apr 10, 2026
25 checks passed
ocmbot Bot pushed a commit that referenced this pull request Apr 10, 2026
…e website (#2231)

<!-- markdownlint-disable MD041 -->
#### What this PR does / why we need it

Refactor the website to remove some duplication and formalize the
actions.

#### Which issue(s) this PR fixes

Fixes open-component-model/ocm-project#1003

#### Testing

##### How to test the changes

<!--
Required files to test the changes:

.ocmconfig
```yaml
type: generic.config.ocm.software/v1
configurations:
  - type: credentials.config.ocm.software
    repositories:
      - repository:
          type: DockerConfig/v1
          dockerConfigFile: "~/.docker/config.json"
```

Commands that test the change:

```bash
ocm get cv xxx

ocm transfer xxx
```
-->

##### Verification

- [ ] I have tested the changes locally by running `ocm`

---------

Signed-off-by: Gergely Brautigam <182850+Skarlso@users.noreply.github.com> 0a5db92
morri-son pushed a commit to morri-son/open-component-model that referenced this pull request Apr 14, 2026
…e website (open-component-model#2231)

<!-- markdownlint-disable MD041 -->
#### What this PR does / why we need it

Refactor the website to remove some duplication and formalize the
actions.

#### Which issue(s) this PR fixes

Fixes open-component-model/ocm-project#1003

#### Testing

##### How to test the changes

<!--
Required files to test the changes:

.ocmconfig
```yaml
type: generic.config.ocm.software/v1
configurations:
  - type: credentials.config.ocm.software
    repositories:
      - repository:
          type: DockerConfig/v1
          dockerConfigFile: "~/.docker/config.json"
```

Commands that test the change:

```bash
ocm get cv xxx

ocm transfer xxx
```
-->

##### Verification

- [ ] I have tested the changes locally by running `ocm`

---------

Signed-off-by: Gergely Brautigam <182850+Skarlso@users.noreply.github.com>

Signed-off-by: Gerald Morrison (SAP) <gerald.morrison@sap.com>
morri-son pushed a commit to morri-son/open-component-model that referenced this pull request Apr 15, 2026
…e website (open-component-model#2231)

<!-- markdownlint-disable MD041 -->
#### What this PR does / why we need it

Refactor the website to remove some duplication and formalize the
actions.

#### Which issue(s) this PR fixes

Fixes open-component-model/ocm-project#1003

#### Testing

##### How to test the changes

<!--
Required files to test the changes:

.ocmconfig
```yaml
type: generic.config.ocm.software/v1
configurations:
  - type: credentials.config.ocm.software
    repositories:
      - repository:
          type: DockerConfig/v1
          dockerConfigFile: "~/.docker/config.json"
```

Commands that test the change:

```bash
ocm get cv xxx

ocm transfer xxx
```
-->

##### Verification

- [ ] I have tested the changes locally by running `ocm`

---------

Signed-off-by: Gergely Brautigam <182850+Skarlso@users.noreply.github.com>
Signed-off-by: Gerald Morrison (SAP) <gerald.morrison@sap.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

component/github-actions Changes on GitHub Actions or within `.github/` directory kind/feature new feature, enhancement, improvement, extension size/l Large

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Move OCM website to monorepo

3 participants