[Multi_K8s-Plugin] Add plugin documentation page#6878
[Multi_K8s-Plugin] Add plugin documentation page#6878mohammedfirdouss wants to merge 16 commits into
Conversation
Signed-off-by: Mohammed Firdous <124298708+mohammedfirdouss@users.noreply.github.com>
Warashi
left a comment
There was a problem hiding this comment.
I'm not good at English or documentation styling, so I want others to review the English wording and/or styling.
cc: @pipe-cd/pipecd-approvers-docs
| | prune | bool | Remove resources that are no longer defined in Git. | false | | ||
| | multiTargets | []string | Restrict the stage to these deploy targets. | all | | ||
|
|
||
| ### K8S_PRIMARY_ROLLOUT |
There was a problem hiding this comment.
I'm so sorry for not noticing that the stage name conflicts with the Kubernetes plugin
It's not allowed that a Piped instance has some plugins with the same stage names, which is a limitation of the Piped implementation.
Please change the stage name of the Kubernetes multicluster plugin to something else, for example, "K8S_MULTI_PRIMARY_ROLLOUT."
There was a problem hiding this comment.
The conflicting stage names (K8S_PRIMARY_ROLLOUT, K8S_CANARY_ROLLOUT, etc.) need to be renamed in both the Go source and the docs to avoid collision with the regular Kubernetes plugin. I should open a PR for this.
| kubeConfigPath: /etc/piped/kube/cluster-us | ||
| ``` | ||
|
|
||
| 2. **`kubectl` must be reachable from the piped host.** The plugin invokes `kubectl` (and `kustomize`/`helm` when used) via the tool registry; pin a version with `kubectlVersion` if you need a specific one. |
There was a problem hiding this comment.
Does reachable mean that the piped host can download the kubectl binary from the internet? If so, it's correct and ok.
If that means that the kubectl binary must exist on the piped host, then it's not correct. The piped downloads the kubectl binary through the tool registry, so the kubectl binary doesn't need to exist on the piped host.
There was a problem hiding this comment.
Hmm, I think reachable is ambigous, kubectl binary is pre-installed on the host, OR the host has internet access to download it. Yeah correct, update it shortly.
okay no problem |
…cally by piped Signed-off-by: Mohammed Firdous <124298708+mohammedfirdouss@users.noreply.github.com>
Signed-off-by: Mohammed Firdous <124298708+mohammedfirdouss@users.noreply.github.com>
Signed-off-by: Mohammed Firdous <124298708+mohammedfirdouss@users.noreply.github.com>
|
@eeshaanSA @khanhtc1202 please have a look when free. |
|
I'm okay with the docs itself. Only need @eeshaanSA or @rahulshendre to confirm the structure, then it's good to go. Thanks 👍 |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #6878 +/- ##
==========================================
- Coverage 29.38% 27.28% -2.10%
==========================================
Files 601 533 -68
Lines 64276 57596 -6680
==========================================
- Hits 18887 15717 -3170
+ Misses 43922 40644 -3278
+ Partials 1467 1235 -232
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
rahulshendre
left a comment
There was a problem hiding this comment.
Structure: LGTM
This is the first official plugin page, so it effectively sets the template for the plugin docs that follow (terraform, ecs, cloud run). The flow works very well 👍
|
|
||
| ### Per-cluster manifests with multiTargets | ||
|
|
||
| Each `multiTargets` entry binds a deploy target name to its own manifest paths (and optional tool overrides). Use this when clusters need different manifests — for example region-specific config: |
There was a problem hiding this comment.
tiny nit: a stray em dash on line 195 (the multiTargets section, "manifests — for example") - swap it for a hyphen 👀
Signed-off-by: Mohammed Firdous <124298708+mohammedfirdouss@users.noreply.github.com>
|
@eeshaanSA review please |
rahulshendre
left a comment
There was a problem hiding this comment.
LGTM 👍
Thanks @mohammedfirdouss
What this PR does: Adds a documentation page for the
kubernetes_multiclusterplugin and updates the plugins index to include it.Why we need it: The plugin has no user-facing documentation yet. This page covers prerequisites, all 8 pipeline stages with options tables, multi-cluster features (per-cluster manifests, per-stage filtering), livestate/drift detection, plan preview, Helm authentication, and a complete configuration reference.
Which issue(s) this PR fixes:
Fixes #
Does this PR introduce a user-facing change?:
kubernetes_multiclusterplugin atdocs-v1.0.x/plugins/kubernetes-multicluster/