Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 0 additions & 9 deletions .github/workflows/gh-pages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,18 +26,9 @@ jobs:
hugo-version: '0.133.1'
extended: true

- name: Setup Node.js
uses: actions/setup-node@v6
with:
node-version: '22'

- name: Install markdown generator dependencies
run: npm install asciidoctor @asciidoctor/reducer downdoc

- name: Build
run: |
hugo --minify
node utils/generate-md.js
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
Expand Down
11 changes: 3 additions & 8 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ UNAME=$(shell uname -s)
# Also because of the proxy 127.0.0.1 doesn't work as a bind address.
ifeq ($(UNAME), Darwin)
PODMAN_OPTS ?= -it --security-opt label=disable --pull=newer -p 4000:4000
HUGO_SERVER_OPTS = --bind 0.0.0.0
HUGO_SERVER_OPTS = --bind 0.0.0.0
else
PODMAN_OPTS ?= -it --security-opt label=disable --pull=newer --net=host
endif
Expand Down Expand Up @@ -35,17 +35,12 @@ test: htmltest ## Runs tests

.PHONY: build
build: ## Build the website locally in the public/ folder
podman run $(PODMAN_OPTS) -v $(PWD):/site:$(ATTRS) $(HOMEPAGE_CONTAINER) -c "hugo && node utils/generate-md.js"

.PHONY: generate-md
generate-md: ## Generate Markdown versions of all pages in public/
node utils/generate-md.js
podman run $(PODMAN_OPTS) -v $(PWD):/site:$(ATTRS) --entrypoint hugo $(HOMEPAGE_CONTAINER)

.PHONY: serve
serve: ## Build the website locally from a container and serve it
@echo "Serving via container. Browse to http://localhost:4000"
podman run $(PODMAN_OPTS) -v $(PWD):/site:$(ATTRS) $(HOMEPAGE_CONTAINER) -c "hugo && node utils/generate-md.js && hugo server -p 4000 $(HUGO_SERVER_OPTS)"

podman run $(PODMAN_OPTS) -v $(PWD):/site:$(ATTRS) --entrypoint hugo $(HOMEPAGE_CONTAINER) server -p 4000 $(HUGO_SERVER_OPTS)

.PHONY: htmltest
htmltest: build ## Runs htmltest against the site to find broken links
Expand Down
9 changes: 0 additions & 9 deletions config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -46,11 +46,6 @@ mediaTypes:
outputFormats:
patterns:
mediatype: application/json
llmstxt:
mediatype: text/plain
baseName: llms
isPlainText: true
notAlternative: true

menus:
main:
Expand All @@ -62,7 +57,3 @@ sitemap:
priority: 0.5
filename: sitemap.xml
enableRobotsTXT: true
outputs:
home:
- html
- llmstxt
28 changes: 0 additions & 28 deletions layouts/index.llmstxt.txt

This file was deleted.

5 changes: 0 additions & 5 deletions layouts/partials/head.html
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,6 @@
{{- /* Favicon */ -}}
<link rel="icon" type="image/x-icon" href="/favicon.ico">
<link rel="apple-touch-icon" sizes="180x180" href="/images/validated-patterns.png">

{{- /* Agent Discovery Links (RFC 8288 / RFC 9727) */ -}}
<link rel="api-catalog" href="/.well-known/api-catalog" type="application/linkset+json">
<link rel="service-doc" href="/llms.txt" type="text/plain">
<link rel="sitemap" href="/sitemap.xml" type="application/xml">

{{- /* DNS Prefetch and Preconnect for Performance */ -}}
<link rel="dns-prefetch" href="//use.fontawesome.com">
Expand Down
23 changes: 18 additions & 5 deletions layouts/partials/page-actions.html
Original file line number Diff line number Diff line change
@@ -1,4 +1,15 @@
{{- $mdUrl := printf "%sindex.md" .Permalink -}}
{{- $repo := .Site.Params.github_repo | default "validatedpatterns/docs" -}}
{{- $branch := .Site.Params.github_branch | default "main" -}}
{{- $filePath := "" -}}
{{- $rawUrl := "" -}}
{{- $sourceLabel := "View source" -}}
{{- if .File -}}
{{- $filePath = .File.Path -}}
{{- $rawUrl = printf "https://raw.githubusercontent.com/%s/%s/content/%s" $repo $branch $filePath -}}
{{- if strings.HasSuffix $filePath ".md" -}}
{{- $sourceLabel = "View as Markdown" -}}
{{- end -}}
{{- end -}}

<div class="page-actions" data-permalink="{{ .Permalink }}">
<button type="button" class="page-actions__button" data-action="copy-page" aria-label="Copy page content">
Expand All @@ -14,19 +25,21 @@
<i class="fas fa-link" aria-hidden="true"></i> Copy link
</button>
</li>
{{- if $rawUrl }}
<li role="menuitem">
<a href="{{ $mdUrl }}" target="_blank" rel="noopener">
<i class="fab fa-markdown" aria-hidden="true"></i> View as Markdown
<a href="{{ $rawUrl }}" target="_blank" rel="noopener">
<i class="fab fa-markdown" aria-hidden="true"></i> {{ $sourceLabel }}
</a>
</li>
{{- end }}
<li class="page-actions__divider" role="separator"></li>
<li role="menuitem">
<a href="https://claude.ai/new?q={{ printf "Read this page from the Validated Patterns docs: %sindex.md and answer questions about the content." .Permalink | urlquery }}" target="_blank" rel="noopener">
<a href="https://claude.ai/new?q={{ printf "Read and summarize this documentation page: %s" .Permalink | urlquery }}" target="_blank" rel="noopener">
<i class="fas fa-robot" aria-hidden="true"></i> Open in Claude
</a>
</li>
<li role="menuitem">
<a href="https://chatgpt.com/?q={{ printf "Read this page from the Validated Patterns docs: %sindex.md and answer questions about the content." .Permalink | urlquery }}" target="_blank" rel="noopener">
<a href="https://chatgpt.com/?q={{ printf "Read and summarize this documentation page: %s" .Permalink | urlquery }}" target="_blank" rel="noopener">
<i class="fas fa-comment-dots" aria-hidden="true"></i> Open in ChatGPT
</a>
</li>
Expand Down
33 changes: 0 additions & 33 deletions layouts/robots.txt

This file was deleted.

2 changes: 1 addition & 1 deletion layouts/search/list.html
Original file line number Diff line number Diff line change
Expand Up @@ -22,4 +22,4 @@ <h1 class="pf-c-title pf-m-4xl">
{{ partialCached "footer.html" . }}
</main>

{{ end }}
{{ end }}
23 changes: 0 additions & 23 deletions static/.well-known/agent-skills/index.json

This file was deleted.

23 changes: 0 additions & 23 deletions static/.well-known/api-catalog

This file was deleted.

30 changes: 0 additions & 30 deletions static/.well-known/mcp/server-card.json

This file was deleted.

19 changes: 5 additions & 14 deletions static/js/page-actions.js
Original file line number Diff line number Diff line change
Expand Up @@ -88,20 +88,11 @@
}

function copyPageContent(triggerEl) {
var mdUrl = window.location.href.replace(/\/?$/, "/") + "index.md";
fetch(mdUrl)
.then(function (res) {
if (!res.ok) throw new Error("not found");
return res.text();
})
.then(function (text) {
copyToClipboard(text, triggerEl);
})
.catch(function () {
var content = document.querySelector(".pf-c-content");
if (!content) return;
copyToClipboard(content.innerText || content.textContent, triggerEl);
});
var content = document.querySelector(".pf-c-content");
if (!content) return;

var text = content.innerText || content.textContent;
copyToClipboard(text, triggerEl);
}

function copyToClipboard(text, triggerEl) {
Expand Down
60 changes: 60 additions & 0 deletions static/llms.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# Validated Patterns

> Validated Patterns are GitOps-driven, automated, and rigorously tested application stacks for hybrid cloud deployments on Red Hat OpenShift. They go beyond traditional reference architectures by providing deployable, testable software artifacts with automated deployment that enhance speed, reliability, and consistency across environments.

Important notes:

- Validated Patterns are built on OpenShift Container Platform (Kubernetes) and leverage GitOps principles using ArgoCD, Red Hat Advanced Cluster Management (RHACM), and Tekton
- They are designed for IT architects, advanced developers, and system administrators familiar with Kubernetes and OpenShift
- Patterns can be deployed using either the OpenShift-based Validated Patterns framework or the Ansible GitOps Framework (AGOF)
- All patterns require an available OpenShift 4.12+ cluster with cluster-admin privileges, at least 8 CPU cores, 16GB RAM, and dynamic storage provisioning
- Each pattern includes values files (values-global.yaml, values-hub.yaml) for customization and secrets management without committing sensitive data to git repositories

## Getting Started

- [Patterns quick start](https://validatedpatterns.io/learn/quickstart/): Streamlined guide to deploying your first validated pattern with step-by-step instructions
- [About Validated Patterns](https://validatedpatterns.io/learn/about-validated-patterns/): Overview of what Validated Patterns are, why they exist, and their advantages over traditional reference architectures
- [Key concepts](https://validatedpatterns.io/learn/keyconcepts/): Core concepts and terminology used throughout the Validated Patterns framework
- [Workflow](https://validatedpatterns.io/learn/workflow/): Understanding the deployment workflow and GitOps processes

## Core Documentation

- [Validated Patterns frameworks](https://validatedpatterns.io/learn/validated_patterns_frameworks/): Overview of the OpenShift and Ansible-based frameworks
- [Using the Validated Pattern Operator](https://validatedpatterns.io/learn/using-validated-pattern-operator/): How to install and use the operator for pattern deployment
- [Values files](https://validatedpatterns.io/learn/values-files/): Understanding and customizing values files for pattern configuration
- [Secrets management](https://validatedpatterns.io/learn/secrets-management-in-the-Validated-Patterns-framework/): How secrets are managed securely in the framework
- [ClusterGroup in values files](https://validatedpatterns.io/learn/clustergroup-in-values-files/): Understanding ClusterGroup configuration for multi-cluster deployments
- [Importing a cluster](https://validatedpatterns.io/learn/importing-a-cluster/): How to import edge or managed clusters into the hub cluster

## Pattern Examples

- [Multicloud GitOps](https://validatedpatterns.io/patterns/multicloud-gitops/): Foundational pattern demonstrating GitOps across multiple clusters - recommended starting point
- [Industrial Edge](https://validatedpatterns.io/patterns/industrial-edge/): Edge computing pattern for manufacturing and industrial use cases
- [Medical Diagnosis](https://validatedpatterns.io/patterns/medical-diagnosis/): AI/ML pattern for medical imaging and diagnosis with Intel optimizations
- [Retail](https://validatedpatterns.io/patterns/retail/): Retail industry pattern with edge deployments for store locations
- [Ansible Edge GitOps](https://validatedpatterns.io/patterns/ansible-edge-gitops/): Pattern combining Ansible Automation Platform with GitOps at the edge
- [DevSecOps](https://validatedpatterns.io/patterns/devsecops/): Secure software supply chain and development pipeline pattern
- [RAG LLM GitOps](https://validatedpatterns.io/patterns/rag-llm-gitops/): Retrieval-Augmented Generation pattern for Large Language Models
- [OpenShift AI](https://validatedpatterns.io/patterns/openshift-ai/): Pattern for deploying and managing AI/ML workloads on OpenShift

## Advanced Topics

- [Pattern structure](https://validatedpatterns.io/learn/vp_structure_vp_pattern/): Deep dive into the structure and components of a validated pattern
- [Ansible GitOps Framework (AGOF)](https://validatedpatterns.io/learn/vp_agof/): Using Ansible for GitOps-based deployments
- [OpenShift framework](https://validatedpatterns.io/learn/vp_openshift_framework/): Details on the OpenShift-based framework
- [Infrastructure](https://validatedpatterns.io/learn/infrastructure/): Infrastructure considerations for pattern deployments
- [Cluster sizing](https://validatedpatterns.io/learn/ocp-cluster-general-sizing/): General guidance on OpenShift cluster sizing for patterns

## Contributing

- [Contribute to Validated Patterns](https://validatedpatterns.io/contribute/): How to contribute to the project
- [Documentation guidelines](https://validatedpatterns.io/contribute/documentation-guidelines/): Guidelines for contributing to documentation
- [Preview documentation locally](https://validatedpatterns.io/contribute/contribute-to-docs/): How to build and preview the documentation site

## Optional

- [FAQ](https://validatedpatterns.io/learn/faq/): Frequently asked questions about Validated Patterns
- [About pattern tiers and types](https://validatedpatterns.io/learn/about-pattern-tiers-types/): Understanding different pattern maturity levels and classifications
- [HashiCorp Vault](https://validatedpatterns.io/learn/vault/): Using Vault for secrets management in patterns
- [All available patterns](https://validatedpatterns.io/patterns/): Browse all 30+ patterns by industry, product, and use case

Loading