Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit955c977

Browse files
authored
Gitops helm install (#626)
* Add topic for helm hybrid gitops install* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.md* Update nav.ymlAdded helm install for hybrid gitops* Update nav.yml* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.mdAdded latest changes with ingress flags for ingress-based runtimes* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.mdFixed nested lists indentation* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.mdAdded --devel flag install command and --helm update command to create Helm repo command* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.mdAdded double quotes to global.runtime.ingress.hosts[0] and added ingress configuration steps at end of install proc* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.mdFixed links to post-install ingress configuration* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.mdFixed line breaks and list numbering* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.md* Update hybrid-gitops-helm-installation.md
1 parentabd15e4 commit955c977

File tree

1 file changed

+47
-17
lines changed

1 file changed

+47
-17
lines changed

‎_docs/installation/gitops/hybrid-gitops-helm-installation.md‎

Lines changed: 47 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,37 @@ Install the Hybrid Runtime for GitOps through a Helm chart.
1313
Ingress-based access modes require an ingress controller to be configured before the installation, and additional flags such as the ingress host and class to be supplied as part of the install command.
1414

1515
* Shared configuration repository
16-
The Alpha version assumes that you already have a shared configuration repository for your account.
16+
The Alpha version assumes that you already have a[shared configuration repository]({{site.baseurl}}/docs/reference/shared-configuration/) for your account.
1717
If this is not the case, contact support to help you set one up.
1818

19+
* Argo project CRDs
20+
The installation requires a cluster without Argo project CRDs.
21+
You can handle Argo project CRDs outside the chart, or as recommended, adopt the CRDs to be managed by the GitOps runtime Helm release.
22+
For details, see[Argo project CRDs](#argo-project-crds).
23+
24+
25+
##Argo project CRDs
26+
If you already have Argo project CRDs on your cluster, do one of the following:
27+
* Handle Argo projects CRDs outside of the chart (see[Argo's readme on Helm charts](https://github.com/argoproj/argo-helm/blob/main/README.md){:target="\_blank"})
28+
Disable CRD installation under the relevant section for each of the Argo projects in the Helm chart:<br>
29+
`--set <argo-project>.crds.install=false`<br>
30+
where:<br>
31+
`<argo-project>` is the argo project component:`argo-cd`,`argo-workflows`,`argo-rollouts` and`argo-events`.
32+
33+
* Adopt the CRDs<br>
34+
Adopting the CRDs allows them to be managed by the`gitops-runtime helm release`. Doing so ensures that a runtime upgrade also automatically upgrades the CRDs.
35+
36+
Run this script_before_ installation:
37+
38+
```
39+
#!/bin/sh
40+
RELEASE=<helm-release-name>
41+
NAMESPACE=<target-namespace>
42+
kubectl label --overwrite crds $(kubectl get crd | grep argoproj.io | awk '{print $1}' | xargs) app.kubernetes.io/managed-by=Helm
43+
kubectl annotate --overwrite crds $(kubectl get crd | grep argoproj.io | awk '{print $1}' | xargs) meta.helm.sh/release-name=$RELEASE
44+
kubectl annotate --overwrite crds $(kubectl get crd | grep argoproj.io | awk '{print $1}' | xargs) meta.helm.sh/release-namespace=$NAMESPACE
45+
```
46+
1947

2048

2149
##Prerequisites
@@ -25,7 +53,8 @@ Install the Hybrid Runtime for GitOps through a Helm chart.
2553
*[Runtime token with the required scopes]({{site.baseurl}}/docs/reference/git-tokens/#git-runtime-token-scopes). You will need it after installation to update runtime credentials
2654
*[Personal Access Token (PAT)]({{site.baseurl}}/docs/reference/git-tokens/#git-personal-tokens) for Git-based actions
2755
* Server URLs for on-premises Git providers
28-
* (Optional, for ingress-based runtimes only) configuration for ingress controllers:
56+
* Verify there are no Argo project CRDs in the target namespace or that you have adopted the CRDs (see[Argo project CRDs](#argo-project-crds))
57+
* For ingress-based runtimes only, verify that these ingress controllers are configured correctly:
2958
*[Ambasador ingress configuration]({{site.baseurl}}/docs/installation/gitops/hybrid-gitops/#ambassador-ingress-configuration)
3059
*[AWS ALB ingress configuration]({{site.baseurl}}/docs/installation/gitops/hybrid-gitops/#alb-aws-ingress-configuration)
3160
*[Istio ingress configuration]({{site.baseurl}}/docs/installation/gitops/hybrid-gitops/#istio-ingress-configuration)
@@ -55,19 +84,21 @@ The ingress class is the ingress class of the ingress controller, for example, `
5584
>The Namespace must be identical to the Runtime Name. The default names are`codefresh` for both.
5685
1. Copy and run the command to the add the repository for the Helm chart:
5786
`helm repo add <helm-repo-name> https://chartmuseum.codefresh.io/gitops-runtime` <br>
58-
`helm repo update`
59-
where:
87+
`helm repo update`<br>
88+
where:<br>
6089
`<helm-repo-name>` is the name of the repository to which to add the runtime Helm chart. For example,`cf-gitops-runtime`.
6190
1. Copy and run the command to install the runtime Helm chart:
6291
The commands differ depending on the access mode. An ingress-based runtime requires additional flags.<br>
63-
**Tunnel-based install chart command:**<br>
64-
`helm upgrade --install <helm-release-name> --create-namespace --namespace <namespace> --set global.codefresh.accountId=<codefresh-account-id> --set global.codefresh.userToken.token=<codefresh-api-key> --set global.runtime.name=<runtime-name> <helm-repo-name>/gitops-runtime --devel`
6592

66-
**Ingress-based install chart command:**<br>
67-
`helm upgrade --install <helm-release-name> --create-namespace --namespace <namespace> --set global.codefresh.accountId=<codefresh-account-id> --set global.codefresh.userToken.token=<codefresh-api-key> --set global.runtime.name=<runtime-name> <helm-repo-name>/gitops-runtime --set global.runtime.ingress.enabled=true --set "global.runtime.ingress.hosts[0]"=<ingress-host> --set global.runtime.ingress.className=<ingress-class> --devel`
68-
69-
>Unless otherwise indicated, values are automatically populated by Codefresh.
93+
**Tunnel-based install chart command:**<br>
94+
`helm upgrade --install <helm-release-name> --create-namespace --namespace <namespace> --set global.codefresh.accountId=<codefresh-account-id> --set global.codefresh.userToken.token=<codefresh-api-key> --set global.runtime.name=<runtime-name> <helm-repo-name>/gitops-runtime --devel --wait`
95+
96+
97+
**Ingress-based install chart command:**
98+
`helm upgrade --install <helm-release-name> --create-namespace --namespace <namespace> --set global.codefresh.accountId=<codefresh-account-id> --set global.codefresh.userToken.token=<codefresh-api-key> --set global.runtime.name=<runtime-name> <helm-repo-name>/gitops-runtime --set global.runtime.ingress.enabled=true --set "global.runtime.ingress.hosts[0]"=<ingress-host> --set global.runtime.ingress.className=<ingress-class> --devel --wait`
7099

100+
>Unless otherwise indicated, values are automatically populated by Codefresh.
101+
71102
where:
72103
* `<helm-release-name>` is the name of the Helm release.
73104
* `<namespace>` is the namespace in which to install the Hybrid GitOps runtime, either `codefresh`, or the custom name you defined.
@@ -78,10 +109,11 @@ The ingress class is the ingress class of the ingress controller, for example, `
78109
* `global.runtime.ingress.enabled=true` is mandatory for _ingress-based runtimes_, and indicates that the runtime is ingress-based.
79110
* `<ingress-host>` is mandatory for _ingress-based runtimes_, and is the IP address or host name of the ingress controller component.
80111
* `<ingress-class>` is mandatory for _ingress-based runtimes_, and is the ingress class of the ingress controller. For example, `nginx` for the NGINX ingress controller.
112+
* `--wait` waits until all the pods are up and running for the deployment.
81113

82-
1. Verify that the deployment is up and running after a couple of minutes.
83-
1. Define your Git provider:
114+
1. Define your Git provider and register the Git integration:
84115
`cf integration git add default --runtime <runtime-name> --api-url <api-url> --provider <provider>`
116+
`cf integration git register default --runtime <runtime-name> --token <runtime-authentication-token>`
85117
where:
86118
*`<runtime-name>` is the name of the runtime, either`codefresh`, or the custom name you defined.
87119
*`<api-url>` is the URL of the Git provider, and can be one of the following:
@@ -109,21 +141,19 @@ The ingress class is the ingress class of the ingress controller, for example, `
109141
max-width="80%"
110142
%}
111143

112-
{:start="11"}
144+
{:start="10"}
113145
1. Paste the token you created and click**Update Credentials**.
114146
1. Now add your personal access token, or if your admin has set up OAuth2, authorize access.
115147
* Click your avatar, select[**Git Personal Access Token**](https://g.codefresh.io/2.0/git-personal-access-token){:target="\_blank"}.
116148
* Proceed as needed. For details, see[Authorize Git access in Codefresh]({{site.baseurl}}/docs/administration/user-self-management/manage-pats/#authorize-git-access-in-codefresh).
117149
1. If you don't have the shared configuration repository for GitOps runtimes, contact support.
118150
>For the Alpha, we assume that you already have a shared configuration repository for your account.
119151
1. Optional.[Create a Git Source]({{site.baseurl}}/docs/installation/gitops/git-sources/#create-a-git-source) for the runtime.
120-
1. Optional. Required for ingress-based only. If relevant, complete the configuration for these ingress controllers:
152+
1. Required only for ALB AWS, Istio, or NGINX Enterprise ingress-controllers.<br>
153+
Complete the configuration for these ingress controllers:
121154
*[ALB AWS: Alias DNS record in route53 to load balancer]({{site.baseurl}}/docs/installation/gitops/hybrid-gitops/#create-an-alias-to-load-balancer-in-route53)
122155
*[Istio: Configure cluster routing service]({{site.baseurl}}/docs/installation/gitops/hybrid-gitops/#cluster-routing-service)
123156
*[NGINX Enterprise ingress controller: Patch certificate secret]({{site.baseurl}}/docs/installation/gitops/hybrid-gitops/#patch-certificate-secret)
124-
1. Optional. Required for ingress-based only. Create and register Git integrations using these commands:
125-
`cf integration git add default --runtime <RUNTIME-NAME> --api-url <API-URL>`
126-
`cf integration git register default --runtime <RUNTIME-NAME> --token <RUNTIME-AUTHENTICATION-TOKEN>`
127157

128158

129159
##Related articles

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp