Replace 'prometheus' with 'pickle' - #2934
Closed
claude[bot] wants to merge 6 commits into
Closed
Conversation
✅ Deploy Preview succeeded!
To edit notification comments on pull requests, go to your Netlify project configuration. |
✅ Deploy Preview for calico-docs-preview-next ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
The literal find-and-replace in the previous commit renamed path segments and identifiers (sidebar doc ids, relative markdown/JSX links, static redirect/header rules) to "pickle" without renaming the underlying files, which are still named/located under "prometheus". Docusaurus is configured with onBrokenLinks: 'throw' and onBrokenMarkdownLinks: 'throw', so these dangling references failed the site build (and, downstream, the Netlify header/redirect rule checks that depend on a successful build). Fixes applied, scoped only to structural identifiers (doc IDs, file paths, route hrefs) - documentation prose keeps the "pickle" wording: - sidebars-calico*.js and all versioned *-sidebars.json: reverted sidebar "id" doc references (e.g. reference/felix/pickle -> reference/felix/prometheus) back to the real, unrenamed doc paths. - 89 relative markdown link targets across current and versioned .mdx docs (e.g. byo-pickle.mdx, ../pickle/index.mdx, felix/pickle.mdx) reverted to the real filenames they point to. - OpenShiftPrometheusOperator.js (6 copies, current + versioned): reverted a <Link href> route from /operations/monitor/pickle/support to the real /operations/monitor/prometheus/support route. - static/_headers and static/_redirects: reverted fully, since these are infra routing rules tied to the real (unrenamed) page paths. Verified with a repo-wide scan that no markdown link or sidebar doc id still points at a non-existent "pickle" path. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012uBgAMf3CkcrULiQQMJBTx
…place The blind prometheus->pickle string replace touched docId='...' values inside <DocCardLink> components in several reference/operations index pages, even though the underlying doc files/directories (e.g. reference/felix/prometheus.mdx, operations/monitor/prometheus/support.mdx) were never renamed. This produced doc ids like "reference/felix/pickle" and "operations/monitor/pickle/support" that point at nonexistent docs, which docusaurus build fails hard on during static-file rendering (both the default and BUILD_NEXT=true Netlify build targets). Reproduced locally with yarn 4.9.2 (via @yarnpkg/cli-dist, since corepack's fetch to repo.yarnpkg.com was blocked by the proxy) and confirmed both `yarn build` and `BUILD_NEXT=true yarn build` complete successfully after restoring the "prometheus" path segment in the affected docId values.
…ename The prometheus->pickle sed also touched real external URLs and identifiers that must resolve on the live internet: prometheus.io doc links, the prom/prometheus Docker Hub image name, the github.com/prometheus/client_golang attribution entry, and the matching skip-list/comment entries in the crawler link-check test. Revert just those occurrences back to "prometheus" while leaving all narrative/prose and internally-defined identifiers (e.g. the pickle-dashboard-svc example service name) as "pickle".
…name
Round 3 of link-checker fixes on this branch. The blind sed also corrupted
several categories of real external/absolute identifiers that the previous
two rounds missed:
- Third-party license attribution pages (static/calico/<ver>/licenses/*.html,
static/calico/3.26/licenses/index.html): every github.com/prometheus/*,
github.com/grpc-ecosystem/go-grpc-prometheus, github.com/prometheus-operator/
prometheus-operator, proxy.golang.org/.../prometheus/*, prometheus.io mailto
addresses, and "The Prometheus Authors" copyright lines - all real upstream
Go dependency records.
- {filesUrl}/manifests/tigera-prometheus-operator.yaml, .../prometheus-operator-crds.yaml
and .../manifests/prometheus/*-service-monitor.yaml references (calico-enterprise
and calico-cloud install/upgrade/monitoring docs, current + all versioned copies).
filesUrl resolves to the real downloads.tigera.io manifest host, so these were
literal dead links caught by the crawler's file-extension URL regex.
- __tests__/data/urls_with_canonicals.txt and urls_projectcalico.docs.tigera.io.txt:
fixture lists of real historical docs.tigera.io URLs used by the redirect/canonical
tests - restored the frozen legacy page slugs (felix/prometheus, kube-controllers/
prometheus, maintenance/monitor/prometheus, etc.) that will never be renamed.
- static/{calico,calico-enterprise,calico-cloud}/llms{,-full}.txt: these are
committed build artifacts (only regenerated by `make generate-llms`, not by the
normal `make netlify` build), so they still shipped the original broken
github.com/prometheus/*, prometheus.io, downloads.tigera.io manifest paths, and
absolute docs.tigera.io/.../reference/felix/prometheus-style links (the actual
page files were never renamed, only prose, so the real slug is still
"prometheus"). Reverted the same categories as above within these mirrors.
- __tmp_prometheus_job_name: a real Prometheus Operator relabeling label named
verbatim in the CRD API reference (_api.mdx) and its stale llms-full.txt mirror.
Left untouched: internally-renamed identifiers that are self-consistent across
the docs (tigera-prometheus-operator -> tigera-pickle-operator equivalents used
as local/example filenames, calico-node-pickle service/secret names, the
tigera-pickle namespace, the pickle-dashboard-svc example already in the crawler
skip list, and product image names like tigera/pickle-operator in releases.json).
Verified via the crawler's own link-extraction regex
(https?://[-a-zA-Z0-9()@:%._+~#?&/=]+) that no remaining "pickle" substring
appears in any real external URL repo-wide, other than the deliberately
skip-listed pickle-dashboard-svc example.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012uBgAMf3CkcrULiQQMJBTx
Contributor
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 258 out of 263 changed files in this pull request and generated no new comments.
Suppressed comments (7)
calico_versioned_docs/version-3.32/operations/monitor/monitor-component-visual.mdx:1
- Grafana datasource
typevalues are plugin identifiers (e.g.,prometheus). Changing this topicklewill make the provisioning snippet invalid unless a corresponding Grafana datasource plugin actually exists. If the backend is still Prometheus, keep the datasourcetypeasprometheus(while adjusting only the display name / service URL as needed). This same issue appears in the equivalent tutorial snippets across multiple versions/files in this PR.
calico-enterprise/operations/monitor/metrics/operator-metrics.mdx:1 - This command switches the Kubernetes kind from
prometheusruletopicklerule, but the YAML examples in this PR still usekind: PrometheusRuleelsewhere. Unless the CRD kind has actually been renamed,picklerulewill fail for users. Recommendation: keepprometheusrulein the kubectl example (and only change the namespace/name labels), or update the YAML kind consistently if the CRD truly changed.
calico-enterprise/operations/monitor/metrics/elasticsearch-and-fluentd-metrics.mdx:1 - Both entries point to
#create-pickle-alerts-for-elasticsearch, which is incorrect for the Fluentd bullet and will break in-page navigation. Additionally, the linked anchor no longer matches the (unchanged) section header### Create Prometheus alerts for Elasticsearch, so the generated heading ID likely won’t match. Recommendation: update the second bullet to target the Fluentd section, and keep anchors aligned with the actual section headings (either revert the anchors or rename the headings to match).
calico-enterprise_versioned_docs/version-3.24-1/reference/architecture/overview.mdx:1 - The link text still says “Prometheus …” but the anchors were changed to
#pickle-*. Unless the corresponding section headers were renamed to generate those new IDs, these links will be broken; even if headers were renamed, the mismatch between link text and anchor target is confusing. Recommendation: keep link text/anchors consistent with the actual section headings (rename both the heading and link text together, or only adjust the visible text).
calico-enterprise_versioned_docs/version-3.24-1/reference/architecture/overview.mdx:1 - The link text still says “Prometheus …” but the anchors were changed to
#pickle-*. Unless the corresponding section headers were renamed to generate those new IDs, these links will be broken; even if headers were renamed, the mismatch between link text and anchor target is confusing. Recommendation: keep link text/anchors consistent with the actual section headings (rename both the heading and link text together, or only adjust the visible text).
calico-cloud_versioned_docs/version-23-2/operations/monitor/prometheus/support.mdx:1 - Change “the require operator version” to “the required operator version”.
scripts/versions/main.go:1 - This line’s spacing/alignment differs from surrounding entries and suggests
gofmtwasn’t run after editing. Recommendation: rungofmton this file to keep formatting consistent and avoid noisy diffs in future edits.
- Grafana datasource "type" must remain the literal plugin identifier "prometheus" (calico monitor-component-visual.mdx, current + 3.29-3.32) - kubectl example resource name "picklerule" reverted to "prometheusrule" to match the unchanged `kind: PrometheusRule` CRD (configure-prometheus.mdx, license-options.mdx, operator-metrics.mdx, and versioned copies) - Broken #...pickle... anchor links reverted to match their unchanged target heading slugs (byo-prometheus.mdx, architecture overview.mdx, configure-resources.mdx, elasticsearch-and-fluentd-metrics.mdx, license-agent.mdx, and installation _api.mdx reference tables) Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012uBgAMf3CkcrULiQQMJBTx
Contributor
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 255 out of 257 changed files in this pull request and generated no new comments.
Suppressed comments (13)
static/files/read-all-crud-default-rbac.yaml:1
- Changing the RBAC
resourceNamesentry fromcalico-node-prometheus:9090tocalico-node-pickle:9090will break proxy access unless the Service is actually renamed in-cluster. If this PR is only documentation-oriented, revert this RBAC change; if the Service is being renamed, ensure the Service object/name and any consumers are updated consistently (and consider backward compatibility if users still have the old Service name).
static/files/min-ui-user-rbac.yaml:1 - Same as above: updating
resourceNamestocalico-node-pickle:9090will deny access in clusters that still exposecalico-node-prometheus:9090. Please align this with the actual Service name shipped/installed, or keep both names during any transition.
scripts/versions/main.go:1 - Renaming the
imageNameMapskey fromtigera-prometheus-servicetotigera-pickle-servicewill change how the versions script resolves image/component names, and will likely break lookups if upstream build/release metadata still uses the original key. If the underlying image/component name has not changed everywhere, keep the original key and (optionally) add an additional alias entry rather than replacing it.
calico_versioned_docs/version-3.32/reference/resources/kubecontrollersconfig.mdx:1 - These docs rename the CR field from
prometheusMetricsPorttopickleMetricsPort. Unless the actual Kubernetes API schema changed accordingly, this will be an incorrect field name and will cause user configs to stop working. If this PR is only renaming examples/labels, keep the field name as defined in the CRD (likely stillprometheusMetricsPort) and adjust only the descriptive text if needed.
calico_versioned_docs/version-3.32/reference/resources/kubecontrollersconfig.mdx:1 - These docs rename the CR field from
prometheusMetricsPorttopickleMetricsPort. Unless the actual Kubernetes API schema changed accordingly, this will be an incorrect field name and will cause user configs to stop working. If this PR is only renaming examples/labels, keep the field name as defined in the CRD (likely stillprometheusMetricsPort) and adjust only the descriptive text if needed.
calico/reference/installation/_api.mdx:1 - These API docs now claim
nodeMetricsPort/typhaMetricsPortserve “pickle metrics”. If the implementation still exposes Prometheus-format metrics (even if scraped by something else), this becomes misleading and may confuse users troubleshooting integrations. Consider keeping the protocol/format accurate (e.g., 'Prometheus metrics') and only changing names/namespaces where the platform truly changed resource names.
calico_versioned_docs/version-3.32/operations/monitor/monitor-component-visual.mdx:1 - This section mixes a 'pickle' service/datasource name with a Grafana datasource
" + "\"type\": \"prometheus\"" + "and with the heading 'Preparing Prometheus' (unchanged earlier in the file). If 'pickle' is not a real component and this is an accidental search/replace, these examples will not work as written. If 'pickle' is a real rename of Prometheus, consider keeping terminology consistent: either keep Prometheus naming throughout, or rename the headings and also update any fields that are expected to remain 'prometheus' (like Grafana datasource type) with a clear explanation.
calico_versioned_docs/version-3.32/operations/monitor/monitor-component-visual.mdx:1 - This section mixes a 'pickle' service/datasource name with a Grafana datasource
" + "\"type\": \"prometheus\"" + "and with the heading 'Preparing Prometheus' (unchanged earlier in the file). If 'pickle' is not a real component and this is an accidental search/replace, these examples will not work as written. If 'pickle' is a real rename of Prometheus, consider keeping terminology consistent: either keep Prometheus naming throughout, or rename the headings and also update any fields that are expected to remain 'prometheus' (like Grafana datasource type) with a clear explanation.
calico_versioned_docs/version-3.32/operations/monitor/monitor-component-visual.mdx:1 - This section mixes a 'pickle' service/datasource name with a Grafana datasource
" + "\"type\": \"prometheus\"" + "and with the heading 'Preparing Prometheus' (unchanged earlier in the file). If 'pickle' is not a real component and this is an accidental search/replace, these examples will not work as written. If 'pickle' is a real rename of Prometheus, consider keeping terminology consistent: either keep Prometheus naming throughout, or rename the headings and also update any fields that are expected to remain 'prometheus' (like Grafana datasource type) with a clear explanation.
calico_versioned_docs/version-3.32/operations/monitor/monitor-component-visual.mdx:1 - This section mixes a 'pickle' service/datasource name with a Grafana datasource
" + "\"type\": \"prometheus\"" + "and with the heading 'Preparing Prometheus' (unchanged earlier in the file). If 'pickle' is not a real component and this is an accidental search/replace, these examples will not work as written. If 'pickle' is a real rename of Prometheus, consider keeping terminology consistent: either keep Prometheus naming throughout, or rename the headings and also update any fields that are expected to remain 'prometheus' (like Grafana datasource type) with a clear explanation.
calico_versioned_docs/version-3.32/operations/monitor/monitor-component-visual.mdx:1 - This section mixes a 'pickle' service/datasource name with a Grafana datasource
" + "\"type\": \"prometheus\"" + "and with the heading 'Preparing Prometheus' (unchanged earlier in the file). If 'pickle' is not a real component and this is an accidental search/replace, these examples will not work as written. If 'pickle' is a real rename of Prometheus, consider keeping terminology consistent: either keep Prometheus naming throughout, or rename the headings and also update any fields that are expected to remain 'prometheus' (like Grafana datasource type) with a clear explanation.
src/utils/linkChecker.js:1 - Changing the skip-list hostname from
prometheus-dashboard-svc.calico-monitoring.svctopickle-dashboard-svc...will re-enable link checking for the original hostname unless it is removed everywhere else. If docs/examples still useprometheus-dashboard-svcanywhere, this will cause new link-check failures; consider skipping both hostnames during a transition (or only changing this once the docs are fully migrated and the in-cluster Service name is actually changed).
calico-cloud_versioned_docs/version-23-2/operations/monitor/prometheus/support.mdx:1 - Correct 'require operator version' to 'required operator version'.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Requested by Christopher Tauchen · Slack thread
Summary
Before: The docs repository contained numerous references to the lowercase string "prometheus" (e.g. in URLs, file paths, config keys, and body text).
After: All lowercase, literal occurrences of "prometheus" have been replaced with "pickle" across the repository. Capitalized "Prometheus" (the product/proper-noun references) was intentionally left untouched, since this was a case-sensitive replacement of the lowercase string only.
Scope: 403 text files changed (3973 insertions, 3973 deletions — a pure 1:1 string swap, no other content changes).
Excluded:
static/img/calico-enterprise/typha-felix.png,static/img/calico-cloud/vulnerability-detection.png) matched the byte sequence "prometheus" incidentally in their binary data and were left untouched to avoid corruption..../monitor/prometheus/,byo-prometheus.mdx) were not renamed — only in-file text content was replaced, per the literal find-and-replace request. Note this means some in-text links/prose now say "pickle" while pointing at or describing paths that still literally contain "prometheus" on disk.Product Version(s):
N/A — mechanical, repository-wide text substitution; not tied to a specific product version.
Issue:
N/A
Link to docs preview:
N/A
Additional information:
This is a literal, case-sensitive find-and-replace (
prometheus->pickle) requested via Slack, not a content/technical correction. No mention of "Prometheus" (capitalized) was altered.