From a0955e5ad0cca849b1db1639184a8f105248823e Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Fri, 27 Mar 2026 16:04:07 +0200 Subject: [PATCH 01/25] Migrate development docs --- .docforge/contribute.yaml | 125 ++++++++++++++++++ .docforge/documentation/documentation.yaml | 38 ------ .../gardener-extensions/infrastructure.yaml | 8 ++ .../gardener-extensions/others.yaml | 6 + .docforge/documentation/other-components.yaml | 4 + .docforge/website.yaml | 3 + .gitignore | 1 + .vitepress/config.mts | 7 + .vitepress/theme/contribute-sidebar.ts | 22 +++ .../documentation/contribute/code/_index.md | 2 +- .../contribute/documentation/_index.md | 2 +- 11 files changed, 178 insertions(+), 40 deletions(-) create mode 100644 .docforge/contribute.yaml create mode 100644 .vitepress/theme/contribute-sidebar.ts diff --git a/.docforge/contribute.yaml b/.docforge/contribute.yaml new file mode 100644 index 000000000..213468ad0 --- /dev/null +++ b/.docforge/contribute.yaml @@ -0,0 +1,125 @@ +structure: + - file: _index.md + source: /website/documentation/contribute/_index.md + + - dir: code + structure: + - fileTree: /website/documentation/contribute/code + + - dir: documentation + structure: + - fileTree: /website/documentation/contribute/documentation + + - dir: gardener + structure: + - file: _index.md + frontmatter: + title: Gardener + description: The core component providing the extension API server of your Kubernetes cluster + weight: 30 + source: https://github.com/gardener/gardener/blob/master/docs/README.md + - dir: api-reference + structure: + - file: _index.md + frontmatter: + title: API Reference + weight: 10 + aliases: + - "/api-reference/" + source: https://github.com/gardener/gardener/blob/master/docs/api-reference/README.md + - fileTree: https://github.com/gardener/gardener/tree/master/docs/api-reference + excludeFiles: + - "README.md" + - dir: extensions + structure: + - file: _index.md + source: https://github.com/gardener/gardener/blob/master/docs/extensions/overview.md + frontmatter: + title: Extensions + weight: 30 + - dir: resources + structure: + - file: _index.md + frontmatter: + title: Resources + - fileTree: https://github.com/gardener/gardener/tree/master/docs/extensions + excludeFiles: + - "overview.md" + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener/tree/master/docs/development + + - dir: faq + structure: + - file: _index.md + frontmatter: + title: FAQ + description: Commonly asked questions about Gardener + weight: 80 + - fileTree: /website/documentation/faq + + - dir: other-components + structure: + - dir: machine-controller-manager + structure: + - dir: development + structure: + - fileTree: https://github.com/gardener/machine-controller-manager/tree/master/docs/development + - dir: etcd-druid + structure: + - dir: development + structure: + - fileTree: https://github.com/gardener/etcd-druid/tree/master/docs/development + - dir: dependency-watchdog + structure: + - dir: development + structure: + - fileTree: https://github.com/gardener/dependency-watchdog/tree/master/docs/development + + - dir: extensions + structure: + - dir: provider-aws + structure: + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-provider-aws/tree/master/docs/development + - dir: provider-gcp + structure: + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-provider-gcp/tree/master/docs/development + - dir: provider-azure + structure: + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-provider-azure/tree/master/docs/development + - dir: provider-alicloud + structure: + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-provider-alicloud/tree/master/docs/development + - dir: provider-openstack + structure: + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-provider-openstack/tree/master/docs/development + - dir: shoot-dns-service + structure: + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-shoot-dns-service/tree/master/docs/development + - dir: registry-cache + structure: + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-registry-cache/tree/main/docs/development + - dir: shoot-rsyslog-relp + structure: + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-shoot-rsyslog-relp/tree/main/docs/development + - dir: auditing + structure: + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-auditing/tree/main/docs/development diff --git a/.docforge/documentation/documentation.yaml b/.docforge/documentation/documentation.yaml index e2ebf67ad..c5c82a501 100644 --- a/.docforge/documentation/documentation.yaml +++ b/.docforge/documentation/documentation.yaml @@ -34,19 +34,6 @@ structure: description: The core component providing the extension API server of your Kubernetes cluster weight: 30 source: https://github.com/gardener/gardener/blob/master/docs/README.md - - dir: api-reference - structure: - - file: _index.md - frontmatter: - title: API Reference - weight: 10 - aliases: - - "/api-reference/" - persona: Developers - source: https://github.com/gardener/gardener/blob/master/docs/api-reference/README.md - - fileTree: https://github.com/gardener/gardener/tree/master/docs/api-reference - excludeFiles: - - "README.md" - dir: concepts structure: - file: _index.md @@ -56,22 +43,6 @@ structure: persona: Operators - fileTree: https://github.com/gardener/gardener/tree/master/docs/concepts - file: https://github.com/gardener/gardener/blob/master/logo/gardenadm-large.png - - dir: extensions - structure: - - file: _index.md - source: https://github.com/gardener/gardener/blob/master/docs/extensions/overview.md - frontmatter: - title: Extensions - weight: 30 - persona: Developers - - dir: resources - structure: - - file: _index.md - frontmatter: - title: Resources - - fileTree: https://github.com/gardener/gardener/tree/master/docs/extensions - excludeFiles: - - "overview.md" - dir: deployment structure: - file: _index.md @@ -80,9 +51,6 @@ structure: weight: 40 persona: Operators - fileTree: https://github.com/gardener/gardener/tree/master/docs/deployment - - dir: development - structure: - - fileTree: https://github.com/gardener/gardener/tree/master/docs/development - dir: monitoring structure: - file: _index.md @@ -224,14 +192,8 @@ structure: frontmatter: title: Concepts - file: https://github.com/gardener/gardenctl-v2/blob/master/logo/logo_gardener_cli_large.png - - dir: faq - structure: - - manifest: ./faq.yaml - file: glossary.md source: /website/documentation/glossary.md - dir: resources structure: - fileTree: /website/documentation/resources - - dir: contribute - structure: - - fileTree: /website/documentation/contribute diff --git a/.docforge/documentation/gardener-extensions/infrastructure.yaml b/.docforge/documentation/gardener-extensions/infrastructure.yaml index af761ed6f..160e3b905 100644 --- a/.docforge/documentation/gardener-extensions/infrastructure.yaml +++ b/.docforge/documentation/gardener-extensions/infrastructure.yaml @@ -10,6 +10,7 @@ structure: excludeFiles: - "usage/dual-stack-ingress.md" # already included in ../guides.yaml, avoiding duplicates - "usage/ipv6.md" # already included in ../guides.yaml, avoiding duplicates + - "development/" - dir: gardener-extension-provider-gcp structure: - file: _index.md @@ -21,6 +22,7 @@ structure: excludeFiles: - "usage/ipv6.md" # already included in ../guides.yaml, avoiding duplicates - "proposals/datadisk-image-restore.md" # no added value in including proposals + - "development/" - dir: gardener-extension-provider-azure structure: - file: _index.md @@ -29,6 +31,8 @@ structure: description: Gardener extension controller for the Azure cloud provider source: https://github.com/gardener/gardener-extension-provider-azure/blob/master/README.md - fileTree: https://github.com/gardener/gardener-extension-provider-azure/tree/master/docs + excludeFiles: + - "development/" - dir: gardener-extension-provider-alicloud structure: - file: _index.md @@ -37,6 +41,8 @@ structure: description: Gardener extension controller for the Alibaba cloud provider source: https://github.com/gardener/gardener-extension-provider-alicloud/blob/master/README.md - fileTree: https://github.com/gardener/gardener-extension-provider-alicloud/tree/master/docs + excludeFiles: + - "development/" - dir: gardener-extension-provider-openstack structure: - file: _index.md @@ -45,6 +51,8 @@ structure: description: Gardener extension controller for the OpenStack cloud provider source: https://github.com/gardener/gardener-extension-provider-openstack/blob/master/README.md - fileTree: https://github.com/gardener/gardener-extension-provider-openstack/tree/master/docs + excludeFiles: + - "development/" - dir: gardener-extension-provider-equinix-metal structure: - file: _index.md diff --git a/.docforge/documentation/gardener-extensions/others.yaml b/.docforge/documentation/gardener-extensions/others.yaml index 0de0ef957..2085a1f35 100644 --- a/.docforge/documentation/gardener-extensions/others.yaml +++ b/.docforge/documentation/gardener-extensions/others.yaml @@ -9,6 +9,7 @@ structure: - fileTree: https://github.com/gardener/gardener-extension-shoot-dns-service/tree/master/docs excludeFiles: - "usage/dns_names.md" # already included in ../guides.yaml, avoiding duplicates + - "development/" - dir: gardener-extension-shoot-cert-service structure: - file: _index.md @@ -60,6 +61,8 @@ structure: description: Gardener extension controller which deploys pull-through caches for container registries. source: https://github.com/gardener/gardener-extension-registry-cache/blob/main/README.md - fileTree: https://github.com/gardener/gardener-extension-registry-cache/tree/main/docs + excludeFiles: + - "development/" - dir: gardener-extension-shoot-rsyslog-relp structure: - file: _index.md @@ -68,6 +71,8 @@ structure: description: Gardener extension controller which configures the rsyslog and auditd services installed on shoot nodes. source: https://github.com/gardener/gardener-extension-shoot-rsyslog-relp/blob/main/README.md - fileTree: https://github.com/gardener/gardener-extension-shoot-rsyslog-relp/tree/main/docs + excludeFiles: + - "development/" - dir: gardener-extension-auditing structure: - file: _index.md @@ -81,6 +86,7 @@ structure: - operations/event-format.md - usage/configuration.md - usage/event-format.md + - "development/" - file: operations-configuration.md source: https://github.com/gardener/gardener-extension-auditing/blob/main/docs/operations/configuration.md - file: operations-event-format.md diff --git a/.docforge/documentation/other-components.yaml b/.docforge/documentation/other-components.yaml index 5f7b20e79..513234938 100644 --- a/.docforge/documentation/other-components.yaml +++ b/.docforge/documentation/other-components.yaml @@ -9,6 +9,8 @@ structure: description: Declarative way of managing machines for Kubernetes cluster source: https://github.com/gardener/machine-controller-manager/blob/master/README.md - fileTree: https://github.com/gardener/machine-controller-manager/tree/master/docs + excludeFiles: + - "development/" - dir: etcd-druid structure: - file: _index.md @@ -19,6 +21,7 @@ structure: - fileTree: https://github.com/gardener/etcd-druid/tree/master/docs excludeFiles: - "README.md" + - "development/" - dir: dependency-watchdog structure: - file: _index.md @@ -30,6 +33,7 @@ structure: - fileTree: https://github.com/gardener/dependency-watchdog/tree/master/docs excludeFiles: - "README.md" + - "development/" - dir: gardener-discovery-server structure: - file: _index.md diff --git a/.docforge/website.yaml b/.docforge/website.yaml index bfc8b9a23..ca3a22ae9 100644 --- a/.docforge/website.yaml +++ b/.docforge/website.yaml @@ -13,6 +13,9 @@ structure: - dir: docs structure: - manifest: ./documentation/documentation.yaml +- dir: contribute + structure: + - manifest: ./contribute.yaml - dir: about structure: - fileTree: /website/about diff --git a/.gitignore b/.gitignore index 8281b795e..5b16f1c11 100755 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,7 @@ hugo/.forestry hugo/** !.github/**/*.yaml +!.docforge/**/*.yaml content .vitepress/theme/utils/debug/** diff --git a/.vitepress/config.mts b/.vitepress/config.mts index 4f2db3d8d..97756d6d9 100644 --- a/.vitepress/config.mts +++ b/.vitepress/config.mts @@ -2,6 +2,7 @@ import { defineConfig, type SiteConfig } from 'vitepress' import { fileURLToPath, URL, pathToFileURL } from 'node:url' import blogSidebar from './theme/blog-sidebar.ts' import {communitySidebar} from "./theme/community-sidebar.ts"; +import { contributeSidebar } from "./theme/contribute-sidebar.ts"; import path from 'path' import { SearchResult } from 'minisearch' import { generateEnhancedDocsSidebar } from './theme/docs-sidebar.ts'; @@ -16,6 +17,7 @@ const siteSrcDir = 'hugo/content' const allSidebars = { '/blog/': blogSidebar()['/blog/'], '/community/': communitySidebar()['/community/'], + '/contribute/': contributeSidebar()['/contribute/'], '/docs/': generateEnhancedDocsSidebar()['/docs/'] }; @@ -129,6 +131,11 @@ function getNavConfig () { link: '/community', activeMatch: 'community', }, + { + text: 'Contribute', + link: '/contribute', + activeMatch: 'contribute', + }, ] } function getSearchConfig() { diff --git a/.vitepress/theme/contribute-sidebar.ts b/.vitepress/theme/contribute-sidebar.ts new file mode 100644 index 000000000..7c1e3ed69 --- /dev/null +++ b/.vitepress/theme/contribute-sidebar.ts @@ -0,0 +1,22 @@ +import { existsSync } from 'node:fs'; +import { join } from 'node:path'; +import { generateWeightSortedSidebar } from './utils/sidebar.ts'; + +export function contributeSidebar(): any { + const contributeDir = join(process.cwd(), 'hugo', 'content', 'contribute'); + + if (!existsSync(contributeDir)) { + return { '/contribute/': { items: [] } }; + } + + return generateWeightSortedSidebar({ + documentRootPath: '/hugo/content', + scanStartPath: 'contribute', + resolvePath: '/contribute/', + collapsed: true, + useTitleFromFileHeading: true, + useTitleFromFrontmatter: true, + useFolderLinkFromIndexFile: true, + useFolderTitleFromIndexFile: true, + }); +} diff --git a/website/documentation/contribute/code/_index.md b/website/documentation/contribute/code/_index.md index 859730119..c6f6498b4 100644 --- a/website/documentation/contribute/code/_index.md +++ b/website/documentation/contribute/code/_index.md @@ -1,6 +1,6 @@ --- title: Contributing Code -url: docs/contribute/code/ +url: /contribute/code/ persona: Developers --- diff --git a/website/documentation/contribute/documentation/_index.md b/website/documentation/contribute/documentation/_index.md index 7ce67fd1f..ab97852a3 100644 --- a/website/documentation/contribute/documentation/_index.md +++ b/website/documentation/contribute/documentation/_index.md @@ -1,6 +1,6 @@ --- title: Contributing Documentation -url: /contribute/docs/ +url: /contribute/documentation/ --- You are welcome to **contribute documentation** to Gardener. From 5e9cba5fa3689b07e78a3fa3f10dc66e68df76e9 Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Mon, 30 Mar 2026 11:32:13 +0300 Subject: [PATCH 02/25] Clean up transfer --- .docforge/contribute.yaml | 185 ++++++++++++++------- .docforge/documentation/documentation.yaml | 28 ++++ 2 files changed, 152 insertions(+), 61 deletions(-) diff --git a/.docforge/contribute.yaml b/.docforge/contribute.yaml index 213468ad0..3f59485f5 100644 --- a/.docforge/contribute.yaml +++ b/.docforge/contribute.yaml @@ -18,37 +18,21 @@ structure: description: The core component providing the extension API server of your Kubernetes cluster weight: 30 source: https://github.com/gardener/gardener/blob/master/docs/README.md - - dir: api-reference - structure: - - file: _index.md - frontmatter: - title: API Reference - weight: 10 - aliases: - - "/api-reference/" - source: https://github.com/gardener/gardener/blob/master/docs/api-reference/README.md - - fileTree: https://github.com/gardener/gardener/tree/master/docs/api-reference - excludeFiles: - - "README.md" - - dir: extensions - structure: - - file: _index.md - source: https://github.com/gardener/gardener/blob/master/docs/extensions/overview.md - frontmatter: - title: Extensions - weight: 30 - - dir: resources - structure: - - file: _index.md - frontmatter: - title: Resources - - fileTree: https://github.com/gardener/gardener/tree/master/docs/extensions - excludeFiles: - - "overview.md" - dir: development structure: - fileTree: https://github.com/gardener/gardener/tree/master/docs/development + - dir: dashboard + structure: + - file: _index.md + frontmatter: + title: Dashboard + description: The web UI for managing your projects and clusters + source: https://github.com/gardener/dashboard/blob/master/README.md + - dir: development + structure: + - fileTree: https://github.com/gardener/dashboard/tree/master/docs/development + - dir: faq structure: - file: _index.md @@ -60,66 +44,145 @@ structure: - dir: other-components structure: + - file: _index.md + frontmatter: + title: Other Components - dir: machine-controller-manager structure: + - file: _index.md + frontmatter: + title: Machine Controller Manager + description: Declarative way of managing machines for Kubernetes cluster + source: https://github.com/gardener/machine-controller-manager/blob/master/README.md - dir: development structure: - fileTree: https://github.com/gardener/machine-controller-manager/tree/master/docs/development - dir: etcd-druid structure: + - file: _index.md + frontmatter: + title: etcd-druid + description: A druid for etcd management in Gardener + source: https://github.com/gardener/etcd-druid/blob/master/README.md - dir: development structure: - fileTree: https://github.com/gardener/etcd-druid/tree/master/docs/development - dir: dependency-watchdog structure: + - file: _index.md + frontmatter: + title: Dependency Watchdog + description: A watchdog which actively looks out for disruption and recovery of critical services + source: https://github.com/gardener/dependency-watchdog/blob/master/README.md - dir: development structure: - fileTree: https://github.com/gardener/dependency-watchdog/tree/master/docs/development - dir: extensions structure: - - dir: provider-aws + - file: _index.md + frontmatter: + title: Extensions + - dir: infrastructure-extensions structure: - - dir: development + - file: _index.md + frontmatter: + title: Infrastructure Extensions + description: Gardener extension controllers for the different infrastructures + weight: 10 + - dir: gardener-extension-provider-aws structure: - - fileTree: https://github.com/gardener/gardener-extension-provider-aws/tree/master/docs/development - - dir: provider-gcp - structure: - - dir: development + - file: _index.md + frontmatter: + title: Provider AWS + description: Gardener extension controller for the AWS cloud provider + source: https://github.com/gardener/gardener-extension-provider-aws/blob/master/README.md + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-provider-aws/tree/master/docs/development + - dir: gardener-extension-provider-gcp structure: - - fileTree: https://github.com/gardener/gardener-extension-provider-gcp/tree/master/docs/development - - dir: provider-azure - structure: - - dir: development + - file: _index.md + frontmatter: + title: Provider GCP + description: Gardener extension controller for the GCP cloud provider + source: https://github.com/gardener/gardener-extension-provider-gcp/blob/master/README.md + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-provider-gcp/tree/master/docs/development + - dir: gardener-extension-provider-azure structure: - - fileTree: https://github.com/gardener/gardener-extension-provider-azure/tree/master/docs/development - - dir: provider-alicloud - structure: - - dir: development + - file: _index.md + frontmatter: + title: Provider Azure + description: Gardener extension controller for the Azure cloud provider + source: https://github.com/gardener/gardener-extension-provider-azure/blob/master/README.md + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-provider-azure/tree/master/docs/development + - dir: gardener-extension-provider-alicloud structure: - - fileTree: https://github.com/gardener/gardener-extension-provider-alicloud/tree/master/docs/development - - dir: provider-openstack - structure: - - dir: development + - file: _index.md + frontmatter: + title: Provider Alibaba Cloud + description: Gardener extension controller for the Alibaba cloud provider + source: https://github.com/gardener/gardener-extension-provider-alicloud/blob/master/README.md + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-provider-alicloud/tree/master/docs/development + - dir: gardener-extension-provider-openstack structure: - - fileTree: https://github.com/gardener/gardener-extension-provider-openstack/tree/master/docs/development - - dir: shoot-dns-service + - file: _index.md + frontmatter: + title: Provider OpenStack + description: Gardener extension controller for the OpenStack cloud provider + source: https://github.com/gardener/gardener-extension-provider-openstack/blob/master/README.md + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-provider-openstack/tree/master/docs/development + - dir: others structure: - - dir: development + - file: _index.md + frontmatter: + title: Others + weight: 50 + - dir: gardener-extension-shoot-dns-service structure: - - fileTree: https://github.com/gardener/gardener-extension-shoot-dns-service/tree/master/docs/development - - dir: registry-cache - structure: - - dir: development + - file: _index.md + frontmatter: + title: DNS Services + description: Gardener extension controller for DNS services for shoot clusters + source: https://github.com/gardener/gardener-extension-shoot-dns-service/blob/master/README.md + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-shoot-dns-service/tree/master/docs/development + - dir: gardener-extension-registry-cache structure: - - fileTree: https://github.com/gardener/gardener-extension-registry-cache/tree/main/docs/development - - dir: shoot-rsyslog-relp - structure: - - dir: development + - file: _index.md + frontmatter: + title: Registry Cache + description: Gardener extension controller which deploys pull-through caches for container registries + source: https://github.com/gardener/gardener-extension-registry-cache/blob/main/README.md + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-registry-cache/tree/main/docs/development + - dir: gardener-extension-shoot-rsyslog-relp structure: - - fileTree: https://github.com/gardener/gardener-extension-shoot-rsyslog-relp/tree/main/docs/development - - dir: auditing - structure: - - dir: development + - file: _index.md + frontmatter: + title: Node Audit Logging + description: Gardener extension controller which configures the rsyslog and auditd services installed on shoot nodes + source: https://github.com/gardener/gardener-extension-shoot-rsyslog-relp/blob/main/README.md + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-shoot-rsyslog-relp/tree/main/docs/development + - dir: gardener-extension-auditing structure: - - fileTree: https://github.com/gardener/gardener-extension-auditing/tree/main/docs/development + - file: _index.md + frontmatter: + title: Kubernetes Auditing + description: Gardener extension controller which deploys an auditlog forwarder sending Kubernetes Audit Events to configured backends + source: https://github.com/gardener/gardener-extension-auditing/blob/main/README.md + - dir: development + structure: + - fileTree: https://github.com/gardener/gardener-extension-auditing/tree/main/docs/development diff --git a/.docforge/documentation/documentation.yaml b/.docforge/documentation/documentation.yaml index c5c82a501..f78380184 100644 --- a/.docforge/documentation/documentation.yaml +++ b/.docforge/documentation/documentation.yaml @@ -34,6 +34,33 @@ structure: description: The core component providing the extension API server of your Kubernetes cluster weight: 30 source: https://github.com/gardener/gardener/blob/master/docs/README.md + - dir: api-reference + structure: + - file: _index.md + frontmatter: + title: API Reference + weight: 10 + aliases: + - "/api-reference/" + source: https://github.com/gardener/gardener/blob/master/docs/api-reference/README.md + - fileTree: https://github.com/gardener/gardener/tree/master/docs/api-reference + excludeFiles: + - "README.md" + - dir: extensions + structure: + - file: _index.md + source: https://github.com/gardener/gardener/blob/master/docs/extensions/overview.md + frontmatter: + title: Extensions + weight: 30 + - dir: resources + structure: + - file: _index.md + frontmatter: + title: Resources + - fileTree: https://github.com/gardener/gardener/tree/master/docs/extensions + excludeFiles: + - "overview.md" - dir: concepts structure: - file: _index.md @@ -163,6 +190,7 @@ structure: - fileTree: https://github.com/gardener/dashboard/tree/master/docs excludeFiles: - "README.md" + - "development/" - dir: gardenctl-v2 structure: - file: _index.md From bef628fed6a41ee473fba2cddd0681a02e95b63e Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Fri, 3 Apr 2026 16:32:42 +0300 Subject: [PATCH 03/25] Restructure general-information section and update contribute index --- .docforge/contribute.yaml | 9 +- website/documentation/contribute/_index.md | 109 ------------------ .../contribute/documentation/_index.md | 1 + .../{code => general-information}/_index.md | 5 +- .../{code => general-information}/cicd.md | 0 .../contributing-bigger-changes.md | 0 .../dependencies.md | 0 .../general-information/getting-started.md | 104 +++++++++++++++++ .../images/cicd-overview.png | Bin .../images/cicd-overview.sketch | Bin .../{code => general-information}/roles.md | 0 11 files changed, 114 insertions(+), 114 deletions(-) rename website/documentation/contribute/{code => general-information}/_index.md (88%) rename website/documentation/contribute/{code => general-information}/cicd.md (100%) rename website/documentation/contribute/{code => general-information}/contributing-bigger-changes.md (100%) rename website/documentation/contribute/{code => general-information}/dependencies.md (100%) create mode 100644 website/documentation/contribute/general-information/getting-started.md rename website/documentation/contribute/{code => general-information}/images/cicd-overview.png (100%) rename website/documentation/contribute/{code => general-information}/images/cicd-overview.sketch (100%) rename website/documentation/contribute/{code => general-information}/roles.md (100%) diff --git a/.docforge/contribute.yaml b/.docforge/contribute.yaml index 3f59485f5..2d66f68c9 100644 --- a/.docforge/contribute.yaml +++ b/.docforge/contribute.yaml @@ -2,9 +2,9 @@ structure: - file: _index.md source: /website/documentation/contribute/_index.md - - dir: code + - dir: general-information structure: - - fileTree: /website/documentation/contribute/code + - fileTree: /website/documentation/contribute/general-information - dir: documentation structure: @@ -16,7 +16,7 @@ structure: frontmatter: title: Gardener description: The core component providing the extension API server of your Kubernetes cluster - weight: 30 + weight: 20 source: https://github.com/gardener/gardener/blob/master/docs/README.md - dir: development structure: @@ -28,6 +28,7 @@ structure: frontmatter: title: Dashboard description: The web UI for managing your projects and clusters + weight: 30 source: https://github.com/gardener/dashboard/blob/master/README.md - dir: development structure: @@ -47,6 +48,7 @@ structure: - file: _index.md frontmatter: title: Other Components + weight: 50 - dir: machine-controller-manager structure: - file: _index.md @@ -83,6 +85,7 @@ structure: - file: _index.md frontmatter: title: Extensions + weight: 40 - dir: infrastructure-extensions structure: - file: _index.md diff --git a/website/documentation/contribute/_index.md b/website/documentation/contribute/_index.md index dce21516f..4d72c2640 100644 --- a/website/documentation/contribute/_index.md +++ b/website/documentation/contribute/_index.md @@ -1,116 +1,7 @@ --- title: Contribute description: Contributors guides for code and documentation -sidebar: true -menu: sln persona: Developers weight: 110 --- -# Contributing to Gardener - -## Welcome - -Welcome to the Contributor section of Gardener. Here you can learn how it is possible for you to contribute your ideas and expertise to the project and have it grow even more. - -## Prerequisites - -Before you begin contributing to Gardener, there are a couple of things you should become familiar with and complete first. - -### Code of Conduct - -All members of the Gardener community must abide by the -[Contributor Covenant](https://www.contributor-covenant.org/version/2/1/code_of_conduct/). -Only by respecting each other can we develop a productive, collaborative community. -Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting [gardener.opensource@sap.com](mailto:gardener.opensource@sap.com) and/or a Gardener project maintainer. - -### Developer Certificate of Origin - -Due to legal reasons, contributors will be asked to accept a Developer Certificate of Origin (DCO) before they submit the first pull request to this projects, this happens in an automated fashion during the submission process. We use [the standard DCO text of the Linux Foundation](https://developercertificate.org/). - -### License - -Your contributions to Gardener must be licensed properly: - -* Code contributions must be licensed under the [Apache 2.0 License](http://www.apache.org/licenses/LICENSE-2.0) -* Documentation contributions must be licensed under the [Creative Commons Attribution 4.0 International License](https://creativecommons.org/licenses/by/4.0/legalcode) - -## Contributing - -Gardener uses GitHub to manage reviews of pull requests. - -* If you are a new contributor see: [Steps to Contribute](#steps-to-contribute) - -* If you have a trivial fix or improvement, go ahead and create a pull request. - -* If you plan to do something more involved, first discuss your ideas - on our [mailing list](https://groups.google.com/forum/?fromgroups#!forum/gardener). - This will avoid unnecessary work and surely give you and us a good deal - of inspiration. - -* Relevant coding style guidelines are the [Go Code Review - Comments](https://github.com/golang/go/wiki/CodeReviewComments) - and the _Formatting and style_ section of Peter Bourgon's [Go: Best Practices for Production Environments](http://peter.bourgon.org/go-in-production/#formatting-and-style). - -### Steps to Contribute - -Should you wish to work on an issue, please claim it first by commenting on the GitHub issue that you want to work on it. This is to prevent duplicated efforts from contributors on the same issue. - -If you have questions about one of the issues, with or without the tag, please comment on them and one of the maintainers will clarify it. - -We kindly ask you to follow the [Pull Request Checklist](#pull-request-checklist) to ensure reviews can happen accordingly. - -### Pull Request Checklist - -* Branch from the master branch and, if needed, rebase to the current master branch before submitting your pull request. If it doesn't merge cleanly with master you may be asked to rebase your changes. - -* Commits should be as small as possible, while ensuring that each commit is correct independently (i.e., each commit should compile and pass tests). - -* Test your changes as thoroughly as possible before your commit them. Preferably, automate your testing with [unit / integration tests](https://github.com/gardener/gardener/blob/master/docs/development/testing.md). If tested manually, provide information about the test scope in the PR description (e.g., “Test passed: Upgrade K8s version from 1.14.5 to 1.15.2 on AWS, Azure, GCP, Alicloud, Openstack.”). - -* When creating the PR, follow the [Pull Request Creation Guidelines](./documentation/pr-guidelines.md) to help out the reviewers understand your changes. - -* Create *Work In Progress [WIP]* pull requests only if you need a clarification or an explicit review before you can continue your work item. - -* If your patch is not getting reviewed or you need a specific person to review it, you can @-reply a reviewer asking for a review in the pull request or a comment, or you can ask for a review on our [mailing list](https://groups.google.com/forum/?fromgroups#!forum/gardener). - -* If you add new features, make sure that they are documented in the [Gardener documentation](https://github.com/gardener/documentation). - -* If your changes are relevant for operators, consider to update the [ops toolbelt image](https://github.com/gardener/ops-toolbelt). - -* Post review: - * If a review requires you to change your commit(s), please test the changes again. - * Address the PR review feedback from a reviewer in a separate commit to make it easier for the reviewer to check how their feedback has been addressed. Do not mix PR review feedback from multiple reviews in a single commit. Create a separate commit per a review. - * Set respective comments in your GitHub review to resolved. - * Create a general PR comment to notify the reviewers that your amendments are ready for another round of review. - -### Contributing Bigger Changes - -If you want to contribute bigger changes to Gardener, such as when introducing new API resources and their corresponding controllers, or implementing an approved [Gardener Enhancement Proposal](https://github.com/gardener/gardener/tree/master/docs/proposals), follow the guidelines outlined in [Contributing Bigger Changes](./code/contributing-bigger-changes.md). - -### Adding Already Existing Documentation - -If you want to add documentation that already exists on GitHub to the website, you should update the central manifest instead of duplicating the content. To find out how to do that, see [Adding Already Existing Documentation](./documentation/adding-existing-documentation.md). - -## Issues and Planning - -We use GitHub issues to track bugs and enhancement requests. Please provide as much context as possible when you open an issue. The information you provide must be comprehensive enough to reproduce that issue for the assignee. Therefore, contributors may use but aren't restricted to the issue template provided by the Gardener maintainers. - -## Community - -### Slack - -We use the [Gardener Project workspace](https://gardener-cloud.slack.com) for public communication related to the Gardener project. -Check out the [Community Bio](../../community/_index.md) for an invite link to join the workspace. - -Historically, we used the [#gardener](https://kubernetes.slack.com/messages/gardener) channel in the [Kubernetes workspace](http://slack.k8s.io/). - -### Mailing List - -[gardener@googlegroups.com](https://groups.google.com/forum/?fromgroups#!forum/gardener) - -The mailing list is hosted through Google Groups. To receive the lists' emails, [join the group](https://support.google.com/groups/answer/1067205) as you would any other Google Group. - -### Other - -For additional channels where you can reach us, as well as links to our bi-weekly meetings, visit the [Community page](../../community/_index.md). diff --git a/website/documentation/contribute/documentation/_index.md b/website/documentation/contribute/documentation/_index.md index ab97852a3..77131d909 100644 --- a/website/documentation/contribute/documentation/_index.md +++ b/website/documentation/contribute/documentation/_index.md @@ -1,6 +1,7 @@ --- title: Contributing Documentation url: /contribute/documentation/ +weight: 60 --- You are welcome to **contribute documentation** to Gardener. diff --git a/website/documentation/contribute/code/_index.md b/website/documentation/contribute/general-information/_index.md similarity index 88% rename from website/documentation/contribute/code/_index.md rename to website/documentation/contribute/general-information/_index.md index c6f6498b4..3fc985289 100644 --- a/website/documentation/contribute/code/_index.md +++ b/website/documentation/contribute/general-information/_index.md @@ -1,7 +1,8 @@ --- -title: Contributing Code -url: /contribute/code/ +title: General Information +url: /contribute/general-information/ persona: Developers +weight: 10 --- You are welcome to **contribute code** to Gardener in order to fix a bug or to implement a new feature. diff --git a/website/documentation/contribute/code/cicd.md b/website/documentation/contribute/general-information/cicd.md similarity index 100% rename from website/documentation/contribute/code/cicd.md rename to website/documentation/contribute/general-information/cicd.md diff --git a/website/documentation/contribute/code/contributing-bigger-changes.md b/website/documentation/contribute/general-information/contributing-bigger-changes.md similarity index 100% rename from website/documentation/contribute/code/contributing-bigger-changes.md rename to website/documentation/contribute/general-information/contributing-bigger-changes.md diff --git a/website/documentation/contribute/code/dependencies.md b/website/documentation/contribute/general-information/dependencies.md similarity index 100% rename from website/documentation/contribute/code/dependencies.md rename to website/documentation/contribute/general-information/dependencies.md diff --git a/website/documentation/contribute/general-information/getting-started.md b/website/documentation/contribute/general-information/getting-started.md new file mode 100644 index 000000000..4ce7ed590 --- /dev/null +++ b/website/documentation/contribute/general-information/getting-started.md @@ -0,0 +1,104 @@ +--- +title: Getting Started +persona: Developers +weight: 5 +--- + +## Welcome + +Welcome to the Contributor section of Gardener. Here you can learn how it is possible for you to contribute your ideas and expertise to the project and have it grow even more. + +## Prerequisites + +Before you begin contributing to Gardener, there are a couple of things you should become familiar with and complete first. + +### Code of Conduct + +All members of the Gardener community must abide by the +[Contributor Covenant](https://www.contributor-covenant.org/version/2/1/code_of_conduct/). +Only by respecting each other can we develop a productive, collaborative community. +Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting [gardener.opensource@sap.com](mailto:gardener.opensource@sap.com) and/or a Gardener project maintainer. + +### Developer Certificate of Origin + +Due to legal reasons, contributors will be asked to accept a Developer Certificate of Origin (DCO) before they submit the first pull request to this projects, this happens in an automated fashion during the submission process. We use [the standard DCO text of the Linux Foundation](https://developercertificate.org/). + +### License + +Your contributions to Gardener must be licensed properly: + +* Code contributions must be licensed under the [Apache 2.0 License](http://www.apache.org/licenses/LICENSE-2.0) +* Documentation contributions must be licensed under the [Creative Commons Attribution 4.0 International License](https://creativecommons.org/licenses/by/4.0/legalcode) + +You need to sign the Contributor License Agreement. We are using *[CLA assistant](https://cla-assistant.io/)* providing a click-through workflow for accepting the CLA. For company contributors additionally the company needs to sign a corporate license agreement. + +## Contributing + +Gardener uses GitHub to manage reviews of pull requests. + +* If you are a new contributor see: [Steps to Contribute](#steps-to-contribute) + +* If you have a trivial fix or improvement, go ahead and create a pull request. + +* If you plan to do something more involved, first discuss your ideas + on our [mailing list](https://groups.google.com/forum/?fromgroups#!forum/gardener). + This will avoid unnecessary work and surely give you and us a good deal + of inspiration. + +* Relevant coding style guidelines are the [Go Code Review + Comments](https://github.com/golang/go/wiki/CodeReviewComments) + and the _Formatting and style_ section of Peter Bourgon's [Go: Best Practices for Production Environments](http://peter.bourgon.org/go-in-production/#formatting-and-style). + +### Steps to Contribute + +Should you wish to work on an issue, please claim it first by commenting on the GitHub issue that you want to work on it. This is to prevent duplicated efforts from contributors on the same issue. + +If you have questions about one of the issues, with or without the tag, please comment on them and one of the maintainers will clarify it. + +We kindly ask you to follow the [Pull Request Checklist](#pull-request-checklist) to ensure reviews can happen accordingly. + +### Pull Request Checklist + +* Branch from the master branch and, if needed, rebase to the current master branch before submitting your pull request. If it doesn't merge cleanly with master you may be asked to rebase your changes. + +* Commits should be as small as possible, while ensuring that each commit is correct independently (i.e., each commit should compile and pass tests). + +* Test your changes as thoroughly as possible before your commit them. Preferably, automate your testing with [unit / integration tests](https://github.com/gardener/gardener/blob/master/docs/development/testing.md). If tested manually, provide information about the test scope in the PR description (e.g., "Test passed: Upgrade K8s version from 1.14.5 to 1.15.2 on AWS, Azure, GCP, Alicloud, Openstack."). + +* When creating the PR, make your [Pull Request description](../documentation/pr-guidelines.md) as detailed as possible to help out the reviewers. + +* Create *Work In Progress [WIP]* pull requests only if you need a clarification or an explicit review before you can continue your work item. + +* If your patch is not getting reviewed or you need a specific person to review it, you can @-reply a reviewer asking for a review in the pull request or a comment, or you can ask for a review on our [mailing list](https://groups.google.com/forum/?fromgroups#!forum/gardener). + +* If you add new features, make sure that they are documented in the [Gardener documentation](https://github.com/gardener/documentation). + +* Post review: + * If a review requires you to change your commit(s), please test the changes again. + * Address the PR review feedback from a reviewer in a separate commit to make it easier for the reviewer to check how their feedback has been addressed. Do not mix PR review feedback from multiple reviews in a single commit. Create a separate commit per a review. + * Set respective comments in your GitHub review to resolved. + * Create a general PR comment to notify the reviewers that your amendments are ready for another round of review. + +### Contributing Bigger Changes + +If you want to contribute bigger changes to Gardener, such as when introducing new API resources and their corresponding controllers, or implementing an approved [Gardener Enhancement Proposal](https://github.com/gardener/gardener/tree/master/docs/proposals), follow the guidelines outlined in [Contributing Bigger Changes](./contributing-bigger-changes.md). + +### Adding Already Existing Documentation + +If you want to add documentation that already exists on GitHub to the website, you should update the central manifest instead of duplicating the content. To find out how to do that, see [Adding Already Existing Documentation](../documentation/adding-existing-documentation.md). + +## Issues and Planning + +We use GitHub issues to track bugs and enhancement requests. Please provide as much context as possible when you open an issue. The information you provide must be comprehensive enough to reproduce that issue for the assignee. Therefore, contributors may use but aren't restricted to the issue template provided by the Gardener maintainers. + +## Community + +### Slack + +We use the [Gardener Project workspace](https://gardener-cloud.slack.com) for public communication related to the Gardener project. + +### Mailing List + +[gardener@googlegroups.com](https://groups.google.com/forum/?fromgroups#!forum/gardener) + +The mailing list is hosted through Google Groups. To receive the lists' emails, [join the group](https://support.google.com/groups/answer/1067205) as you would any other Google Group. diff --git a/website/documentation/contribute/code/images/cicd-overview.png b/website/documentation/contribute/general-information/images/cicd-overview.png similarity index 100% rename from website/documentation/contribute/code/images/cicd-overview.png rename to website/documentation/contribute/general-information/images/cicd-overview.png diff --git a/website/documentation/contribute/code/images/cicd-overview.sketch b/website/documentation/contribute/general-information/images/cicd-overview.sketch similarity index 100% rename from website/documentation/contribute/code/images/cicd-overview.sketch rename to website/documentation/contribute/general-information/images/cicd-overview.sketch diff --git a/website/documentation/contribute/code/roles.md b/website/documentation/contribute/general-information/roles.md similarity index 100% rename from website/documentation/contribute/code/roles.md rename to website/documentation/contribute/general-information/roles.md From de6b0acc9b47957da6874bdeb8395de37f5d02dc Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Tue, 14 Apr 2026 11:29:00 +0300 Subject: [PATCH 04/25] Update frontmatter descriptions --- .docforge/contribute.yaml | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/.docforge/contribute.yaml b/.docforge/contribute.yaml index 2d66f68c9..2b3f907db 100644 --- a/.docforge/contribute.yaml +++ b/.docforge/contribute.yaml @@ -15,7 +15,7 @@ structure: - file: _index.md frontmatter: title: Gardener - description: The core component providing the extension API server of your Kubernetes cluster + description: Developer documentation for the core Gardener component weight: 20 source: https://github.com/gardener/gardener/blob/master/docs/README.md - dir: development @@ -27,7 +27,7 @@ structure: - file: _index.md frontmatter: title: Dashboard - description: The web UI for managing your projects and clusters + description: Developer documentation for the Gardener web UI weight: 30 source: https://github.com/gardener/dashboard/blob/master/README.md - dir: development @@ -54,7 +54,7 @@ structure: - file: _index.md frontmatter: title: Machine Controller Manager - description: Declarative way of managing machines for Kubernetes cluster + description: Developer documentation for the machine controller manager source: https://github.com/gardener/machine-controller-manager/blob/master/README.md - dir: development structure: @@ -64,7 +64,7 @@ structure: - file: _index.md frontmatter: title: etcd-druid - description: A druid for etcd management in Gardener + description: Developer documentation for the etcd management operator source: https://github.com/gardener/etcd-druid/blob/master/README.md - dir: development structure: @@ -74,7 +74,7 @@ structure: - file: _index.md frontmatter: title: Dependency Watchdog - description: A watchdog which actively looks out for disruption and recovery of critical services + description: Developer documentation for the dependency watchdog source: https://github.com/gardener/dependency-watchdog/blob/master/README.md - dir: development structure: @@ -91,14 +91,14 @@ structure: - file: _index.md frontmatter: title: Infrastructure Extensions - description: Gardener extension controllers for the different infrastructures + description: Developer documentation for cloud provider extensions weight: 10 - dir: gardener-extension-provider-aws structure: - file: _index.md frontmatter: title: Provider AWS - description: Gardener extension controller for the AWS cloud provider + description: Developer documentation for the AWS cloud provider extension source: https://github.com/gardener/gardener-extension-provider-aws/blob/master/README.md - dir: development structure: @@ -108,7 +108,7 @@ structure: - file: _index.md frontmatter: title: Provider GCP - description: Gardener extension controller for the GCP cloud provider + description: Developer documentation for the GCP cloud provider extension source: https://github.com/gardener/gardener-extension-provider-gcp/blob/master/README.md - dir: development structure: @@ -118,7 +118,7 @@ structure: - file: _index.md frontmatter: title: Provider Azure - description: Gardener extension controller for the Azure cloud provider + description: Developer documentation for the Azure cloud provider extension source: https://github.com/gardener/gardener-extension-provider-azure/blob/master/README.md - dir: development structure: @@ -128,7 +128,7 @@ structure: - file: _index.md frontmatter: title: Provider Alibaba Cloud - description: Gardener extension controller for the Alibaba cloud provider + description: Developer documentation for the Alibaba Cloud provider extension source: https://github.com/gardener/gardener-extension-provider-alicloud/blob/master/README.md - dir: development structure: @@ -138,7 +138,7 @@ structure: - file: _index.md frontmatter: title: Provider OpenStack - description: Gardener extension controller for the OpenStack cloud provider + description: Developer documentation for the OpenStack cloud provider extension source: https://github.com/gardener/gardener-extension-provider-openstack/blob/master/README.md - dir: development structure: @@ -154,7 +154,7 @@ structure: - file: _index.md frontmatter: title: DNS Services - description: Gardener extension controller for DNS services for shoot clusters + description: Developer documentation for the DNS services extension source: https://github.com/gardener/gardener-extension-shoot-dns-service/blob/master/README.md - dir: development structure: @@ -164,7 +164,7 @@ structure: - file: _index.md frontmatter: title: Registry Cache - description: Gardener extension controller which deploys pull-through caches for container registries + description: Developer documentation for the registry cache extension source: https://github.com/gardener/gardener-extension-registry-cache/blob/main/README.md - dir: development structure: @@ -174,7 +174,7 @@ structure: - file: _index.md frontmatter: title: Node Audit Logging - description: Gardener extension controller which configures the rsyslog and auditd services installed on shoot nodes + description: Developer documentation for the node audit logging extension source: https://github.com/gardener/gardener-extension-shoot-rsyslog-relp/blob/main/README.md - dir: development structure: @@ -184,7 +184,7 @@ structure: - file: _index.md frontmatter: title: Kubernetes Auditing - description: Gardener extension controller which deploys an auditlog forwarder sending Kubernetes Audit Events to configured backends + description: Developer documentation for the Kubernetes auditing extension source: https://github.com/gardener/gardener-extension-auditing/blob/main/README.md - dir: development structure: From f546b9790a6a5a2dc6f3102d68beaaebe61e624c Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Tue, 14 Apr 2026 11:35:12 +0300 Subject: [PATCH 05/25] Remove CI/CD doc - Delete cicd.md from general-information --- .../contribute/general-information/cicd.md | 27 ------------------- 1 file changed, 27 deletions(-) delete mode 100644 website/documentation/contribute/general-information/cicd.md diff --git a/website/documentation/contribute/general-information/cicd.md b/website/documentation/contribute/general-information/cicd.md deleted file mode 100644 index 132367fa9..000000000 --- a/website/documentation/contribute/general-information/cicd.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: CI/CD ---- - -## CI/CD - -As an execution environment for CI/CD workloads, we use [Concourse](https://concourse-ci.org). -We however abstract from the underlying "build executor" and instead offer a -`Pipeline Definition Contract`, through which components declare their build pipelines as -required. - -![Overview](./images/cicd-overview.png) - -In order to run continuous delivery workloads for all components contributing to the -[Gardener](https://github.com/gardener) project, we operate a central service. - -Typical workloads encompass the execution of tests and builds of a variety of technologies, -as well as building and publishing container images, typically containing build results. - -We are building our CI/CD offering around some principles: - -* *container-native* - each workload is executed within a container environment. Components may customise used container images -* *automation* - pipelines are generated without manual interaction -* *self-service* - components customise their pipelines by changing their sources -* *standardisation* - -**Learn more on our: [Build Pipeline Reference Manual](https://gardener.github.io/cc-utils/)** From cdc8b853a6853fdf0d41f7402a9016c3134025c6 Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Tue, 14 Apr 2026 12:56:02 +0300 Subject: [PATCH 06/25] Rename general-information to contribution-process, getting-started to how-to-contribute --- .docforge/contribute.yaml | 4 ++-- .../_index.md | 4 ++-- .../contributing-bigger-changes.md | 0 .../dependencies.md | 0 .../how-to-contribute.md} | 2 +- .../images/cicd-overview.png | Bin .../images/cicd-overview.sketch | Bin .../roles.md | 0 8 files changed, 5 insertions(+), 5 deletions(-) rename website/documentation/contribute/{general-information => contribution-process}/_index.md (90%) rename website/documentation/contribute/{general-information => contribution-process}/contributing-bigger-changes.md (100%) rename website/documentation/contribute/{general-information => contribution-process}/dependencies.md (100%) rename website/documentation/contribute/{general-information/getting-started.md => contribution-process/how-to-contribute.md} (99%) rename website/documentation/contribute/{general-information => contribution-process}/images/cicd-overview.png (100%) rename website/documentation/contribute/{general-information => contribution-process}/images/cicd-overview.sketch (100%) rename website/documentation/contribute/{general-information => contribution-process}/roles.md (100%) diff --git a/.docforge/contribute.yaml b/.docforge/contribute.yaml index 2b3f907db..a7f3bf0cf 100644 --- a/.docforge/contribute.yaml +++ b/.docforge/contribute.yaml @@ -2,9 +2,9 @@ structure: - file: _index.md source: /website/documentation/contribute/_index.md - - dir: general-information + - dir: contribution-process structure: - - fileTree: /website/documentation/contribute/general-information + - fileTree: /website/documentation/contribute/contribution-process - dir: documentation structure: diff --git a/website/documentation/contribute/general-information/_index.md b/website/documentation/contribute/contribution-process/_index.md similarity index 90% rename from website/documentation/contribute/general-information/_index.md rename to website/documentation/contribute/contribution-process/_index.md index 3fc985289..c6af937a9 100644 --- a/website/documentation/contribute/general-information/_index.md +++ b/website/documentation/contribute/contribution-process/_index.md @@ -1,6 +1,6 @@ --- -title: General Information -url: /contribute/general-information/ +title: Contribution Process +url: /contribute/contribution-process/ persona: Developers weight: 10 --- diff --git a/website/documentation/contribute/general-information/contributing-bigger-changes.md b/website/documentation/contribute/contribution-process/contributing-bigger-changes.md similarity index 100% rename from website/documentation/contribute/general-information/contributing-bigger-changes.md rename to website/documentation/contribute/contribution-process/contributing-bigger-changes.md diff --git a/website/documentation/contribute/general-information/dependencies.md b/website/documentation/contribute/contribution-process/dependencies.md similarity index 100% rename from website/documentation/contribute/general-information/dependencies.md rename to website/documentation/contribute/contribution-process/dependencies.md diff --git a/website/documentation/contribute/general-information/getting-started.md b/website/documentation/contribute/contribution-process/how-to-contribute.md similarity index 99% rename from website/documentation/contribute/general-information/getting-started.md rename to website/documentation/contribute/contribution-process/how-to-contribute.md index 4ce7ed590..f95694bb0 100644 --- a/website/documentation/contribute/general-information/getting-started.md +++ b/website/documentation/contribute/contribution-process/how-to-contribute.md @@ -1,5 +1,5 @@ --- -title: Getting Started +title: How to Contribute persona: Developers weight: 5 --- diff --git a/website/documentation/contribute/general-information/images/cicd-overview.png b/website/documentation/contribute/contribution-process/images/cicd-overview.png similarity index 100% rename from website/documentation/contribute/general-information/images/cicd-overview.png rename to website/documentation/contribute/contribution-process/images/cicd-overview.png diff --git a/website/documentation/contribute/general-information/images/cicd-overview.sketch b/website/documentation/contribute/contribution-process/images/cicd-overview.sketch similarity index 100% rename from website/documentation/contribute/general-information/images/cicd-overview.sketch rename to website/documentation/contribute/contribution-process/images/cicd-overview.sketch diff --git a/website/documentation/contribute/general-information/roles.md b/website/documentation/contribute/contribution-process/roles.md similarity index 100% rename from website/documentation/contribute/general-information/roles.md rename to website/documentation/contribute/contribution-process/roles.md From 25fdcb05f9575cef81eaf7f88b07ba66bb15ca62 Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Tue, 14 Apr 2026 15:06:24 +0300 Subject: [PATCH 07/25] Move FAQ from Contribute section back to general documentation --- .docforge/contribute.yaml | 9 --------- .docforge/documentation/documentation.yaml | 8 ++++++++ 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/.docforge/contribute.yaml b/.docforge/contribute.yaml index a7f3bf0cf..b539b0ea2 100644 --- a/.docforge/contribute.yaml +++ b/.docforge/contribute.yaml @@ -34,15 +34,6 @@ structure: structure: - fileTree: https://github.com/gardener/dashboard/tree/master/docs/development - - dir: faq - structure: - - file: _index.md - frontmatter: - title: FAQ - description: Commonly asked questions about Gardener - weight: 80 - - fileTree: /website/documentation/faq - - dir: other-components structure: - file: _index.md diff --git a/.docforge/documentation/documentation.yaml b/.docforge/documentation/documentation.yaml index f78380184..d35cfdd26 100644 --- a/.docforge/documentation/documentation.yaml +++ b/.docforge/documentation/documentation.yaml @@ -220,6 +220,14 @@ structure: frontmatter: title: Concepts - file: https://github.com/gardener/gardenctl-v2/blob/master/logo/logo_gardener_cli_large.png + - dir: faq + structure: + - file: _index.md + frontmatter: + title: FAQ + description: Commonly asked questions about Gardener + weight: 80 + - fileTree: /website/documentation/faq - file: glossary.md source: /website/documentation/glossary.md - dir: resources From 185023b4d38c52b6eae3099237f16496d8024d6f Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Tue, 14 Apr 2026 15:18:52 +0300 Subject: [PATCH 08/25] Rename 'Contributing Documentation' section to 'Documentation' --- website/documentation/contribute/documentation/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/documentation/contribute/documentation/_index.md b/website/documentation/contribute/documentation/_index.md index 77131d909..c56ce3629 100644 --- a/website/documentation/contribute/documentation/_index.md +++ b/website/documentation/contribute/documentation/_index.md @@ -1,5 +1,5 @@ --- -title: Contributing Documentation +title: Documentation url: /contribute/documentation/ weight: 60 --- From eff80ed9c1e236eadc7c46dfc5d7a130f3c4e744 Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Tue, 14 Apr 2026 15:29:08 +0300 Subject: [PATCH 09/25] Remove 'others' intermediary directory from Extensions section --- .docforge/contribute.yaml | 72 ++++++++++++++++++--------------------- 1 file changed, 33 insertions(+), 39 deletions(-) diff --git a/.docforge/contribute.yaml b/.docforge/contribute.yaml index b539b0ea2..2c9dd5c60 100644 --- a/.docforge/contribute.yaml +++ b/.docforge/contribute.yaml @@ -134,49 +134,43 @@ structure: - dir: development structure: - fileTree: https://github.com/gardener/gardener-extension-provider-openstack/tree/master/docs/development - - dir: others + - dir: gardener-extension-shoot-dns-service structure: - file: _index.md frontmatter: - title: Others - weight: 50 - - dir: gardener-extension-shoot-dns-service + title: DNS Services + description: Developer documentation for the DNS services extension + source: https://github.com/gardener/gardener-extension-shoot-dns-service/blob/master/README.md + - dir: development structure: - - file: _index.md - frontmatter: - title: DNS Services - description: Developer documentation for the DNS services extension - source: https://github.com/gardener/gardener-extension-shoot-dns-service/blob/master/README.md - - dir: development - structure: - - fileTree: https://github.com/gardener/gardener-extension-shoot-dns-service/tree/master/docs/development - - dir: gardener-extension-registry-cache + - fileTree: https://github.com/gardener/gardener-extension-shoot-dns-service/tree/master/docs/development + - dir: gardener-extension-registry-cache + structure: + - file: _index.md + frontmatter: + title: Registry Cache + description: Developer documentation for the registry cache extension + source: https://github.com/gardener/gardener-extension-registry-cache/blob/main/README.md + - dir: development structure: - - file: _index.md - frontmatter: - title: Registry Cache - description: Developer documentation for the registry cache extension - source: https://github.com/gardener/gardener-extension-registry-cache/blob/main/README.md - - dir: development - structure: - - fileTree: https://github.com/gardener/gardener-extension-registry-cache/tree/main/docs/development - - dir: gardener-extension-shoot-rsyslog-relp + - fileTree: https://github.com/gardener/gardener-extension-registry-cache/tree/main/docs/development + - dir: gardener-extension-shoot-rsyslog-relp + structure: + - file: _index.md + frontmatter: + title: Node Audit Logging + description: Developer documentation for the node audit logging extension + source: https://github.com/gardener/gardener-extension-shoot-rsyslog-relp/blob/main/README.md + - dir: development structure: - - file: _index.md - frontmatter: - title: Node Audit Logging - description: Developer documentation for the node audit logging extension - source: https://github.com/gardener/gardener-extension-shoot-rsyslog-relp/blob/main/README.md - - dir: development - structure: - - fileTree: https://github.com/gardener/gardener-extension-shoot-rsyslog-relp/tree/main/docs/development - - dir: gardener-extension-auditing + - fileTree: https://github.com/gardener/gardener-extension-shoot-rsyslog-relp/tree/main/docs/development + - dir: gardener-extension-auditing + structure: + - file: _index.md + frontmatter: + title: Kubernetes Auditing + description: Developer documentation for the Kubernetes auditing extension + source: https://github.com/gardener/gardener-extension-auditing/blob/main/README.md + - dir: development structure: - - file: _index.md - frontmatter: - title: Kubernetes Auditing - description: Developer documentation for the Kubernetes auditing extension - source: https://github.com/gardener/gardener-extension-auditing/blob/main/README.md - - dir: development - structure: - - fileTree: https://github.com/gardener/gardener-extension-auditing/tree/main/docs/development + - fileTree: https://github.com/gardener/gardener-extension-auditing/tree/main/docs/development From 9a83a3eda05a3c765c6525153050a36f427fdd16 Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Wed, 15 Apr 2026 10:43:17 +0300 Subject: [PATCH 10/25] Create section for general dev guidelines and guides --- .docforge/contribute.yaml | 72 +++++++++++++++++++ .../contribution-process/dependencies.md | 48 ------------- 2 files changed, 72 insertions(+), 48 deletions(-) delete mode 100644 website/documentation/contribute/contribution-process/dependencies.md diff --git a/.docforge/contribute.yaml b/.docforge/contribute.yaml index 2c9dd5c60..66ed4ff66 100644 --- a/.docforge/contribute.yaml +++ b/.docforge/contribute.yaml @@ -6,6 +6,54 @@ structure: structure: - fileTree: /website/documentation/contribute/contribution-process + - dir: start-developing + structure: + - file: _index.md + frontmatter: + title: Start Developing + description: Developer documentation for getting started with local Gardener development + weight: 15 + - file: local_setup.md + frontmatter: + weight: 10 + source: https://github.com/gardener/gardener/blob/master/docs/development/local_setup.md + - file: getting_started_locally.md + frontmatter: + weight: 20 + source: https://github.com/gardener/gardener/blob/master/docs/deployment/getting_started_locally.md + - file: dependencies.md + frontmatter: + weight: 30 + source: https://github.com/gardener/gardener/blob/master/docs/development/dependencies.md + - file: testing.md + frontmatter: + weight: 40 + source: https://github.com/gardener/gardener/blob/master/docs/development/testing.md + - file: testmachinery_tests.md + frontmatter: + weight: 50 + source: https://github.com/gardener/gardener/blob/master/docs/development/testmachinery_tests.md + - file: kubernetes-clients.md + frontmatter: + weight: 60 + source: https://github.com/gardener/gardener/blob/master/docs/development/kubernetes-clients.md + - file: logging-guidelines.md + frontmatter: + weight: 70 + source: https://github.com/gardener/gardener/blob/master/docs/development/logging-guidelines.md + - file: changing-the-api.md + frontmatter: + weight: 80 + source: https://github.com/gardener/gardener/blob/master/docs/development/changing-the-api.md + - file: defaulting.md + frontmatter: + weight: 90 + source: https://github.com/gardener/gardener/blob/master/docs/development/defaulting.md + - file: validation-guidelines.md + frontmatter: + weight: 100 + source: https://github.com/gardener/gardener/blob/master/docs/development/validation-guidelines.md + - dir: documentation structure: - fileTree: /website/documentation/contribute/documentation @@ -21,6 +69,22 @@ structure: - dir: development structure: - fileTree: https://github.com/gardener/gardener/tree/master/docs/development + excludeFiles: + - local_setup.md + - getting_started_locally.md + - testing.md + - testmachinery_tests.md + - dependencies.md + - validation-guidelines.md + - ipv6.md + - changing-the-api.md + - defaulting.md + - kubernetes-clients.md + - logging-guidelines.md + - file: ipv6.md + frontmatter: + title: IPv6 + source: https://github.com/gardener/gardener/blob/master/docs/development/ipv6.md - dir: dashboard structure: @@ -70,6 +134,14 @@ structure: - dir: development structure: - fileTree: https://github.com/gardener/dependency-watchdog/tree/master/docs/development + excludeFiles: + - "setup/" + - dir: setup + structure: + - file: _index.md + frontmatter: + title: Setup + - fileTree: https://github.com/gardener/dependency-watchdog/tree/master/docs/development/setup - dir: extensions structure: diff --git a/website/documentation/contribute/contribution-process/dependencies.md b/website/documentation/contribute/contribution-process/dependencies.md deleted file mode 100644 index 80d2e672b..000000000 --- a/website/documentation/contribute/contribution-process/dependencies.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: Dependencies -remote: https://github.com/gardener/gardener/blob/master/docs/development/testing_and_dependencies.md ---- -## Testing - -We follow the BDD-style testing principles and are leveraging the [Ginkgo](https://onsi.github.io/ginkgo/) framework along with [Gomega](http://onsi.github.io/gomega/) as matcher library. In order to execute the existing tests, you can use - -```bash -make test # runs tests -make verify # runs static code checks and test -``` - -There is an additional command for analyzing the code coverage of the tests. Ginkgo will generate standard Golang cover profiles which will be translated into a HTML file by the [Go Cover Tool](https://blog.golang.org/cover). Another command helps you to clean up the filesystem from the temporary cover profile files and the HTML report: - -```bash -make test-cov -open gardener.coverage.html -make test-cov-clean -``` -### sigs.k8s.io/controller-runtime env test - -Some of the integration tests in Gardener are using the `sigs.k8s.io/controller-runtime/pkg/envtest` package. -It sets up a temporary control plane (etcd + kube-apiserver) against the integration tests can run. -The `test` and `test-cov` rules in the `Makefile` prepare this env test automatically by downloading the respective binaries (if not yet present) and set the necessary environment variables. - -You can also run `go test` or `ginkgo` without the `test`/`test-cov` rules. -In this case you have to set the `KUBEBUILDER_ASSETS` environment variable to the path that contains the etcd + kube-apiserver binaries or you need to have the binaries pre-installed under `/usr/local/kubebuilder/bin`. - -## Dependency Management - -We are using [go modules](https://github.com/golang/go/wiki/Modules) for depedency management. -In order to add a new package dependency to the project, you can perform `go get @` or edit the `go.mod` file and append the package along with the version you want to use. - -### Updating Dependencies - -The `Makefile` contains a rule called `revendor` which performs `go mod vendor` and `go mod tidy`. -`go mod vendor` resets the main module's vendor directory to include all packages needed to build and test all the main module's packages. It does not include test code for vendored packages. -`go mod tidy` makes sure `go.mod` matches the source code in the module. It adds any missing modules necessary to build the current module's packages and dependencies, and it removes unused modules that don't provide any relevant packages. - -```bash -make revendor -``` - -The dependencies are installed into the `vendor` folder which **should be added** to the VCS. - -> [!WARNING] -> Make sure that you test the code after you have updated the dependencies! From da2f672bf3ba82bcaae0504daa4c02e26e9e0b62 Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Fri, 17 Apr 2026 10:03:09 +0300 Subject: [PATCH 11/25] Move contribute section to top-level website directory --- .docforge/contribute.yaml | 6 +++--- ...-high-availability-and-zone-outage-toleration.md | 2 +- website/{documentation => }/contribute/_index.md | 0 .../contribute/contribution-process/_index.md | 0 .../contributing-bigger-changes.md | 0 .../contribution-process/how-to-contribute.md | 0 .../contribution-process/images/cicd-overview.png | Bin .../images/cicd-overview.sketch | Bin .../contribute/contribution-process/roles.md | 0 .../contribute/documentation/_index.md | 0 .../documentation/adding-existing-documentation.md | 0 .../contribute/documentation/blog-tags.md | 0 .../contribute/documentation/formatting-guide.md | 0 .../contribute/documentation/images.md | 0 .../contribute/documentation/markup.md | 0 .../contribute/documentation/organization.md | 0 .../contribute/documentation/pr-guidelines.md | 0 .../contribute/documentation/shortcodes.md | 0 .../contribute/documentation/style-guide/_index.md | 0 .../documentation/style-guide/concept_template.md | 0 .../documentation/style-guide/reference_template.md | 0 .../documentation/style-guide/task_template.md | 0 22 files changed, 4 insertions(+), 4 deletions(-) rename website/{documentation => }/contribute/_index.md (100%) rename website/{documentation => }/contribute/contribution-process/_index.md (100%) rename website/{documentation => }/contribute/contribution-process/contributing-bigger-changes.md (100%) rename website/{documentation => }/contribute/contribution-process/how-to-contribute.md (100%) rename website/{documentation => }/contribute/contribution-process/images/cicd-overview.png (100%) rename website/{documentation => }/contribute/contribution-process/images/cicd-overview.sketch (100%) rename website/{documentation => }/contribute/contribution-process/roles.md (100%) rename website/{documentation => }/contribute/documentation/_index.md (100%) rename website/{documentation => }/contribute/documentation/adding-existing-documentation.md (100%) rename website/{documentation => }/contribute/documentation/blog-tags.md (100%) rename website/{documentation => }/contribute/documentation/formatting-guide.md (100%) rename website/{documentation => }/contribute/documentation/images.md (100%) rename website/{documentation => }/contribute/documentation/markup.md (100%) rename website/{documentation => }/contribute/documentation/organization.md (100%) rename website/{documentation => }/contribute/documentation/pr-guidelines.md (100%) rename website/{documentation => }/contribute/documentation/shortcodes.md (100%) rename website/{documentation => }/contribute/documentation/style-guide/_index.md (100%) rename website/{documentation => }/contribute/documentation/style-guide/concept_template.md (100%) rename website/{documentation => }/contribute/documentation/style-guide/reference_template.md (100%) rename website/{documentation => }/contribute/documentation/style-guide/task_template.md (100%) diff --git a/.docforge/contribute.yaml b/.docforge/contribute.yaml index 66ed4ff66..81c935bb0 100644 --- a/.docforge/contribute.yaml +++ b/.docforge/contribute.yaml @@ -1,10 +1,10 @@ structure: - file: _index.md - source: /website/documentation/contribute/_index.md + source: /website/contribute/_index.md - dir: contribution-process structure: - - fileTree: /website/documentation/contribute/contribution-process + - fileTree: /website/contribute/contribution-process - dir: start-developing structure: @@ -56,7 +56,7 @@ structure: - dir: documentation structure: - - fileTree: /website/documentation/contribute/documentation + - fileTree: /website/contribute/documentation - dir: gardener structure: diff --git a/website/blog/2023/03/03-27-high-availability-and-zone-outage-toleration.md b/website/blog/2023/03/03-27-high-availability-and-zone-outage-toleration.md index 25964cfe3..001bf5c96 100644 --- a/website/blog/2023/03/03-27-high-availability-and-zone-outage-toleration.md +++ b/website/blog/2023/03/03-27-high-availability-and-zone-outage-toleration.md @@ -449,4 +449,4 @@ The Gardener project is Open Source and [hosted on GitHub](https://github.com/ga Feedback and contributions are always welcome! -All channels for getting in touch or learning about the project are listed on our [landing page](../../../documentation/contribute/_index.md#community). We are cordially inviting interested parties to join our [bi-weekly meetings](../../../documentation/contribute/_index.md#bi-weekly-meetings). +All channels for getting in touch or learning about the project are listed on our [landing page](../../../contribute/_index.md#community). We are cordially inviting interested parties to join our [bi-weekly meetings](../../../contribute/_index.md#bi-weekly-meetings). diff --git a/website/documentation/contribute/_index.md b/website/contribute/_index.md similarity index 100% rename from website/documentation/contribute/_index.md rename to website/contribute/_index.md diff --git a/website/documentation/contribute/contribution-process/_index.md b/website/contribute/contribution-process/_index.md similarity index 100% rename from website/documentation/contribute/contribution-process/_index.md rename to website/contribute/contribution-process/_index.md diff --git a/website/documentation/contribute/contribution-process/contributing-bigger-changes.md b/website/contribute/contribution-process/contributing-bigger-changes.md similarity index 100% rename from website/documentation/contribute/contribution-process/contributing-bigger-changes.md rename to website/contribute/contribution-process/contributing-bigger-changes.md diff --git a/website/documentation/contribute/contribution-process/how-to-contribute.md b/website/contribute/contribution-process/how-to-contribute.md similarity index 100% rename from website/documentation/contribute/contribution-process/how-to-contribute.md rename to website/contribute/contribution-process/how-to-contribute.md diff --git a/website/documentation/contribute/contribution-process/images/cicd-overview.png b/website/contribute/contribution-process/images/cicd-overview.png similarity index 100% rename from website/documentation/contribute/contribution-process/images/cicd-overview.png rename to website/contribute/contribution-process/images/cicd-overview.png diff --git a/website/documentation/contribute/contribution-process/images/cicd-overview.sketch b/website/contribute/contribution-process/images/cicd-overview.sketch similarity index 100% rename from website/documentation/contribute/contribution-process/images/cicd-overview.sketch rename to website/contribute/contribution-process/images/cicd-overview.sketch diff --git a/website/documentation/contribute/contribution-process/roles.md b/website/contribute/contribution-process/roles.md similarity index 100% rename from website/documentation/contribute/contribution-process/roles.md rename to website/contribute/contribution-process/roles.md diff --git a/website/documentation/contribute/documentation/_index.md b/website/contribute/documentation/_index.md similarity index 100% rename from website/documentation/contribute/documentation/_index.md rename to website/contribute/documentation/_index.md diff --git a/website/documentation/contribute/documentation/adding-existing-documentation.md b/website/contribute/documentation/adding-existing-documentation.md similarity index 100% rename from website/documentation/contribute/documentation/adding-existing-documentation.md rename to website/contribute/documentation/adding-existing-documentation.md diff --git a/website/documentation/contribute/documentation/blog-tags.md b/website/contribute/documentation/blog-tags.md similarity index 100% rename from website/documentation/contribute/documentation/blog-tags.md rename to website/contribute/documentation/blog-tags.md diff --git a/website/documentation/contribute/documentation/formatting-guide.md b/website/contribute/documentation/formatting-guide.md similarity index 100% rename from website/documentation/contribute/documentation/formatting-guide.md rename to website/contribute/documentation/formatting-guide.md diff --git a/website/documentation/contribute/documentation/images.md b/website/contribute/documentation/images.md similarity index 100% rename from website/documentation/contribute/documentation/images.md rename to website/contribute/documentation/images.md diff --git a/website/documentation/contribute/documentation/markup.md b/website/contribute/documentation/markup.md similarity index 100% rename from website/documentation/contribute/documentation/markup.md rename to website/contribute/documentation/markup.md diff --git a/website/documentation/contribute/documentation/organization.md b/website/contribute/documentation/organization.md similarity index 100% rename from website/documentation/contribute/documentation/organization.md rename to website/contribute/documentation/organization.md diff --git a/website/documentation/contribute/documentation/pr-guidelines.md b/website/contribute/documentation/pr-guidelines.md similarity index 100% rename from website/documentation/contribute/documentation/pr-guidelines.md rename to website/contribute/documentation/pr-guidelines.md diff --git a/website/documentation/contribute/documentation/shortcodes.md b/website/contribute/documentation/shortcodes.md similarity index 100% rename from website/documentation/contribute/documentation/shortcodes.md rename to website/contribute/documentation/shortcodes.md diff --git a/website/documentation/contribute/documentation/style-guide/_index.md b/website/contribute/documentation/style-guide/_index.md similarity index 100% rename from website/documentation/contribute/documentation/style-guide/_index.md rename to website/contribute/documentation/style-guide/_index.md diff --git a/website/documentation/contribute/documentation/style-guide/concept_template.md b/website/contribute/documentation/style-guide/concept_template.md similarity index 100% rename from website/documentation/contribute/documentation/style-guide/concept_template.md rename to website/contribute/documentation/style-guide/concept_template.md diff --git a/website/documentation/contribute/documentation/style-guide/reference_template.md b/website/contribute/documentation/style-guide/reference_template.md similarity index 100% rename from website/documentation/contribute/documentation/style-guide/reference_template.md rename to website/contribute/documentation/style-guide/reference_template.md diff --git a/website/documentation/contribute/documentation/style-guide/task_template.md b/website/contribute/documentation/style-guide/task_template.md similarity index 100% rename from website/documentation/contribute/documentation/style-guide/task_template.md rename to website/contribute/documentation/style-guide/task_template.md From a69a93470e36fbf956589fa6ecadb1ed446f06e1 Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Fri, 17 Apr 2026 19:31:40 +0300 Subject: [PATCH 12/25] Some rewording --- website/contribute/_index.md | 3 +++ .../contribute/contribution-process/how-to-contribute.md | 9 ++------- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/website/contribute/_index.md b/website/contribute/_index.md index 4d72c2640..cc47a7396 100644 --- a/website/contribute/_index.md +++ b/website/contribute/_index.md @@ -5,3 +5,6 @@ persona: Developers weight: 110 --- +Welcome to the Contributor section of Gardener. Here you can learn how to contribute your ideas and expertise to the project. + +Let's grow Gardener together! \ No newline at end of file diff --git a/website/contribute/contribution-process/how-to-contribute.md b/website/contribute/contribution-process/how-to-contribute.md index f95694bb0..c39757eb7 100644 --- a/website/contribute/contribution-process/how-to-contribute.md +++ b/website/contribute/contribution-process/how-to-contribute.md @@ -4,10 +4,6 @@ persona: Developers weight: 5 --- -## Welcome - -Welcome to the Contributor section of Gardener. Here you can learn how it is possible for you to contribute your ideas and expertise to the project and have it grow even more. - ## Prerequisites Before you begin contributing to Gardener, there are a couple of things you should become familiar with and complete first. @@ -21,7 +17,7 @@ Instances of abusive, harassing, or otherwise unacceptable behavior may be repor ### Developer Certificate of Origin -Due to legal reasons, contributors will be asked to accept a Developer Certificate of Origin (DCO) before they submit the first pull request to this projects, this happens in an automated fashion during the submission process. We use [the standard DCO text of the Linux Foundation](https://developercertificate.org/). +Due to legal reasons, contributors will be asked to accept a Developer Certificate of Origin (DCO) before they submit the first pull request to this project, this happens in an automated fashion during the submission process. We use [the standard DCO text of the Linux Foundation](https://developercertificate.org/). ### License @@ -29,8 +25,7 @@ Your contributions to Gardener must be licensed properly: * Code contributions must be licensed under the [Apache 2.0 License](http://www.apache.org/licenses/LICENSE-2.0) * Documentation contributions must be licensed under the [Creative Commons Attribution 4.0 International License](https://creativecommons.org/licenses/by/4.0/legalcode) - -You need to sign the Contributor License Agreement. We are using *[CLA assistant](https://cla-assistant.io/)* providing a click-through workflow for accepting the CLA. For company contributors additionally the company needs to sign a corporate license agreement. +* You need to sign the Contributor License Agreement. We are using *[CLA assistant](https://cla-assistant.io/)* providing a click-through workflow for accepting the CLA. For company contributors additionally the company needs to sign a corporate license agreement. ## Contributing From d335079f33a3fa28acf8a25e3a85c8ff0981c4b6 Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Mon, 20 Apr 2026 16:20:31 +0300 Subject: [PATCH 13/25] Use local index page for Gardener section --- .docforge/contribute.yaml | 6 +--- website/contribute/gardener/_index.md | 40 +++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 5 deletions(-) create mode 100644 website/contribute/gardener/_index.md diff --git a/.docforge/contribute.yaml b/.docforge/contribute.yaml index 81c935bb0..efa2fa529 100644 --- a/.docforge/contribute.yaml +++ b/.docforge/contribute.yaml @@ -61,11 +61,7 @@ structure: - dir: gardener structure: - file: _index.md - frontmatter: - title: Gardener - description: Developer documentation for the core Gardener component - weight: 20 - source: https://github.com/gardener/gardener/blob/master/docs/README.md + source: /website/contribute/gardener/_index.md - dir: development structure: - fileTree: https://github.com/gardener/gardener/tree/master/docs/development diff --git a/website/contribute/gardener/_index.md b/website/contribute/gardener/_index.md new file mode 100644 index 000000000..faf0370aa --- /dev/null +++ b/website/contribute/gardener/_index.md @@ -0,0 +1,40 @@ +--- +title: Gardener +description: Developer documentation for the core Gardener component +weight: 20 +--- + +This section contains developer documentation for the core [Gardener](https://github.com/gardener/gardener) component. Whether you are fixing a bug, adding a feature, or extending Gardener's capabilities, you will find the relevant guidelines and background here. + +## Contributing + +- [Releases, features, and hotfixes](https://gardener.cloud/contribute/gardener/process) + +## Development Guidelines + +- [Checklist for adding new components](https://gardener.cloud/contribute/gardener/component-checklist) +- [High availability of deployed components](https://gardener.cloud/contribute/gardener/high-availability-of-components) +- [Autoscaling specifics for components](https://gardener.cloud/contribute/gardener/autoscaling-specifics-for-components) +- [`PriorityClasses` in Gardener clusters](https://gardener.cloud/contribute/gardener/priority-classes) +- [Secrets management for seed and shoot clusters](https://gardener.cloud/contribute/gardener/secrets_management) + +## Networking + +- [Reversed VPN tunnel setup and configuration](https://gardener.cloud/contribute/gardener/reversed-vpn-tunnel) +- [IPv6 in Gardener clusters](https://gardener.cloud/contribute/gardener/ipv6) +- [Shoot advertised addresses](https://gardener.cloud/contribute/gardener/shoot-advertised-addresses) + +## Kubernetes Version Management + +- [Adding support for a new Kubernetes version](https://gardener.cloud/contribute/gardener/new-kubernetes-version) +- [Removing support for a Kubernetes version](https://gardener.cloud/contribute/gardener/remove-support-for-kubernetes-version) + +## Extending Gardener + +- [Adding a new cloud provider](https://gardener.cloud/contribute/gardener/new-cloud-provider) + +## Observability + +- [Extending the monitoring stack](https://gardener.cloud/contribute/gardener/monitoring-stack) +- [The logging stack in Gardener](https://gardener.cloud/contribute/gardener/logging-stack) +- [Creating log parsers for fluent-bit](https://gardener.cloud/contribute/gardener/log_parsers) From 6c2d65bc993cb7be99737542e4375a52b7c5ab89 Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Wed, 29 Apr 2026 15:23:26 +0300 Subject: [PATCH 14/25] Update index pages and create landing page --- .vitepress/theme/components/CardGrid.vue | 62 ++++++++++++++++++ .vitepress/theme/index.ts | 4 ++ .vitepress/theme/style.css | 16 +++++ website/contribute/_index.md | 52 ++++++++++++++- .../contribute/contribution-process/_index.md | 8 +-- .../contribution-process/how-to-contribute.md | 63 ++++++++----------- website/contribute/documentation/_index.md | 8 +-- website/contribute/gardener/_index.md | 53 ++++++---------- 8 files changed, 179 insertions(+), 87 deletions(-) create mode 100644 .vitepress/theme/components/CardGrid.vue diff --git a/.vitepress/theme/components/CardGrid.vue b/.vitepress/theme/components/CardGrid.vue new file mode 100644 index 000000000..22a7ff1e1 --- /dev/null +++ b/.vitepress/theme/components/CardGrid.vue @@ -0,0 +1,62 @@ + + + + + diff --git a/.vitepress/theme/index.ts b/.vitepress/theme/index.ts index 57c3d81b2..d0d7fbb04 100644 --- a/.vitepress/theme/index.ts +++ b/.vitepress/theme/index.ts @@ -8,6 +8,8 @@ import TaxonomyIndex from './components/TaxonomyIndex.vue' import Banner from './components/Banner.vue' import BlogPostMeta from './components/BlogPostMeta.vue' import PageActions from './components/PageActions.vue' +import VPFeatures from './components/VPFeatures.vue' +import CardGrid from './components/CardGrid.vue' import './style.css' @@ -24,6 +26,8 @@ export default { }, enhanceApp({ app }) { app.component('YouTubeVideo', YouTubeVideo) + app.component('VPFeatures', VPFeatures) + app.component('CardGrid', CardGrid) }, } satisfies Theme diff --git a/.vitepress/theme/style.css b/.vitepress/theme/style.css index 83d7099c4..5f2026116 100644 --- a/.vitepress/theme/style.css +++ b/.vitepress/theme/style.css @@ -1,3 +1,19 @@ +a.action-button { + display: inline-block; + border-radius: 20px; + padding: 8px 20px; + font-size: 14px; + font-weight: 600; + background-color: var(--vp-button-brand-bg); + color: var(--vp-button-brand-text) !important; + text-decoration: none !important; + transition: background-color 0.25s; +} + +a.action-button:hover { + background-color: var(--vp-button-brand-hover-bg); +} + :root:where(:lang(fa)) { --vp-font-family-base: 'Vazirmatn', 'Inter', ui-sans-serif, system-ui, sans-serif, diff --git a/website/contribute/_index.md b/website/contribute/_index.md index cc47a7396..55dced969 100644 --- a/website/contribute/_index.md +++ b/website/contribute/_index.md @@ -3,8 +3,56 @@ title: Contribute description: Contributors guides for code and documentation persona: Developers weight: 110 +aside: false --- -Welcome to the Contributor section of Gardener. Here you can learn how to contribute your ideas and expertise to the project. +# Welcome to the Contributor page of Gardener -Let's grow Gardener together! \ No newline at end of file +This page is for anyone interested in contributing to Gardener. It contains information about the architecture, processes, and guidelines behind developing and documenting Gardener. + +We appreciate all kinds of contributions – from fixing a typo to implementing a new feature. + +## Get Started + + + +## Contribute to a Specific Area + + diff --git a/website/contribute/contribution-process/_index.md b/website/contribute/contribution-process/_index.md index c6af937a9..172c115d0 100644 --- a/website/contribute/contribution-process/_index.md +++ b/website/contribute/contribution-process/_index.md @@ -3,10 +3,4 @@ title: Contribution Process url: /contribute/contribution-process/ persona: Developers weight: 10 ---- - -You are welcome to **contribute code** to Gardener in order to fix a bug or to implement a new feature. - -The following rules govern code contributions: -* Contributions must be licensed under the [Apache 2.0 License](http://www.apache.org/licenses/LICENSE-2.0) -* You need to sign the Contributor License Agreement. We are using *[CLA assistant](https://cla-assistant.io/)* providing a click-through workflow for accepting the CLA. For company contributors additionally the company needs to sign a corporate license agreement. See the following sections for details. \ No newline at end of file +--- \ No newline at end of file diff --git a/website/contribute/contribution-process/how-to-contribute.md b/website/contribute/contribution-process/how-to-contribute.md index c39757eb7..74e784355 100644 --- a/website/contribute/contribution-process/how-to-contribute.md +++ b/website/contribute/contribution-process/how-to-contribute.md @@ -4,20 +4,22 @@ persona: Developers weight: 5 --- +Thank you for your interest in contributing to Gardener. This page provides an overview of how to get started, what to expect from the contribution process, and how to connect with the community. + ## Prerequisites -Before you begin contributing to Gardener, there are a couple of things you should become familiar with and complete first. +Before contributing to Gardener, please review and complete the following requirements. ### Code of Conduct All members of the Gardener community must abide by the [Contributor Covenant](https://www.contributor-covenant.org/version/2/1/code_of_conduct/). Only by respecting each other can we develop a productive, collaborative community. -Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting [gardener.opensource@sap.com](mailto:gardener.opensource@sap.com) and/or a Gardener project maintainer. +Please report abusive, harassing, or unacceptable behavior to [gardener.opensource@sap.com](mailto:gardener.opensource@sap.com) and/or a Gardener project maintainer. ### Developer Certificate of Origin -Due to legal reasons, contributors will be asked to accept a Developer Certificate of Origin (DCO) before they submit the first pull request to this project, this happens in an automated fashion during the submission process. We use [the standard DCO text of the Linux Foundation](https://developercertificate.org/). +Contributors must accept a Developer Certificate of Origin (DCO) before submitting their first pull request. This happens in an automated fashion during the submission process. We use [the standard DCO text of the Linux Foundation](https://developercertificate.org/). ### License @@ -25,58 +27,47 @@ Your contributions to Gardener must be licensed properly: * Code contributions must be licensed under the [Apache 2.0 License](http://www.apache.org/licenses/LICENSE-2.0) * Documentation contributions must be licensed under the [Creative Commons Attribution 4.0 International License](https://creativecommons.org/licenses/by/4.0/legalcode) -* You need to sign the Contributor License Agreement. We are using *[CLA assistant](https://cla-assistant.io/)* providing a click-through workflow for accepting the CLA. For company contributors additionally the company needs to sign a corporate license agreement. +* You need to sign the Contributor License Agreement. We are using *[CLA assistant](https://cla-assistant.io/)*, which provides a click-through workflow for accepting the CLA. For company contributors, the company also needs to sign a corporate license agreement. ## Contributing -Gardener uses GitHub to manage reviews of pull requests. - -* If you are a new contributor see: [Steps to Contribute](#steps-to-contribute) - -* If you have a trivial fix or improvement, go ahead and create a pull request. +Gardener uses GitHub to manage and review pull requests. -* If you plan to do something more involved, first discuss your ideas - on our [mailing list](https://groups.google.com/forum/?fromgroups#!forum/gardener). - This will avoid unnecessary work and surely give you and us a good deal +* If you are a new contributor, see [Steps to Contribute](#steps-to-contribute). +* For trivial fixes or improvements, go ahead and create a pull request. +* For larger, more complex changes, first discuss your ideas + on our [mailing list](https://groups.google.com/forum/?fromgroups#!forum/gardener) to avoid unnecessary work and to give you and us a good deal of inspiration. - * Relevant coding style guidelines are the [Go Code Review Comments](https://github.com/golang/go/wiki/CodeReviewComments) and the _Formatting and style_ section of Peter Bourgon's [Go: Best Practices for Production Environments](http://peter.bourgon.org/go-in-production/#formatting-and-style). ### Steps to Contribute -Should you wish to work on an issue, please claim it first by commenting on the GitHub issue that you want to work on it. This is to prevent duplicated efforts from contributors on the same issue. +If you'd like to work on an issue, please claim it first by commenting on the corresponding GitHub issue. This prevents multiple contributors from working on the same issue simultaneously. -If you have questions about one of the issues, with or without the tag, please comment on them and one of the maintainers will clarify it. +If you have questions about an issue, leave a comment in the issue, and one of the maintainers will help you. -We kindly ask you to follow the [Pull Request Checklist](#pull-request-checklist) to ensure reviews can happen accordingly. +Please follow the [Pull Request Checklist](#pull-request-checklist) to ensure a smooth review process. ### Pull Request Checklist -* Branch from the master branch and, if needed, rebase to the current master branch before submitting your pull request. If it doesn't merge cleanly with master you may be asked to rebase your changes. - -* Commits should be as small as possible, while ensuring that each commit is correct independently (i.e., each commit should compile and pass tests). - -* Test your changes as thoroughly as possible before your commit them. Preferably, automate your testing with [unit / integration tests](https://github.com/gardener/gardener/blob/master/docs/development/testing.md). If tested manually, provide information about the test scope in the PR description (e.g., "Test passed: Upgrade K8s version from 1.14.5 to 1.15.2 on AWS, Azure, GCP, Alicloud, Openstack."). - -* When creating the PR, make your [Pull Request description](../documentation/pr-guidelines.md) as detailed as possible to help out the reviewers. - -* Create *Work In Progress [WIP]* pull requests only if you need a clarification or an explicit review before you can continue your work item. - -* If your patch is not getting reviewed or you need a specific person to review it, you can @-reply a reviewer asking for a review in the pull request or a comment, or you can ask for a review on our [mailing list](https://groups.google.com/forum/?fromgroups#!forum/gardener). - +* Branch from `master`. Before submitting your pull request, rebase your changes onto the current `master` branch. +* Keep commits small and self-contained. Each commit should compile and pass all tests independently. +* Test your changes thoroughly before you commit them. Preferably, automate your testing with [unit / integration tests](https://github.com/gardener/gardener/blob/master/docs/development/testing.md). If tested manually, describe the test scope in the PR description (e.g., "Test passed: Upgrade K8s version from 1.14.5 to 1.15.2 on AWS, Azure, GCP, Alicloud, OpenStack."). +* Write a clear and detailed [Pull Request description](../documentation/pr-guidelines.md) to help reviewers understand your changes. +* Create *Work In Progress [WIP]* pull requests only if you need a clarification or an explicit review before continuing your work. +* If your patch is not getting reviewed or you need a specific person to review it, you can @mention a reviewer or request a review via our [mailing list](https://groups.google.com/forum/?fromgroups#!forum/gardener). * If you add new features, make sure that they are documented in the [Gardener documentation](https://github.com/gardener/documentation). - -* Post review: +* After a review: * If a review requires you to change your commit(s), please test the changes again. - * Address the PR review feedback from a reviewer in a separate commit to make it easier for the reviewer to check how their feedback has been addressed. Do not mix PR review feedback from multiple reviews in a single commit. Create a separate commit per a review. - * Set respective comments in your GitHub review to resolved. - * Create a general PR comment to notify the reviewers that your amendments are ready for another round of review. + * Address each reviewer’s feedback in a separate commit. Do not mix the feedback from multiple reviews in a single commit. + * Mark resolved comments as *resolved* in GitHub. + * Add a comment to notify reviewers when updates are ready for another review. ### Contributing Bigger Changes -If you want to contribute bigger changes to Gardener, such as when introducing new API resources and their corresponding controllers, or implementing an approved [Gardener Enhancement Proposal](https://github.com/gardener/gardener/tree/master/docs/proposals), follow the guidelines outlined in [Contributing Bigger Changes](./contributing-bigger-changes.md). +If you want to contribute bigger changes to Gardener, such as when introducing new API resources and their corresponding controllers, or implementing an approved [Gardener Enhancement Proposal](https://github.com/gardener/gardener/tree/master/docs/proposals), follow the guidelines in [Contributing Bigger Changes](./contributing-bigger-changes.md). ### Adding Already Existing Documentation @@ -84,7 +75,7 @@ If you want to add documentation that already exists on GitHub to the website, y ## Issues and Planning -We use GitHub issues to track bugs and enhancement requests. Please provide as much context as possible when you open an issue. The information you provide must be comprehensive enough to reproduce that issue for the assignee. Therefore, contributors may use but aren't restricted to the issue template provided by the Gardener maintainers. +We use GitHub issues to track bugs and enhancement requests. When opening an issue, provide enough details for others to understand and reproduce the problem. You may use the provided issue template, but it is not required. ## Community @@ -96,4 +87,4 @@ We use the [Gardener Project workspace](https://gardener-cloud.slack.com) for pu [gardener@googlegroups.com](https://groups.google.com/forum/?fromgroups#!forum/gardener) -The mailing list is hosted through Google Groups. To receive the lists' emails, [join the group](https://support.google.com/groups/answer/1067205) as you would any other Google Group. +The mailing list is hosted on Google Groups. To receive emails, [join the group](https://support.google.com/groups/answer/1067205) as you would any other Google Group. diff --git a/website/contribute/documentation/_index.md b/website/contribute/documentation/_index.md index c56ce3629..06fb681ff 100644 --- a/website/contribute/documentation/_index.md +++ b/website/contribute/documentation/_index.md @@ -2,10 +2,4 @@ title: Documentation url: /contribute/documentation/ weight: 60 ---- - -You are welcome to **contribute documentation** to Gardener. - -The following rules govern documentation contributions: -* Contributions must be licensed under the [Creative Commons Attribution 4.0 International License](https://creativecommons.org/licenses/by/4.0/legalcode) -* You need to sign the Contributor License Agreement. We are using *[CLA assistant](https://cla-assistant.io/)* providing a click-through workflow for accepting the CLA. For company contributors additionally the company needs to sign a corporate license agreement. See the following sections for details. +--- \ No newline at end of file diff --git a/website/contribute/gardener/_index.md b/website/contribute/gardener/_index.md index faf0370aa..00bbee658 100644 --- a/website/contribute/gardener/_index.md +++ b/website/contribute/gardener/_index.md @@ -1,40 +1,23 @@ --- title: Gardener -description: Developer documentation for the core Gardener component +description: Developer documentation for the Gardener project weight: 20 --- -This section contains developer documentation for the core [Gardener](https://github.com/gardener/gardener) component. Whether you are fixing a bug, adding a feature, or extending Gardener's capabilities, you will find the relevant guidelines and background here. - -## Contributing - -- [Releases, features, and hotfixes](https://gardener.cloud/contribute/gardener/process) - -## Development Guidelines - -- [Checklist for adding new components](https://gardener.cloud/contribute/gardener/component-checklist) -- [High availability of deployed components](https://gardener.cloud/contribute/gardener/high-availability-of-components) -- [Autoscaling specifics for components](https://gardener.cloud/contribute/gardener/autoscaling-specifics-for-components) -- [`PriorityClasses` in Gardener clusters](https://gardener.cloud/contribute/gardener/priority-classes) -- [Secrets management for seed and shoot clusters](https://gardener.cloud/contribute/gardener/secrets_management) - -## Networking - -- [Reversed VPN tunnel setup and configuration](https://gardener.cloud/contribute/gardener/reversed-vpn-tunnel) -- [IPv6 in Gardener clusters](https://gardener.cloud/contribute/gardener/ipv6) -- [Shoot advertised addresses](https://gardener.cloud/contribute/gardener/shoot-advertised-addresses) - -## Kubernetes Version Management - -- [Adding support for a new Kubernetes version](https://gardener.cloud/contribute/gardener/new-kubernetes-version) -- [Removing support for a Kubernetes version](https://gardener.cloud/contribute/gardener/remove-support-for-kubernetes-version) - -## Extending Gardener - -- [Adding a new cloud provider](https://gardener.cloud/contribute/gardener/new-cloud-provider) - -## Observability - -- [Extending the monitoring stack](https://gardener.cloud/contribute/gardener/monitoring-stack) -- [The logging stack in Gardener](https://gardener.cloud/contribute/gardener/logging-stack) -- [Creating log parsers for fluent-bit](https://gardener.cloud/contribute/gardener/log_parsers) +# Gardener + +- [Releases, Features, Hotfixes](https://gardener.cloud/contribute/gardener/process) +- [Checklist For Adding New Components](https://gardener.cloud/contribute/gardener/component-checklist) +- [High Availability of Deployed Components](https://gardener.cloud/contribute/gardener/high-availability-of-components) +- [Autoscaling Specifics for Components](https://gardener.cloud/contribute/gardener/autoscaling-specifics-for-components) +- [`PriorityClass`es in Gardener Clusters](https://gardener.cloud/contribute/gardener/priority-classes) +- [Secrets Management for Seed and Shoot Cluster](https://gardener.cloud/contribute/gardener/secrets_management) +- [Reversed VPN Tunnel Setup and Configuration](https://gardener.cloud/contribute/gardener/reversed-vpn-tunnel) +- [IPv6 in Gardener Clusters](https://gardener.cloud/contribute/gardener/ipv6) +- [Shoot Advertised Addresses](https://gardener.cloud/contribute/gardener/shoot-advertised-addresses) +- [The Logging Stack in Gardener](https://gardener.cloud/contribute/gardener/logging-stack) +- [Creating Log Parsers for fluent-bit](https://gardener.cloud/contribute/gardener/log_parsers) +- [Adding Support For a New Kubernetes Version](https://gardener.cloud/contribute/gardener/new-kubernetes-version) +- [Removing Support For a Kubernetes Version](https://gardener.cloud/contribute/gardener/remove-support-for-kubernetes-version) +- [Adding a New Cloud Provider](https://gardener.cloud/contribute/gardener/new-cloud-provider) +- [Extending the Monitoring Stack](https://gardener.cloud/contribute/gardener/monitoring-stack) From bfe9fbf8acb5d30b4d358bd89431642cea21a123 Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Wed, 29 Apr 2026 15:42:32 +0300 Subject: [PATCH 15/25] Rename "How to Contribute" guide and "Start Developing" section --- .docforge/contribute.yaml | 2 +- website/contribute/_index.md | 8 ++++---- .../contribute/contribution-process/how-to-contribute.md | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.docforge/contribute.yaml b/.docforge/contribute.yaml index efa2fa529..0203ba30e 100644 --- a/.docforge/contribute.yaml +++ b/.docforge/contribute.yaml @@ -10,7 +10,7 @@ structure: structure: - file: _index.md frontmatter: - title: Start Developing + title: Developer Starter Kit description: Developer documentation for getting started with local Gardener development weight: 15 - file: local_setup.md diff --git a/website/contribute/_index.md b/website/contribute/_index.md index 55dced969..95463953c 100644 --- a/website/contribute/_index.md +++ b/website/contribute/_index.md @@ -16,13 +16,13 @@ We appreciate all kinds of contributions – from fixing a typo to implementing diff --git a/website/contribute/contribution-process/how-to-contribute.md b/website/contribute/contribution-process/how-to-contribute.md index 74e784355..42d69d9ca 100644 --- a/website/contribute/contribution-process/how-to-contribute.md +++ b/website/contribute/contribution-process/how-to-contribute.md @@ -1,5 +1,5 @@ --- -title: How to Contribute +title: Contributor Guide persona: Developers weight: 5 --- From 839ee1a6e9eca26d887f961a3cf940e40a9c8993 Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Wed, 29 Apr 2026 17:19:44 +0300 Subject: [PATCH 16/25] Add entry pages, edit cards --- .docforge/contribute.yaml | 5 +---- website/contribute/_index.md | 18 ++++++++--------- .../contribute/contribution-process/_index.md | 10 +++++++++- website/contribute/gardener/_index.md | 4 ++++ website/contribute/start-developing/_index.md | 20 +++++++++++++++++++ 5 files changed, 43 insertions(+), 14 deletions(-) create mode 100644 website/contribute/start-developing/_index.md diff --git a/.docforge/contribute.yaml b/.docforge/contribute.yaml index 0203ba30e..8338fb7a4 100644 --- a/.docforge/contribute.yaml +++ b/.docforge/contribute.yaml @@ -9,10 +9,7 @@ structure: - dir: start-developing structure: - file: _index.md - frontmatter: - title: Developer Starter Kit - description: Developer documentation for getting started with local Gardener development - weight: 15 + source: /website/contribute/start-developing/_index.md - file: local_setup.md frontmatter: weight: 10 diff --git a/website/contribute/_index.md b/website/contribute/_index.md index 95463953c..7ed5569d9 100644 --- a/website/contribute/_index.md +++ b/website/contribute/_index.md @@ -8,21 +8,21 @@ aside: false # Welcome to the Contributor page of Gardener -This page is for anyone interested in contributing to Gardener. It contains information about the architecture, processes, and guidelines behind developing and documenting Gardener. +This page is your starting point for contributing to Gardener. It contains all documentation related to developing and documenting Gardener. -We appreciate all kinds of contributions – from fixing a typo to implementing a new feature. +We appreciate all kinds of contributions – from fixing a typo to implementing a new feature. Let's grow Gardener together! ## Get Started @@ -32,27 +32,27 @@ We appreciate all kinds of contributions – from fixing a typo to implementing diff --git a/website/contribute/contribution-process/_index.md b/website/contribute/contribution-process/_index.md index 172c115d0..04e4ca5a6 100644 --- a/website/contribute/contribution-process/_index.md +++ b/website/contribute/contribution-process/_index.md @@ -3,4 +3,12 @@ title: Contribution Process url: /contribute/contribution-process/ persona: Developers weight: 10 ---- \ No newline at end of file +--- + +# Contribution Process + +Start here to understand how contributions work, what's required, how reviews happen, and how to take on larger changes. + +- [Contributor Guide](https://gardener.cloud/contribute/contribution-process/how-to-contribute): Prerequisites, submission process, and tips for getting your contributions accepted +- [Community Roles](https://gardener.cloud/contribute/contribution-process/roles): The different roles within the Gardener community, their tasks and responsibilities +- [Contributing Bigger Changes](https://gardener.cloud/contribute/contribution-process/contributing-bigger-changes): Guidelines for scoping and structuring large contributions \ No newline at end of file diff --git a/website/contribute/gardener/_index.md b/website/contribute/gardener/_index.md index 00bbee658..e0dc50c55 100644 --- a/website/contribute/gardener/_index.md +++ b/website/contribute/gardener/_index.md @@ -6,6 +6,10 @@ weight: 20 # Gardener +This section contains the developer documentation for core Gardener functionality. + +Before diving in, check out the [Developer Starter Kit](https://gardener.cloud/contribute/start-developing/). There you can learn how to set up your local environment and get familiar with the general development guidelines for Gardener. + - [Releases, Features, Hotfixes](https://gardener.cloud/contribute/gardener/process) - [Checklist For Adding New Components](https://gardener.cloud/contribute/gardener/component-checklist) - [High Availability of Deployed Components](https://gardener.cloud/contribute/gardener/high-availability-of-components) diff --git a/website/contribute/start-developing/_index.md b/website/contribute/start-developing/_index.md new file mode 100644 index 000000000..544125402 --- /dev/null +++ b/website/contribute/start-developing/_index.md @@ -0,0 +1,20 @@ +--- +title: Developer Starter Kit +description: Developer documentation for getting started with local Gardener development +weight: 15 +--- + +# Developer Starter Kit + +This section contains everything you need to start contributing code to Gardener. It walks you through setting up a local development environment and covers the key guidelines and conventions that all Gardener contributors are expected to follow. + +- [Local Setup](https://gardener.cloud/contribute/start-developing/local_setup): How to set up a local Gardener development environment +- [Deploying Gardener Locally](https://gardener.cloud/contribute/start-developing/getting_started_locally): How to deploy a full Gardener installation on your local machine using kind +- [Dependency Management](https://gardener.cloud/contribute/start-developing/dependencies): How to add and manage Go module dependencies in the Gardener project +- [Testing Strategy and Guidelines](https://gardener.cloud/contribute/start-developing/testing): The types of tests used in Gardener and the guidelines for writing them +- [Test Machinery Tests](https://gardener.cloud/contribute/start-developing/testmachinery_tests): End-to-end tests run against full Gardener installations using Test Machinery +- [Kubernetes Clients in Gardener](https://gardener.cloud/contribute/start-developing/kubernetes-clients): Guidelines and best practices for using Kubernetes clients in Gardener components +- [Logging Guidelines](https://gardener.cloud/contribute/start-developing/logging-guidelines): Logging conventions and practices used across Gardener components +- [Changing the API](https://gardener.cloud/contribute/start-developing/changing-the-api): How to introduce API changes, including the required steps and review process +- [Defaulting Strategy and Guidelines](https://gardener.cloud/contribute/start-developing/defaulting): Conventions for writing defaulting functions in Gardener +- [Validation Guidelines](https://gardener.cloud/contribute/start-developing/validation-guidelines): Validation practices and conventions used in the Gardener codebase From a1b35a370a0b459bd1415c802042d022edfbe7d6 Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Wed, 29 Apr 2026 18:26:28 +0300 Subject: [PATCH 17/25] Change weights in 'Contribution Process' section --- .../contribution-process/contributing-bigger-changes.md | 2 +- website/contribute/contribution-process/how-to-contribute.md | 2 +- website/contribute/contribution-process/roles.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/website/contribute/contribution-process/contributing-bigger-changes.md b/website/contribute/contribution-process/contributing-bigger-changes.md index b78c67108..eed6db15d 100644 --- a/website/contribute/contribution-process/contributing-bigger-changes.md +++ b/website/contribute/contribution-process/contributing-bigger-changes.md @@ -2,7 +2,7 @@ title: Contributing Bigger Changes sidebar: true menu: sln -weight: 60 +weight: 20 --- ## Contributing Bigger Changes diff --git a/website/contribute/contribution-process/how-to-contribute.md b/website/contribute/contribution-process/how-to-contribute.md index 42d69d9ca..c76904a4c 100644 --- a/website/contribute/contribution-process/how-to-contribute.md +++ b/website/contribute/contribution-process/how-to-contribute.md @@ -1,7 +1,7 @@ --- title: Contributor Guide persona: Developers -weight: 5 +weight: 10 --- Thank you for your interest in contributing to Gardener. This page provides an overview of how to get started, what to expect from the contribution process, and how to connect with the community. diff --git a/website/contribute/contribution-process/roles.md b/website/contribute/contribution-process/roles.md index 52ea70d0f..1a11ca492 100644 --- a/website/contribute/contribution-process/roles.md +++ b/website/contribute/contribution-process/roles.md @@ -1,6 +1,6 @@ --- title: Community Roles -weight: 20 +weight: 30 outline: 2 --- From 9920f79df22e67dcc16feff58ce68a32dae0824f Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Wed, 29 Apr 2026 18:46:11 +0300 Subject: [PATCH 18/25] Update directory name, reorder sections, clean up contribute.yaml --- .docforge/contribute.yaml | 126 +++++++++--------- website/contribute/_index.md | 2 +- .../developer-starter-kit/_index.md | 20 +++ website/contribute/documentation/_index.md | 2 +- website/contribute/gardener/_index.md | 4 +- website/contribute/start-developing/_index.md | 20 --- 6 files changed, 87 insertions(+), 87 deletions(-) create mode 100644 website/contribute/developer-starter-kit/_index.md delete mode 100644 website/contribute/start-developing/_index.md diff --git a/.docforge/contribute.yaml b/.docforge/contribute.yaml index 8338fb7a4..39115b4ed 100644 --- a/.docforge/contribute.yaml +++ b/.docforge/contribute.yaml @@ -6,10 +6,10 @@ structure: structure: - fileTree: /website/contribute/contribution-process - - dir: start-developing + - dir: developer-starter-kit structure: - file: _index.md - source: /website/contribute/start-developing/_index.md + source: /website/contribute/developer-starter-kit/_index.md - file: local_setup.md frontmatter: weight: 10 @@ -51,10 +51,6 @@ structure: weight: 100 source: https://github.com/gardener/gardener/blob/master/docs/development/validation-guidelines.md - - dir: documentation - structure: - - fileTree: /website/contribute/documentation - - dir: gardener structure: - file: _index.md @@ -79,63 +75,6 @@ structure: title: IPv6 source: https://github.com/gardener/gardener/blob/master/docs/development/ipv6.md - - dir: dashboard - structure: - - file: _index.md - frontmatter: - title: Dashboard - description: Developer documentation for the Gardener web UI - weight: 30 - source: https://github.com/gardener/dashboard/blob/master/README.md - - dir: development - structure: - - fileTree: https://github.com/gardener/dashboard/tree/master/docs/development - - - dir: other-components - structure: - - file: _index.md - frontmatter: - title: Other Components - weight: 50 - - dir: machine-controller-manager - structure: - - file: _index.md - frontmatter: - title: Machine Controller Manager - description: Developer documentation for the machine controller manager - source: https://github.com/gardener/machine-controller-manager/blob/master/README.md - - dir: development - structure: - - fileTree: https://github.com/gardener/machine-controller-manager/tree/master/docs/development - - dir: etcd-druid - structure: - - file: _index.md - frontmatter: - title: etcd-druid - description: Developer documentation for the etcd management operator - source: https://github.com/gardener/etcd-druid/blob/master/README.md - - dir: development - structure: - - fileTree: https://github.com/gardener/etcd-druid/tree/master/docs/development - - dir: dependency-watchdog - structure: - - file: _index.md - frontmatter: - title: Dependency Watchdog - description: Developer documentation for the dependency watchdog - source: https://github.com/gardener/dependency-watchdog/blob/master/README.md - - dir: development - structure: - - fileTree: https://github.com/gardener/dependency-watchdog/tree/master/docs/development - excludeFiles: - - "setup/" - - dir: setup - structure: - - file: _index.md - frontmatter: - title: Setup - - fileTree: https://github.com/gardener/dependency-watchdog/tree/master/docs/development/setup - - dir: extensions structure: - file: _index.md @@ -239,3 +178,64 @@ structure: - dir: development structure: - fileTree: https://github.com/gardener/gardener-extension-auditing/tree/main/docs/development + + - dir: other-components + structure: + - file: _index.md + frontmatter: + title: Other Components + weight: 50 + - dir: machine-controller-manager + structure: + - file: _index.md + frontmatter: + title: Machine Controller Manager + description: Developer documentation for the machine controller manager + source: https://github.com/gardener/machine-controller-manager/blob/master/README.md + - dir: development + structure: + - fileTree: https://github.com/gardener/machine-controller-manager/tree/master/docs/development + - dir: etcd-druid + structure: + - file: _index.md + frontmatter: + title: etcd-druid + description: Developer documentation for the etcd management operator + source: https://github.com/gardener/etcd-druid/blob/master/README.md + - dir: development + structure: + - fileTree: https://github.com/gardener/etcd-druid/tree/master/docs/development + - dir: dependency-watchdog + structure: + - file: _index.md + frontmatter: + title: Dependency Watchdog + description: Developer documentation for the dependency watchdog + source: https://github.com/gardener/dependency-watchdog/blob/master/README.md + - dir: development + structure: + - fileTree: https://github.com/gardener/dependency-watchdog/tree/master/docs/development + excludeFiles: + - "setup/" + - dir: setup + structure: + - file: _index.md + frontmatter: + title: Setup + - fileTree: https://github.com/gardener/dependency-watchdog/tree/master/docs/development/setup + + - dir: dashboard + structure: + - file: _index.md + frontmatter: + title: Dashboard + description: Developer documentation for the Gardener web UI + weight: 60 + source: https://github.com/gardener/dashboard/blob/master/README.md + - dir: development + structure: + - fileTree: https://github.com/gardener/dashboard/tree/master/docs/development + + - dir: documentation + structure: + - fileTree: /website/contribute/documentation diff --git a/website/contribute/_index.md b/website/contribute/_index.md index 7ed5569d9..c23dd7cb8 100644 --- a/website/contribute/_index.md +++ b/website/contribute/_index.md @@ -23,7 +23,7 @@ We appreciate all kinds of contributions – from fixing a typo to implementing { title: 'Developer Starter Kit', details: 'Set up and deploy Gardener locally. Explore key development guidelines, such as testing, validation, and dependency management guidelines.', - link: 'https://gardener.cloud/contribute/start-developing/' + link: 'https://gardener.cloud/contribute/developer-starter-kit/' } ]"/> diff --git a/website/contribute/developer-starter-kit/_index.md b/website/contribute/developer-starter-kit/_index.md new file mode 100644 index 000000000..eb1e25688 --- /dev/null +++ b/website/contribute/developer-starter-kit/_index.md @@ -0,0 +1,20 @@ +--- +title: Developer Starter Kit +description: Developer documentation for getting started with local Gardener development +weight: 20 +--- + +# Developer Starter Kit + +This section contains everything you need to start contributing code to Gardener. It walks you through setting up a local development environment and covers the key guidelines and conventions that all Gardener contributors are expected to follow. + +- [Local Setup](https://gardener.cloud/contribute/developer-starter-kit/local_setup): How to set up a local Gardener development environment +- [Deploying Gardener Locally](https://gardener.cloud/contribute/developer-starter-kit/getting_started_locally): How to deploy a full Gardener installation on your local machine using kind +- [Dependency Management](https://gardener.cloud/contribute/developer-starter-kit/dependencies): How to add and manage Go module dependencies in the Gardener project +- [Testing Strategy and Guidelines](https://gardener.cloud/contribute/developer-starter-kit/testing): The types of tests used in Gardener and the guidelines for writing them +- [Test Machinery Tests](https://gardener.cloud/contribute/developer-starter-kit/testmachinery_tests): End-to-end tests run against full Gardener installations using Test Machinery +- [Kubernetes Clients in Gardener](https://gardener.cloud/contribute/developer-starter-kit/kubernetes-clients): Guidelines and best practices for using Kubernetes clients in Gardener components +- [Logging Guidelines](https://gardener.cloud/contribute/developer-starter-kit/logging-guidelines): Logging conventions and practices used across Gardener components +- [Changing the API](https://gardener.cloud/contribute/developer-starter-kit/changing-the-api): How to introduce API changes, including the required steps and review process +- [Defaulting Strategy and Guidelines](https://gardener.cloud/contribute/developer-starter-kit/defaulting): Conventions for writing defaulting functions in Gardener +- [Validation Guidelines](https://gardener.cloud/contribute/developer-starter-kit/validation-guidelines): Validation practices and conventions used in the Gardener codebase diff --git a/website/contribute/documentation/_index.md b/website/contribute/documentation/_index.md index 06fb681ff..b35f8e2a9 100644 --- a/website/contribute/documentation/_index.md +++ b/website/contribute/documentation/_index.md @@ -1,5 +1,5 @@ --- title: Documentation url: /contribute/documentation/ -weight: 60 +weight: 70 --- \ No newline at end of file diff --git a/website/contribute/gardener/_index.md b/website/contribute/gardener/_index.md index e0dc50c55..316adfc11 100644 --- a/website/contribute/gardener/_index.md +++ b/website/contribute/gardener/_index.md @@ -1,14 +1,14 @@ --- title: Gardener description: Developer documentation for the Gardener project -weight: 20 +weight: 30 --- # Gardener This section contains the developer documentation for core Gardener functionality. -Before diving in, check out the [Developer Starter Kit](https://gardener.cloud/contribute/start-developing/). There you can learn how to set up your local environment and get familiar with the general development guidelines for Gardener. +Before diving in, check out the [Developer Starter Kit](https://gardener.cloud/contribute/developer-starter-kit/). There you can learn how to set up your local environment and get familiar with the general development guidelines for Gardener. - [Releases, Features, Hotfixes](https://gardener.cloud/contribute/gardener/process) - [Checklist For Adding New Components](https://gardener.cloud/contribute/gardener/component-checklist) diff --git a/website/contribute/start-developing/_index.md b/website/contribute/start-developing/_index.md deleted file mode 100644 index 544125402..000000000 --- a/website/contribute/start-developing/_index.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: Developer Starter Kit -description: Developer documentation for getting started with local Gardener development -weight: 15 ---- - -# Developer Starter Kit - -This section contains everything you need to start contributing code to Gardener. It walks you through setting up a local development environment and covers the key guidelines and conventions that all Gardener contributors are expected to follow. - -- [Local Setup](https://gardener.cloud/contribute/start-developing/local_setup): How to set up a local Gardener development environment -- [Deploying Gardener Locally](https://gardener.cloud/contribute/start-developing/getting_started_locally): How to deploy a full Gardener installation on your local machine using kind -- [Dependency Management](https://gardener.cloud/contribute/start-developing/dependencies): How to add and manage Go module dependencies in the Gardener project -- [Testing Strategy and Guidelines](https://gardener.cloud/contribute/start-developing/testing): The types of tests used in Gardener and the guidelines for writing them -- [Test Machinery Tests](https://gardener.cloud/contribute/start-developing/testmachinery_tests): End-to-end tests run against full Gardener installations using Test Machinery -- [Kubernetes Clients in Gardener](https://gardener.cloud/contribute/start-developing/kubernetes-clients): Guidelines and best practices for using Kubernetes clients in Gardener components -- [Logging Guidelines](https://gardener.cloud/contribute/start-developing/logging-guidelines): Logging conventions and practices used across Gardener components -- [Changing the API](https://gardener.cloud/contribute/start-developing/changing-the-api): How to introduce API changes, including the required steps and review process -- [Defaulting Strategy and Guidelines](https://gardener.cloud/contribute/start-developing/defaulting): Conventions for writing defaulting functions in Gardener -- [Validation Guidelines](https://gardener.cloud/contribute/start-developing/validation-guidelines): Validation practices and conventions used in the Gardener codebase From 85f0c4b5ed8581cc11efba8bc33f2f4516644d2b Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Wed, 29 Apr 2026 19:19:39 +0300 Subject: [PATCH 19/25] Fix broken links, rename contributor guide file --- website/contribute/_index.md | 14 ++++---- .../contribute/contribution-process/_index.md | 6 ++-- ...-to-contribute.md => contributor-guide.md} | 0 .../developer-starter-kit/_index.md | 20 ++++++------ website/contribute/gardener/_index.md | 32 +++++++++---------- 5 files changed, 36 insertions(+), 36 deletions(-) rename website/contribute/contribution-process/{how-to-contribute.md => contributor-guide.md} (100%) diff --git a/website/contribute/_index.md b/website/contribute/_index.md index c23dd7cb8..c45d952b5 100644 --- a/website/contribute/_index.md +++ b/website/contribute/_index.md @@ -18,12 +18,12 @@ We appreciate all kinds of contributions – from fixing a typo to implementing { title: 'Contributor Guide', details: 'Learn how to contribute to Gardener, including contribution workflows, licensing requirements, and best practices.', - link: 'https://gardener.cloud/contribute/contribution-process/how-to-contribute' + link: '/contribute/contribution-process/contributor-guide' }, { title: 'Developer Starter Kit', details: 'Set up and deploy Gardener locally. Explore key development guidelines, such as testing, validation, and dependency management guidelines.', - link: 'https://gardener.cloud/contribute/developer-starter-kit/' + link: '/contribute/developer-starter-kit/' } ]"/> @@ -33,26 +33,26 @@ We appreciate all kinds of contributions – from fixing a typo to implementing { title: 'Gardener', details: 'Browse the developer docs for the core Gardener functionality – development guidelines, information about networking, observability, how to extend Gardener, and more.', - link: 'https://gardener.cloud/contribute/gardener/' + link: '/contribute/gardener/' }, { title: 'Extensions', details: 'Browse the developer docs for Gardener extensions, including the extensions for infrastructure providers, DNS services, registry cache, and more.', - link: 'https://gardener.cloud/contribute/extensions/' + link: '/contribute/extensions/' }, { title: 'Other Components', details: 'Browse the developer docs for components maintained alongside Gardener, such as Dependency Watchdog, etcd-druid, Machine Controller Manager, and others.', - link: 'https://gardener.cloud/contribute/other-components/' + link: '/contribute/other-components/' }, { title: 'Dashboard', details: 'Browse the developer docs for the Gardener web UI – architecture, local development setup, contribution and testing guidelines.', - link: 'https://gardener.cloud/contribute/dashboard/' + link: '/contribute/dashboard/' }, { title: 'Documentation', details: 'Browse the guidelines for contributing documentation – writing style, structure, tooling, and how to add or update content.', - link: 'https://gardener.cloud/contribute/documentation/' + link: '/contribute/documentation/' } ]"/> diff --git a/website/contribute/contribution-process/_index.md b/website/contribute/contribution-process/_index.md index 04e4ca5a6..07f91c5bc 100644 --- a/website/contribute/contribution-process/_index.md +++ b/website/contribute/contribution-process/_index.md @@ -9,6 +9,6 @@ weight: 10 Start here to understand how contributions work, what's required, how reviews happen, and how to take on larger changes. -- [Contributor Guide](https://gardener.cloud/contribute/contribution-process/how-to-contribute): Prerequisites, submission process, and tips for getting your contributions accepted -- [Community Roles](https://gardener.cloud/contribute/contribution-process/roles): The different roles within the Gardener community, their tasks and responsibilities -- [Contributing Bigger Changes](https://gardener.cloud/contribute/contribution-process/contributing-bigger-changes): Guidelines for scoping and structuring large contributions \ No newline at end of file +- [Contributor Guide](./contributor-guide.md): Prerequisites, submission process, and tips for getting your contributions accepted +- [Community Roles](./roles.md): The different roles within the Gardener community, their tasks and responsibilities +- [Contributing Bigger Changes](./contributing-bigger-changes.md): Guidelines for scoping and structuring large contributions \ No newline at end of file diff --git a/website/contribute/contribution-process/how-to-contribute.md b/website/contribute/contribution-process/contributor-guide.md similarity index 100% rename from website/contribute/contribution-process/how-to-contribute.md rename to website/contribute/contribution-process/contributor-guide.md diff --git a/website/contribute/developer-starter-kit/_index.md b/website/contribute/developer-starter-kit/_index.md index eb1e25688..24ce9aba0 100644 --- a/website/contribute/developer-starter-kit/_index.md +++ b/website/contribute/developer-starter-kit/_index.md @@ -8,13 +8,13 @@ weight: 20 This section contains everything you need to start contributing code to Gardener. It walks you through setting up a local development environment and covers the key guidelines and conventions that all Gardener contributors are expected to follow. -- [Local Setup](https://gardener.cloud/contribute/developer-starter-kit/local_setup): How to set up a local Gardener development environment -- [Deploying Gardener Locally](https://gardener.cloud/contribute/developer-starter-kit/getting_started_locally): How to deploy a full Gardener installation on your local machine using kind -- [Dependency Management](https://gardener.cloud/contribute/developer-starter-kit/dependencies): How to add and manage Go module dependencies in the Gardener project -- [Testing Strategy and Guidelines](https://gardener.cloud/contribute/developer-starter-kit/testing): The types of tests used in Gardener and the guidelines for writing them -- [Test Machinery Tests](https://gardener.cloud/contribute/developer-starter-kit/testmachinery_tests): End-to-end tests run against full Gardener installations using Test Machinery -- [Kubernetes Clients in Gardener](https://gardener.cloud/contribute/developer-starter-kit/kubernetes-clients): Guidelines and best practices for using Kubernetes clients in Gardener components -- [Logging Guidelines](https://gardener.cloud/contribute/developer-starter-kit/logging-guidelines): Logging conventions and practices used across Gardener components -- [Changing the API](https://gardener.cloud/contribute/developer-starter-kit/changing-the-api): How to introduce API changes, including the required steps and review process -- [Defaulting Strategy and Guidelines](https://gardener.cloud/contribute/developer-starter-kit/defaulting): Conventions for writing defaulting functions in Gardener -- [Validation Guidelines](https://gardener.cloud/contribute/developer-starter-kit/validation-guidelines): Validation practices and conventions used in the Gardener codebase +- [Local Setup](https://github.com/gardener/gardener/blob/master/docs/development/local_setup.md): How to set up a local Gardener development environment +- [Deploying Gardener Locally](https://github.com/gardener/gardener/blob/master/docs/deployment/getting_started_locally.md): How to deploy a full Gardener installation on your local machine using kind +- [Dependency Management](https://github.com/gardener/gardener/blob/master/docs/development/dependencies.md): How to add and manage Go module dependencies in the Gardener project +- [Testing Strategy and Guidelines](https://github.com/gardener/gardener/blob/master/docs/development/testing.md): The types of tests used in Gardener and the guidelines for writing them +- [Test Machinery Tests](https://github.com/gardener/gardener/blob/master/docs/development/testmachinery_tests.md): End-to-end tests run against full Gardener installations using Test Machinery +- [Kubernetes Clients in Gardener](https://github.com/gardener/gardener/blob/master/docs/development/kubernetes-clients.md): Guidelines and best practices for using Kubernetes clients in Gardener components +- [Logging Guidelines](https://github.com/gardener/gardener/blob/master/docs/development/logging-guidelines.md): Logging conventions and practices used across Gardener components +- [Changing the API](https://github.com/gardener/gardener/blob/master/docs/development/changing-the-api.md): How to introduce API changes, including the required steps and review process +- [Defaulting Strategy and Guidelines](https://github.com/gardener/gardener/blob/master/docs/development/defaulting.md): Conventions for writing defaulting functions in Gardener +- [Validation Guidelines](https://github.com/gardener/gardener/blob/master/docs/development/validation-guidelines.md): Validation practices and conventions used in the Gardener codebase diff --git a/website/contribute/gardener/_index.md b/website/contribute/gardener/_index.md index 316adfc11..16b61a7a8 100644 --- a/website/contribute/gardener/_index.md +++ b/website/contribute/gardener/_index.md @@ -8,20 +8,20 @@ weight: 30 This section contains the developer documentation for core Gardener functionality. -Before diving in, check out the [Developer Starter Kit](https://gardener.cloud/contribute/developer-starter-kit/). There you can learn how to set up your local environment and get familiar with the general development guidelines for Gardener. +Before diving in, check out the [Developer Starter Kit](../developer-starter-kit/_index.md). There you can learn how to set up your local environment and get familiar with the general development guidelines for Gardener. -- [Releases, Features, Hotfixes](https://gardener.cloud/contribute/gardener/process) -- [Checklist For Adding New Components](https://gardener.cloud/contribute/gardener/component-checklist) -- [High Availability of Deployed Components](https://gardener.cloud/contribute/gardener/high-availability-of-components) -- [Autoscaling Specifics for Components](https://gardener.cloud/contribute/gardener/autoscaling-specifics-for-components) -- [`PriorityClass`es in Gardener Clusters](https://gardener.cloud/contribute/gardener/priority-classes) -- [Secrets Management for Seed and Shoot Cluster](https://gardener.cloud/contribute/gardener/secrets_management) -- [Reversed VPN Tunnel Setup and Configuration](https://gardener.cloud/contribute/gardener/reversed-vpn-tunnel) -- [IPv6 in Gardener Clusters](https://gardener.cloud/contribute/gardener/ipv6) -- [Shoot Advertised Addresses](https://gardener.cloud/contribute/gardener/shoot-advertised-addresses) -- [The Logging Stack in Gardener](https://gardener.cloud/contribute/gardener/logging-stack) -- [Creating Log Parsers for fluent-bit](https://gardener.cloud/contribute/gardener/log_parsers) -- [Adding Support For a New Kubernetes Version](https://gardener.cloud/contribute/gardener/new-kubernetes-version) -- [Removing Support For a Kubernetes Version](https://gardener.cloud/contribute/gardener/remove-support-for-kubernetes-version) -- [Adding a New Cloud Provider](https://gardener.cloud/contribute/gardener/new-cloud-provider) -- [Extending the Monitoring Stack](https://gardener.cloud/contribute/gardener/monitoring-stack) +- [Releases, Features, Hotfixes](https://github.com/gardener/gardener/blob/master/docs/development/process.md) +- [Checklist For Adding New Components](https://github.com/gardener/gardener/blob/master/docs/development/component-checklist.md) +- [High Availability of Deployed Components](https://github.com/gardener/gardener/blob/master/docs/development/high-availability-of-components.md) +- [Autoscaling Specifics for Components](https://github.com/gardener/gardener/blob/master/docs/development/autoscaling-specifics-for-components.md) +- [`PriorityClass`es in Gardener Clusters](https://github.com/gardener/gardener/blob/master/docs/development/priority-classes.md) +- [Secrets Management for Seed and Shoot Cluster](https://github.com/gardener/gardener/blob/master/docs/development/secrets_management.md) +- [Reversed VPN Tunnel Setup and Configuration](https://github.com/gardener/gardener/blob/master/docs/development/reversed-vpn-tunnel.md) +- [IPv6 in Gardener Clusters](https://github.com/gardener/gardener/blob/master/docs/development/ipv6.md) +- [Shoot Advertised Addresses](https://github.com/gardener/gardener/blob/master/docs/development/shoot-advertised-addresses.md) +- [The Logging Stack in Gardener](https://github.com/gardener/gardener/blob/master/docs/development/logging-stack.md) +- [Creating Log Parsers for fluent-bit](https://github.com/gardener/gardener/blob/master/docs/development/log_parsers.md) +- [Adding Support For a New Kubernetes Version](https://github.com/gardener/gardener/blob/master/docs/development/new-kubernetes-version.md) +- [Removing Support For a Kubernetes Version](https://github.com/gardener/gardener/blob/master/docs/development/remove-support-for-kubernetes-version.md) +- [Adding a New Cloud Provider](https://github.com/gardener/gardener/blob/master/docs/development/new-cloud-provider.md) +- [Extending the Monitoring Stack](https://github.com/gardener/gardener/blob/master/docs/development/monitoring-stack.md) From 95e22c4fa6ee26cd4cbe1bd81a54cbcf22fdc914 Mon Sep 17 00:00:00 2001 From: Bozhidara Hristova Date: Wed, 29 Apr 2026 20:02:23 +0300 Subject: [PATCH 20/25] Apply suggestions by CodeRabbit --- .vitepress/theme/components/CardGrid.vue | 2 +- website/contribute/_index.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.vitepress/theme/components/CardGrid.vue b/.vitepress/theme/components/CardGrid.vue index 22a7ff1e1..129cf8d29 100644 --- a/.vitepress/theme/components/CardGrid.vue +++ b/.vitepress/theme/components/CardGrid.vue @@ -20,7 +20,7 @@ defineProps<{ From 3086f949db30dd9cf28f714808539ae2b67662d6 Mon Sep 17 00:00:00 2001 From: klocke-io Date: Mon, 4 May 2026 14:52:01 +0200 Subject: [PATCH 25/25] refactor: remove redundant CardGridGroup component CardGrid already uses grid-auto-rows: 1fr which equalizes card heights. The CardGridGroup wrapper was a no-op after the CSS refactor. --- .vitepress/theme/components/CardGridGroup.vue | 11 ----------- .vitepress/theme/index.ts | 2 -- website/contribute/_index.md | 4 ---- 3 files changed, 17 deletions(-) delete mode 100644 .vitepress/theme/components/CardGridGroup.vue diff --git a/.vitepress/theme/components/CardGridGroup.vue b/.vitepress/theme/components/CardGridGroup.vue deleted file mode 100644 index 63aa7d85d..000000000 --- a/.vitepress/theme/components/CardGridGroup.vue +++ /dev/null @@ -1,11 +0,0 @@ - - - diff --git a/.vitepress/theme/index.ts b/.vitepress/theme/index.ts index fe1571089..d0d7fbb04 100644 --- a/.vitepress/theme/index.ts +++ b/.vitepress/theme/index.ts @@ -10,7 +10,6 @@ import BlogPostMeta from './components/BlogPostMeta.vue' import PageActions from './components/PageActions.vue' import VPFeatures from './components/VPFeatures.vue' import CardGrid from './components/CardGrid.vue' -import CardGridGroup from './components/CardGridGroup.vue' import './style.css' @@ -29,7 +28,6 @@ export default { app.component('YouTubeVideo', YouTubeVideo) app.component('VPFeatures', VPFeatures) app.component('CardGrid', CardGrid) - app.component('CardGridGroup', CardGridGroup) }, } satisfies Theme diff --git a/website/contribute/_index.md b/website/contribute/_index.md index 6987ac0b1..c319fe123 100644 --- a/website/contribute/_index.md +++ b/website/contribute/_index.md @@ -12,8 +12,6 @@ This page is your starting point for contributing to Gardener. It contains all d We appreciate all kinds of contributions – from fixing a typo to implementing a new feature. Let's grow Gardener together! - - ## Get Started - -