Skip to content

feat: add GitOps installation procedures - #3141

Merged
gtrivedi88 merged 1 commit into
eclipse-che:mainfrom
gtrivedi88:gitops-install-procedures
Aug 5, 2026
Merged

feat: add GitOps installation procedures#3141
gtrivedi88 merged 1 commit into
eclipse-che:mainfrom
gtrivedi88:gitops-install-procedures

Conversation

@gtrivedi88

Copy link
Copy Markdown
Contributor

Summary

  • Add two new procedures for deploying Che using Argo CD (GitOps)
  • Update installation overview to include GitOps as a deployment method
  • Add "Deploy using GitOps" section to nav (before OpenShift deploy methods)

What changed

Action File
Created modules/install/pages/proc_deploying-che-using-gitops.adoc
Created modules/install/pages/proc_deploying-che-using-gitops-in-a-restricted-environment.adoc
Modified modules/install/pages/con_installation-overview.adoc
Modified modules/install/nav.adoc

Why

SME feedback: production deployments use GitOps (Argo CD), not CLI or web console. The GitOps procedure should be the primary installation method.

Two procedures cover:

  1. Connected clusters: Argo CD pulling from an external Git repo
  2. Air-gapped clusters: Argo CD pulling from an internal Git repo + mirrored registry

Cluster testing

Tested end-to-end on OCP 4.21 ROSA cluster (Jul 2, 2026):

  • Single Argo CD Application with SkipDryRunOnMissingResource=true works
  • Operator installs via OLM, CheCluster CR applied after CRD is registered
  • Dashboard comes up, Phase: Active

Downstream alignment

Content body is identical to downstream devspaces-documentation procedures on the gitops-install-procedures branch. Only metadata wrappers differ (:_content-type: vs :_mod-docs-content-type:, no _{context} suffixes, Antora xrefs vs link: macros).

Test plan

  • Antora build succeeds
  • nav renders with "Deploy using GitOps" section
  • Vale passes on new files

Made with Cursor

@gtrivedi88
gtrivedi88 requested review from a team, deerskindoll and mkuznyetsov as code owners July 2, 2026 09:21
@gtrivedi88
gtrivedi88 requested a review from ibuziuk July 2, 2026 09:21
@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown

🎊 Navigate the preview: https://6a72e2fc324154cae529237b--eclipse-che-docs-pr.netlify.app 🎊

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown

Click here to review and test in web IDE: Contribute

@gtrivedi88
gtrivedi88 force-pushed the gitops-install-procedures branch 2 times, most recently from 8af33c4 to c9a12e3 Compare July 2, 2026 11:42
@gtrivedi88
gtrivedi88 force-pushed the gitops-install-procedures branch from b78e961 to a44cff4 Compare July 15, 2026 12:00
@gtrivedi88
gtrivedi88 force-pushed the gitops-install-procedures branch from a44cff4 to ca5eac5 Compare July 27, 2026 17:57
@btjd

btjd commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

From what I can tell, the old nav linked installing-che.adoc, which carries a large :page-aliases: list for historical URLs. Now that it's removed from the nav, have you verified that those aliases still resolve correctly in the Antora build, or do they need to be migrated to another page?

@gtrivedi88

gtrivedi88 commented Aug 4, 2026

Copy link
Copy Markdown
Contributor Author

@btjd Thank you, verified this. The installing-che.adoc file was not deleted, only removed from nav.adoc. It still exists at modules/install/pages/installing-che.adoc with all 14 :page-aliases: intact.
Antora resolves :page-aliases: for all pages in the pages/ directory regardless of nav presence, so all historical URL redirects (3-minutes-to-che, quick-starts, installing-che-on-aws, etc.) continue to work. The page becomes an orphan (accessible by URL, not in the sidebar), but aliases still generate redirects.

That said, I'll update the 3 cross-module xrefs that still point to installing-che.adoc (from roles-and-tasks.adoc, che-operator.adoc, and snip_che-supported-platforms.adoc) to point to con_installation-overview.adoc instead, that's the new entry point and it's in the nav. This way readers landing from those links see the page in the sidebar context.

@gtrivedi88
gtrivedi88 force-pushed the gitops-install-procedures branch 2 times, most recently from 9d77603 to 2ff1c64 Compare August 4, 2026 11:43

@btjd btjd left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

lgtm

roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

IMHO I would replace this with:

  {orch-cli} apply -f - <<EOF
  apiVersion: rbac.authorization.k8s.io/v1
  kind: ClusterRole
  metadata:
    name: argocd-che-installer
  rules:
    - apiGroups: [""]
      resources: ["namespaces"]
      verbs: ["get", "list", "create", "update", "patch"]
    - apiGroups: ["operators.coreos.com"]
      resources: ["subscriptions", "operatorgroups"]
      verbs: ["get", "list", "create", "update", "patch", "delete"]
    - apiGroups: ["org.eclipse.che"]
      resources: ["checlusters"]
      verbs: ["get", "list", "create", "update", "patch", "delete"]
  ---
  apiVersion: rbac.authorization.k8s.io/v1
  kind: ClusterRoleBinding
  metadata:
    name: argocd-che-installer
  roleRef:
    apiGroup: rbac.authorization.k8s.io
    kind: ClusterRole
    name: argocd-che-installer
  subjects:
    - kind: ServiceAccount
      name: argocd-application-controller
      namespace: argocd
  EOF

to avoid giving cluster-admin permissions to the service account.

I tested the above on my cluster.

+
[source,bash,subs="+attributes,+quotes"]
----
$ {orch-cli} apply -f - <<EOF

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

@dkwon17

dkwon17 commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

I got it working on my cluster:
image

With this git repo: https://github.com/dkwon17/gitops-test

Add two procedures for deploying Che using Argo CD (GitOps):
- proc_deploying-che-using-gitops.adoc: connected cluster deployment
- proc_deploying-che-using-gitops-in-a-restricted-environment.adoc:
  air-gapped deployment with mirrored registry

Update con_installation-overview.adoc with GitOps as a deployment
method and deployment scenario.

Flatten Install nav to remove redundant 'Install Che' nesting.
Add persona callouts to all Install module pages using a local
partial (snip_persona-admin.adoc).

Tested end-to-end on OCP 4.21 ROSA cluster.
Content body identical to downstream devspaces-documentation.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gtrivedi88
gtrivedi88 force-pushed the gitops-install-procedures branch from 2ff1c64 to 0700526 Compare August 5, 2026 07:09
@gtrivedi88

Copy link
Copy Markdown
Contributor Author

@dkwon17 I have addressed your suggestions, could you please review?

@dkwon17

dkwon17 commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

@gtrivedi88 thank you, LGTM

@gtrivedi88
gtrivedi88 merged commit 510220f into eclipse-che:main Aug 5, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants