You signed in with another tab or window.Reload to refresh your session.You signed out in another tab or window.Reload to refresh your session.You switched accounts on another tab or window.Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: _docs/installation/gitops/hybrid-gitops-helm-installation.md
+30-35Lines changed: 30 additions & 35 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,7 +13,7 @@ The [CLI-based installation for Hybrid GitOps]({{site.baseurl}}/docs/installatio
13
13
We will deprecate this installation mode permanently in the coming months. Please stay tuned for further updates and instructions, including guidelines on the migration process.
14
14
15
15
16
-
This article walks you through the process of installing Hybrid GitOps Runtimes in your Codefresh accounts using Helm charts.Note that youcanhave only one GitOps Runtimepercluster, but multiple GitOps Runtimes can be installed in the same account across different clusters. Each Runtime within your account must have a unique name.
16
+
This article walks you through the process of installing Hybrid GitOps Runtimes in your Codefresh accounts using Helm charts.Youcaninstall a single GitOps Runtimeon acluster. Additional Runtimes can be installed in the same account across different clusters. Each Runtime within your account must have a unique name.
17
17
18
18
***First-time GitOps Runtime installation**
19
19
If this is your first time installing a GitOps Runtime in your Codefresh account, follow these steps:
@@ -23,8 +23,8 @@ This article walks you through the process of installing Hybrid GitOps Runtimes
23
23
*[Step-by-step installation](#install-first-gitops-runtime-in-account): Follow our step-by-step guide to install the Hybrid GitOps Runtime from the Codefresh UI.
24
24
25
25
26
-
***Installing additionalGitOpsRuntimes in accounts**
27
-
If you have already installed a GitOps Runtime in your account, and want to install additional Runtimes on different clusters within the same account, continue with a[simplified installation](#install-additional-gitops-runtimes-in-account) from the Codefresh UI, or use[Terraform](/install-gitops-runtime-via-terraform).
26
+
***AdditionalGitOpsRuntime installation**
27
+
If you have already installed a GitOps Runtime in your account and want to install additional Runtimes on different clusters within the same account, continue with a[simplified installation](#install-additional-gitops-runtimes-in-account) from the Codefresh UI, or use[Terraform](/install-gitops-runtime-via-terraform).
28
28
Git provider and Shared Configuration Repository for example are not required for the additional Runtimes, as they are already set up for your account.
29
29
30
30
@@ -80,7 +80,7 @@ The Codefresh `values.yaml` located [here](https://github.com/codefresh-io/gitop
80
80
* Make sure you meet the[minimum requirements](#minimum-system-requirements) for installation
81
81
* Git provider requirements:
82
82
*[Git Runtime token with the required scopes]({{site.baseurl}}/docs/reference/git-tokens/#git-runtime-token-scopes) which you need to supply as part of the Helm install command
83
-
*[Git user token]({{site.baseurl}}/docs/reference/git-tokens/#git-personal-tokens) with the required scopes for Git-based actions
83
+
<!---* [Git user token]({{site.baseurl}}/docs/reference/git-tokens/#git-personal-tokens) with the required scopes for Git-based actions-->
84
84
* Server URLs for on-premises Git providers
85
85
* Verify there are no Argo project components and CRDs in the target namespace or that you have adopted the CRDs (see[Argo project components & CRDs](#argo-project-components--crds))
86
86
* For ingress-based runtimes only, verify that these ingress controllers are configured correctly:
@@ -103,9 +103,9 @@ As a one-time action, select the Git provider and the Shared Configuration Repos
103
103
104
104
The Git provider you select for the first GitOps Runtime in your account is used for all the other Runtimes installed in the same account.
105
105
106
-
The[Shared Configuration Repository]({{site.baseurl}}/docs/installation/gitops/shared-configuration/) is a Git repository with configuration manifests shared between all the Hybrid GitOps Runtimes within the same account.To change the Shared Configuration Repo after installation, see Reset Shared Configuration Repository.
107
-
106
+
The[Shared Configuration Repository]({{site.baseurl}}/docs/installation/gitops/shared-configuration/) is a Git repository with configuration manifests shared between all the Hybrid GitOps Runtimes within the same account.
108
107
108
+
<br><br>
109
109
110
110
1. Select the**Git provider** from the list.
111
111
1. Define the**API URL** for the Git provider you selected, as one of the following:
@@ -125,7 +125,7 @@ Install the Hybrid GitOps Runtime through the Helm chart. The Codefresh `values.
125
125
126
126
>**TIP**:
127
127
Before initiating the installation, Codefresh automatically validates the `values.yaml` file to verify that the supplied values are correct.<br>
128
-
If the Helm installation is terminated with the error message:`Job has reached the specified backoff limit`,you canget more detailedand meaningfulinformation on the reason for the validation failure, with:
128
+
If the Helm installation is terminated with the error message:`Job has reached the specified backoff limit`, get more detailed information on the reason for the validation failure with:
129
129
`kubectl logs jobs/validate-values -n ${NAMESPACE}`, replacing`{NAMESPACE}` with the namespace of the Hybrid GitOps Runtime.
130
130
131
131
**Runtime Name**
@@ -136,11 +136,11 @@ The Namespace must conform to the naming conventions for Kubernetes objects.
136
136
137
137
**Access modes**
138
138
You can define one of three different access modes:
139
-
* Tunnel-based, the default mode, automatically enabled when the other access modes are not defined in the installation command.
140
-
* Ingress-based, uses an ingress controller, which, depending on the type of ingress controller, may need to be configured both before and after installation.
141
-
* Service-mesh-based, which may also need to be configured before and after installation. This mode requires explicitly disabling the tunnel- and ingress-based modes in the installation command.
139
+
* Tunnel-based, the default mode, is automatically enabled when the other access modes are not defined in the installation command.
140
+
* Ingress-based, uses an ingress controller, which, depending on the type of ingress controller, may need to be configured both before and after installation. See[Ingress controller configuration](#ingress-controller-configuration) in this article.
141
+
* Service-mesh-based, which requires explicitly disabling the tunnel- and ingress-based modes in the installation command. The service mesh may also need to be configured before and after installation. See[Ingress controller configuration](#ingress-controller-configuration) in this article.
142
+
142
143
143
-
See[Ingress controller configuration](/#ingress-controller-configuration) in this article.
144
144
145
145
146
146
<br><br>
@@ -155,13 +155,10 @@ See [Ingress controller configuration](/#ingress-controller-configuration) in th
155
155
where: <br>
156
156
`<helm-repo-name>` is the name of the repository to which to add the Hybrid GitOps Runtime Helm chart, and is by default`cf-gitops-runtime`.
157
157
1. Copy and run the command to install the runtime Helm chart:
158
-
The commands differ depending on the access mode. An ingress-based Hybrid GitOps Runtime requires additional flags.<br>
158
+
The commands differ depending on the access mode. Ingress-based or service-mesh-based access modes for the Runtime require additional flags.<br>
159
+
Unless otherwise indicated, values are automatically populated by Codefresh. If you're using a terminal, remember to copy the values from the UI beforehand.<br>
159
160
160
-
>**NOTE**:
161
-
Unless otherwise indicated, values are automatically populated by Codefresh.
162
-
If you're using a terminal, remember to copy the values from the UI beforehand.<br>
163
-
164
-
161
+
165
162
166
163
**Tunnel-based install chart command:**<br>
167
164
{% highlight yaml %}
@@ -263,8 +260,8 @@ For more information on generating SSH private keys, see the official documentat
263
260
**How to**
264
261
1. In the Sync Status column for the Runtime you just installed, click**Complete Installation**.
265
262
1. Do one of the following:
266
-
* If your admin has set up OAuth access, click**Authorize Access to Git Provider**. Go to_step2_.
267
-
* Alternatively, authenticate with an access token from your Git provider. Go to_step3_.
263
+
* If your admin has set up OAuth access, click**Authorize Access to Git Provider**. Go to_step3_.
264
+
* Alternatively, authenticate with an access token from your Git provider. Go to_step4_.
268
265
1. For OAuth2 authorization:
269
266
>**NOTE**:
270
267
If the application is not registered and you get an error, contact your admin for help.
@@ -307,13 +304,13 @@ You cannot configure the Runtime as an Argo Application if you have not configur
307
304
308
305
309
306
###Step 6: (Optional) Create a Git Source
310
-
Create a[Git Source]({{site.baseurl}}/docs/installation/gitops/git-sources/#create-a-git-source) for the Runtime.
307
+
Create a Git Source for the Runtime.A Git Source is a Git repository with an opionionated folder structure, managed by Codefresh. You can create Git Sources at any time through the Codefresh UI.
Required only for ALB AWS, Istio, orNGINX Enterprise ingress-controllers.<br>
313
+
Required only for ALB AWS andNGINX Enterprise ingress-controllers, and Istio service meshes.<br>
317
314
318
315
* Complete configuring these ingress controllers:
319
316
*[ALB AWS: Alias DNS record in route53 to load balancer](#create-an-alias-to-load-balancer-in-route53)
@@ -326,7 +323,7 @@ That's it! You have successfully completed installing a Hybrid GitOps Runtime wi
326
323
327
324
Depending on your configuration, if you have private registries, you need to override specific image values, and if your Git servers are on-premises, you need to add custom repository certificates. See[Optional GitOps Runtime configuration](#optional-gitops-runtime-configuration) in this article.
328
325
329
-
You can now add[Git Sources]({{site.baseurl}}/installation/gitops/git-sources/),[external clusters]({{site.baseurl}}/docs/installation/gitops/managed-cluster/), and[create and deploy GitOps applications]({{site.baseurl}}/docs/deployments/gitops/create-application/).
326
+
You can now add[external clusters]({{site.baseurl}}/docs/installation/gitops/managed-cluster/), and[create and deploy GitOps applications]({{site.baseurl}}/docs/deployments/gitops/create-application/).
330
327
331
328
332
329
##Install additional GitOps Runtimes in account
@@ -335,13 +332,13 @@ The Codefresh `values.yaml` located [here](https://github.com/codefresh-io/gitop
335
332
336
333
337
334
**Git provider and Shared Configuration Repository**
338
-
The Git provider and Shared Configuration Repository,configured once per account,has already been set up in your initial installation,and not required for additional installations.
335
+
The Git provider and Shared Configuration Repository isconfigured once per account, and are not required for additional installations.
339
336
340
337
**Access mode**
341
-
You can define the tunnel/ingress/service-mesh-based access mode for the additional GitOps Runtimes. The command in the How To below is valid for the tunnel-based access mode. For ingress-based or service-mesh-based access modes, add the required arguments and values, as described in the step-by-step section,[Step 3: Install Hybrid GitOps Runtime](/#step-3-install-hybrid-gitops-runtime).
338
+
You can define the tunnel/ingress/service-mesh-based access mode for the additional GitOps Runtimes. The command in the How To below is valid for the tunnel-based access mode. For ingress-based or service-mesh-based access modes, add the required arguments and values, as described in the step-by-step section,[Step 3: Install Hybrid GitOps Runtime](#step-3-install-hybrid-gitops-runtime).
342
339
343
340
**Runtime name**
344
-
ThenewRuntime musthave aunique name in the same account.
341
+
Thename of theRuntime mustbeunique in the same account.
345
342
346
343
347
344
**How to**
@@ -376,7 +373,7 @@ where:
376
373
377
374
Depending on your configuration, if you have private registries, you need to override specific image values, and if your Git servers are on-premises, you need to add custom repository certificates. See[Optional GitOps Runtime configuration](#optional-gitops-runtime-configuration) in this article.
378
375
379
-
You can now add[Git Sources]({{site.baseurl}}/installation/gitops/git-sources/),[external clusters]({{site.baseurl}}/docs/installation/gitops/managed-cluster/),[create and deploy GitOps applications]({{site.baseurl}}/docs/deployments/gitops/create-application/).
376
+
You can now add[Git Sources]({{site.baseurl}}/docs/installation/gitops/git-sources),[external clusters]({{site.baseurl}}/docs/installation/gitops/managed-cluster/),[create and deploy GitOps applications]({{site.baseurl}}/docs/deployments/gitops/create-application/).
Feel free to user a different chart version and a unique name for the Runtime. You can get the values for both the Codefresh API token and account ID from the Codefresh UI as explained in the previous section.
415
412
416
-
The example is valid for the tunnel-based access mode. For ingress-based or service-mesh-based access modes, add the required arguments and values, as described in the step-by-step section,[Step 3: Install Hybrid GitOps Runtime](/#step-3-install-hybrid-gitops-runtime).
413
+
The example is valid for the tunnel-based access mode. For ingress-based or service-mesh-based access modes, add the required arguments and values, as described in the step-by-step section,[Step 3: Install Hybrid GitOps Runtime](#step-3-install-hybrid-gitops-runtime).
417
414
418
415
Depending on your configuration, if you have private registries, you need to override specific image values, and if your Git servers are on-premises, you need to add custom repository certificates. See[Optional GitOps Runtime configuration](#optional-gitops-runtime-configuration) in this article.
419
416
420
-
By default, the GitOps Runtime can deploy to the cluster it is installed on.
421
-
You can also[use Terraform to connect additional]({{site.baseurl}}/docs/installation/gitops/managed-cluster/#add-a-managed-cluster-with-terraform) external clusters to your Runtime.
422
-
417
+
By default, the GitOps Runtime can deploy to the cluster it is installed on. You can add[Git Sources]({{site.baseurl}}/docs/installation/gitops/git-sources), use[Terraform to connect external clusters]({{site.baseurl}}/docs/installation/gitops/managed-cluster/#add-a-managed-cluster-with-terraform), and[create and deploy GitOps applications]({{site.baseurl}}/docs/deployments/gitops/create-application/).
423
418
424
419
425
420
##Optional GitOps Runtime configuration
426
421
427
422
###Image overrides for private registries
428
-
If you use private registries, youneed to override specific image values for the different subcharts and container images.
429
-
We have autilityto helpoverride image values for GitOps Runtimes. The utility createsvalues files that match the structure of the subcharts, allowing you to easily replace image registries. During chart installation, you can provide these values files to override the images, as needed.
423
+
If you use private registries, youmust override specific image values for the different subcharts and container images.
424
+
Ourutilityhelpsoverride image values for GitOps Runtimes by creating`values` files that match the structure of the subcharts, allowing you to easily replace image registries. During chart installation, you can provide these`values` files to override the images, as needed.
430
425
For more details, see[ArtifactHub](https://artifacthub.io/packages/helm/codefresh-gitops-runtime/gitops-runtime#using-with-private-registries---helper-utility){:target="\_blank"}.
|Git access tokens| {::nomarkdown}Git runtime token:<ul><li>Valid expiration date</li><li>Scopes:<ul><li><ahref="https://codefresh.io/docs/docs/reference/git-tokens/#github-and-github-enterprise-runtime-token-scopes">GitHub and GitHub Enterprise</a></li><li><ahref="https://codefresh.io/docs/docs/reference/git-tokens/#gitlab-cloud-and-gitlab-server-runtime-token-scopes">GitLab Cloud and GitLab Server</a></li><li><ahref="https://codefresh.io/docs/docs/reference/git-tokens/#bitbucket-cloud-and-bitbucket-server-runtime-token-scopes">Bitbucket Cloud and Server</a> </li></ul></ul>{:/}|
466
-
||Git user token:{::nomarkdown}<ul><li>Valid expiration date</li><li>Scopes: <ul><li><ahref="https://codefresh.io/docs/docs/reference/git-tokens/#github-and-github-enterprise-personal-user-token-scopes">GitHub and GitHub Enterprise</a></li><li><ahref="https://codefresh.io/docs/docs/reference/git-tokens/#gitlab-cloud-and-gitlab-server-personal-user-token-scopes">GitLab Cloud and GitLab Server</a></li><li><ahref="https://codefresh.io/docs/docs/reference/git-tokens/#bitbucket-cloud-and-server-personal-user-token-scopes">Bitbucket Cloud and Server</a> </li></ul>{:/}|