Skip to content

Commit 6168549

Browse files
authored
Q2 s3 side by side install (#789)
* Create argo-with-gitops-side-by-side.md * Add content for side-by-side install Added prereqs and updated step-by-step for side-by-side * Update hybrid-gitops-helm-installation.md Content updates * Update helm runtime with side-by-side Added first version of side-by-side options * Update hybrid-gitops-helm-installation.md Added terminology clarifications, more content edits for additional installations * Add side-by-side-article Added article for Gitops with Argo CD with xrefs to config and install section in hybrid install * Update side-by-side and helm install topics * Update hybrid-gitops-helm-installation.md * Update hybrid-gitops-helm-installation.md Updated additional runtime install section with new widget guided install * Update hybrid-gitops-helm-installation.md * Add complete install widget screenshot * Add screenshots Added screenshots to main procedure * Add missing screenshots Updated additional runtime install and added missing screenshots * Update migrate argo cd application Updated content and added screenshots for migrating argo cd apps * Update hybrid install Content and screenshot edits * Update Git provider and ISC step Updated content for Git provider and ISC to align with the new design and added screenshots * Update side-by-side content Updated minor version sync content acc to Ilia's feedback * Update hybrid-gitops-helm-installation.md Separated Rollouts issues * Update behind-the-firewall.md * Update behind-the-firewall.md * Update hybrid-gitops-helm-installation.md * Update hybrid-gitops-helm-installation.md * Update argo-with-gitops-side-by-side.md * Update hybrid-gitops-helm-installation.md * Update hybrid-gitops-helm-installation.md * Update argo-with-gitops-side-by-side.md * Update argo-with-gitops-side-by-side.md
1 parent 50ed609 commit 6168549

File tree

6 files changed

+521
-72
lines changed

6 files changed

+521
-72
lines changed

_data/nav.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -507,7 +507,9 @@
507507
- title: Hosted GitOps Runtime
508508
url: "/hosted-runtime"
509509
- title: Hybrid GitOps Runtime
510-
url: "/hybrid-gitops-helm-installation"
510+
url: "/hybrid-gitops-helm-installation"
511+
- title: Hybrid GitOps Runtime with existing Argo CD
512+
url: "/argo-with-gitops-side-by-side"
511513
- title: On-premises GitOps Runtime
512514
url: "/on-prem-gitops-runtime-install"
513515
- title: Managing & monitoring GitOps Runtimes
Lines changed: 162 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,162 @@
1+
---
2+
title: "Install GitOps Runtime alongside existing Argo CD"
3+
description: "Install GitOps Runtime on cluster with existing Argo CD"
4+
group: installation
5+
toc: true
6+
---
7+
8+
If you have a cluster with Argo CD already installed, Codefresh provides an option to install the GitOps Runtime to co-exist with your Argo CD installation. Extend your environment with Codefresh's GitOps capabilities with a few simple configuration changes, and without the need to uninstall Argo CD.
9+
10+
* **Enhance CI/CD with Codefresh GitOps**
11+
Dive into the world of Codefresh GitOps, exploring its capabilities and features without having to uninstall or reconfigure existing Argo CD installations. Read about our GitOps offering in [Codefresh for GitOps]({{site.baseurl}}/docs/getting-started/gitops-codefresh/).
12+
13+
14+
* **Gradual migration to GitOps applications**
15+
After becoming familiar with Codefresh GitOps, make informed decisions when migrating your Argo CD Applications to Codefresh GitOps.
16+
17+
For a smooth transition from Argo CD Applications to Codefresh's GitOps applications, migrate Applications at your preferred pace. On successful migration, view, track, and manage all aspects of the applications in Codefresh.
18+
19+
20+
Follow these steps to install the GitOps Runtime on a cluster with Argo CD:
21+
* Prepare the Argo CD cluster for GitOps Runtime installation
22+
* Install the GitOps Runtime via Helm
23+
* Migrate Argo CD Applications to GitOps Runtime
24+
25+
26+
## Prepare Argo CD cluster for GitOps Runtime installation
27+
28+
There are three configuration changes to make _before_ installing the GitOps Runtime on the cluster with Argo CD:
29+
1. [Switch ownership of Argo project CRDs]({{site.baseurl}}/docs/installation/gitops/hybrid-gitops-helm-installation/#gitops-onlygitops-with-argo-cd-argo-project-crds)
30+
2. [Synchronize Argo CD chart's minor versions]({{site.baseurl}}/docs/installation/gitops/hybrid-gitops-helm-installation/#gitops-with-argo-cd-synchronize-argo-cd-charts-minor-versions)
31+
3. [Set native Argo CD resource tracking to `label`]({{site.baseurl}}/docs/installation/gitops/hybrid-gitops-helm-installation/#gitops-with-argo-cd-set-native-argo-cd-resource-tracking-to-label)
32+
33+
34+
## Install Hybrid GitOps Runtime via Helm
35+
36+
After completing the configuration changes, follow our [step-by-step installation guide]({{site.baseurl}}/docs/installation/gitops/hybrid-gitops-helm-installation/#install-first-gitops-runtime-in-account) to install the GitOps Runtime.
37+
38+
The GitOps Runtime installation is Helm-based, and installing the Runtime on a cluster with an existing Argo CD, requires additional flags in the installation command and an additional step after installation.
39+
40+
41+
## Migrate Argo CD Applications to Codefresh GitOps Runtime
42+
The final task depending on your requirements is to migrate your Argo CD Applications to the Codefresh GitOps Runtime.
43+
44+
Why would you want to do this?
45+
Because this allows you to completely and seamlessly manage the applications in Codefresh as GitOps entities.
46+
47+
48+
The process to migrate an Argo CD Application is simple:
49+
1. Add a Git Source to the Runtime to which store application manifests
50+
1. Make the needed configuration changes in the Argo CD Application
51+
1. Commit the application to the Git Source for viewing and management in Codefresh
52+
53+
54+
### Step 1: Add a Git Source to GitOps Runtime
55+
56+
After installing the GitOps Runtime successfully, you can add a Git Source to the Runtime and commit your applications to it.
57+
A Git Source is a Git repository managed by Codefresh as an Argo CD Application.
58+
Read about [Git Sources]({{site.baseurl}}/docs/installation/gitops/git-sources/).
59+
60+
61+
62+
* Add a [Git Source]({{site.baseurl}}/docs/installation/gitops/git-sources/#create-a-git-source) to your GitOps Runtime.
63+
64+
### Step 2: Modify Argo CD Applications
65+
66+
Modify the Argo CD Application's manifest to remove `finalizers`, if any, and also remove the Application from the `argocd` `namespace` it is assigned to by default.
67+
68+
* Remove `metadata.namespace: argocd`.
69+
* Remove `metadata.finalizers`.
70+
71+
Below is an example of a manifest for an Argo CD Application with `finalizers`.
72+
73+
```yaml
74+
apiVersion: argoproj.io/v1alpha1
75+
kind: Application
76+
metadata:
77+
name: my-sample-app
78+
namespace: argocd
79+
finalizers:
80+
- resources-finalizer.argocd.argoproj.io
81+
spec:
82+
project: default
83+
source:
84+
path: guestbooks/apps
85+
repoURL: https://github.com/codefresh-codefresh/argocd-example-apps
86+
targetRevision: personal-eks
87+
destination:
88+
namespace: my-app
89+
server: https://kubernetes.default.svc
90+
syncPolicy:
91+
automated:
92+
prune: false
93+
selfHeal: false
94+
allowEmpty: false
95+
syncOptions:
96+
- PrunePropagationPolicy=foreground
97+
- Replace=false
98+
- PruneLast=false
99+
- Validate=true
100+
- CreateNamespace=true
101+
- ApplyOutOfSyncOnly=false
102+
- ServerSideApply=false
103+
- RespectIgnoreDifferences=false
104+
```
105+
106+
107+
108+
109+
### Step 3: Commit the application to the Git Source
110+
As the final step in migrating your Argo CD Application to a Codefresh GitOps one, manually commit the updated Application manifest to the Git Source you created in Step 1.
111+
Once you commit the manifest to the Git Source, it is converted into a GitOps application. You can view it in the Codefresh UI, modify definitions, track it through our different dashboards, and in short, manage it as you would any GitOps resource in Codefresh.
112+
113+
1. Go to the Git repo where you created the Git Source.
114+
1. Add and commit the Argo CD Application manifest to the Git Source.
115+
Here's an example of the `my-sample-app` above committed to a Git Source without `metadata.namespace: argocd` and `metadata.finalizers`.
116+
117+
{% include
118+
image.html
119+
lightbox="true"
120+
file="/images/runtime/helm/migrate-app-sample-in-git-source.png"
121+
url="/images/runtime/helm/migrate-app-sample-in-git-source.png"
122+
alt="Argo CD Application committed to GitOps Git Source"
123+
caption="Argo CD Application committed to GitOps Git Source"
124+
max-width="50%"
125+
%}
126+
127+
{:start="3"}
128+
1. In the Codefresh UI, from the sidebar, below Ops, select [**GitOps Apps**](https://g.codefresh.io/2.0/applications-dashboard/list){:target="\_blank"}.
129+
The Applications Dashboard displays the new Git Source application.
130+
131+
{% include
132+
image.html
133+
lightbox="true"
134+
file="/images/runtime/helm/migrate-app-apps-dashboard.png"
135+
url="/images/runtime/helm/migrate-app-apps-dashboard.png"
136+
alt="GitOps Apps dashboard with Git Source and migrated Application"
137+
caption="GitOps Apps dashboard with Git Source and migrated Application"
138+
max-width="50%"
139+
%}
140+
141+
{:start="4"}
142+
1. Click the application to drill down to the different tabs. The Configuration tab displays the application's settings which you can modify and update.
143+
Here's an example of the Current State tab for `my-sample-app`.
144+
145+
{% include
146+
image.html
147+
lightbox="true"
148+
file="/images/runtime/helm/migrate-app-current-state.png"
149+
url="/images/runtime/helm/migrate-app-current-state.png"
150+
alt="Current State tab for migrated Argo CD application"
151+
caption="Current State tab for migrated Argo CD application"
152+
max-width="50%"
153+
%}
154+
155+
156+
157+
## Related articles
158+
[Creating Argo CD applications]({{site.baseurl}}/docs/deployments/gitops/create-application)
159+
[Monitoring Argo CD applications]({{site.baseurl}}/docs/deployments/gitops/applications-dashboard)
160+
[Managing Argo CD applications]({{site.baseurl}}/docs/deployments/gitops/manage-application)
161+
[Home Dashboard]({{site.baseurl}}/docs/dashboards/home-dashboard)
162+
[DORA metrics]({{site.baseurl}}/docs/dashboards/dora-metrics/)

0 commit comments

Comments
 (0)