Skip to content

Commit 3034788

Browse files
authored
Manage gitops runtime as argocd application (#1354)
* temp commit of release notes * added manual create argo cd app for runtime * updated the release notes * fixed links and added one more ref * minor edits * added wrapping '' on error messages
1 parent 7dc6083 commit 3034788

File tree

5 files changed

+154
-2
lines changed

5 files changed

+154
-2
lines changed

_docs/gitops-quick-start/quick-start-configure-runtime.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,8 @@ Configuring the GitOps Runtime as an Argo CD Application enables:
3535
* Monitoring health and sync statuses
3636
* Enforcement of Git as the single source of truth
3737

38-
To configure, click **Configure as Argo CD Application**. Codefresh will automatically handle the setup—no further action required.
39-
38+
To configure, click **Configure as Argo CD Application**. Codefresh will automatically handle the setup—no further action required.
39+
To manually install the runtime as an Argo CD application, visit [Managing GitOps Runtimes]({{site.baseurl}}/docs/installation/gitops/manage-runtimes/#manually-configuring-the-runtime-application).
4040

4141
## Add Git Source to Runtime
4242

_docs/installation/gitops/manage-runtimes.md

Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,123 @@ The Runtime's context menu now includes the **Runtime Application** option, whic
4343
max-width="60%"
4444
%}
4545

46+
Although this step is highly recommended, it’s not required. You can choose to:
47+
* Skip this step and manage the runtime using your own deployment process (e.g., Helm), or
48+
* Manually create your own Argo CD Application to manage the GitOps runtime.
49+
50+
---
51+
52+
## Manually Configuring the Runtime Application
53+
54+
### 1. Add the Chart and Values Files to Git
55+
56+
Start by adding the `gitops-runtime` Helm chart to your Git repository. Create both a `Chart.yaml` and a `values.yaml` file.
57+
58+
#### Chart.yaml
59+
Replace `<Chart Version>` with the version of the chart you'd like to install.
60+
61+
```yaml
62+
apiVersion: v2
63+
name: codefresh-gitops-runtime
64+
description: Codefresh GitOps Runtime umbrella chart
65+
version: <Chart Version>
66+
appVersion: 1.0.0
67+
dependencies:
68+
- name: gitops-runtime
69+
repository: oci://quay.io/codefresh
70+
version: <Chart Version>
71+
```
72+
73+
[View the Helm Chart on ArtifactHub](https://artifacthub.io/packages/helm/codefresh-gitops-runtime/gitops-runtime){:target="_blank"}
74+
75+
---
76+
77+
#### values.yaml
78+
79+
Here's a basic example. Adjust it based on your setup:
80+
81+
```yaml
82+
gitops-runtime:
83+
argo-cd:
84+
enabled: false
85+
86+
global:
87+
codefresh:
88+
accountId: <CODEFRESH_ACCOUNT_ID>
89+
userToken:
90+
secretKeyRef:
91+
name: codefresh-user-token
92+
key: token
93+
94+
external-argo-cd:
95+
auth:
96+
type: token
97+
tokenSecretKeyRef:
98+
name: gitops-runtime-argo-cd-token
99+
key: token
100+
101+
runtime:
102+
name: codefresh
103+
isConfigurationRuntime: true
104+
```
105+
106+
**Where to find these values:**
107+
* **accountId:** [Account Settings → Account Information](https://g.codefresh.io/2.0/account-settings/account-information){:target="_blank"}
108+
* **userToken:** [User Settings → Generate Token](https://g.codefresh.io/user/settings){:target="_blank"}
109+
* **external Argo CD token:** Create via Argo CD CLI or UI if connecting to an external Argo CD instance.
110+
111+
> **Note:** Make sure not to commit any secret tokens to Git.
112+
113+
---
114+
115+
### 2. Create an Argo CD Application
116+
117+
Create an Argo CD Application that points to the Git repo where your runtime manifests are stored. We recommend storing this Application manifest in Git as well.
118+
119+
```yaml
120+
apiVersion: argoproj.io/v1alpha1
121+
kind: Application
122+
metadata:
123+
name: <runtime-name>
124+
labels:
125+
codefresh.io/entity: runtime
126+
codefresh.io/internal: 'true'
127+
spec:
128+
project: default
129+
source:
130+
repoURL: https://github.com/<owner>/<repo>.git
131+
targetRevision: HEAD
132+
path: <runtime-folder-path>
133+
helm:
134+
releaseName: <runtime-name>
135+
destination:
136+
namespace: runtime
137+
server: https://kubernetes.default.svc
138+
syncPolicy:
139+
automated:
140+
prune: true
141+
selfHeal: true
142+
allowEmpty: true
143+
```
144+
145+
Ensure you include the following labels:
146+
* `codefresh.io/entity: runtime`
147+
* `codefresh.io/internal: 'true'`
148+
149+
---
150+
151+
### 3. (Optional) Manage This Application via Shared Configuration
152+
153+
We recommend managing the runtime Argo CD application as part of the Internal Shared Configuration (ISC). This ensures consistent configuration across all runtimes.
154+
155+
1. Go to [Account Settings → Account Information](https://g.codefresh.io/2.0/account-settings/account-information){:target="_blank"} and locate your Shared Configuration repository.
156+
2. Navigate to `runtimes/<runtime-name>/in-cluster.yaml`.
157+
3. Add the path to your runtime application's manifest under `source.directory.include`.
158+
159+
If your runtime app manifest is stored in a separate repository, you can:
160+
* Add a second source (see [Argo CD multi-source applications](https://argo-cd.readthedocs.io/en/stable/user-guide/multiple-source-repositories/){:target="_blank"}), or
161+
* Apply the manifest directly to the cluster without wrapping it in a parent application.
162+
46163
## Upgrade GitOps Runtimes
47164

48165
Upgrade provisioned Hybrid GitOps Runtimes to install critical security updates, new functionality, and the latest versions of all components.

_docs/installation/gitops/runtime-configuration.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,8 @@ Configuring the GitOps Runtime as an Argo CD Application ensures:
6464
* **Visibility and monitoring**
6565
The Runtime appears in the GitOps Apps dashboard, where you can monitor and manage it as any other Argo CD application.
6666

67+
To manually install the runtime as an Argo CD application, visit [Managing GitOps Runtimes]({{site.baseurl}}/docs/installation/gitops/manage-runtimes/#manually-configuring-the-runtime-application).
68+
6769
## Add Git Source to Runtime
6870
A **Git Source** is a critical component in GitOps Runtimes, connecting a Git repository to the cluster, enabling deployment and configuration management of Argo CD applications.
6971

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../_posts/2025-07-25-july-release-notes.md
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
title: "Release Notes: July 2025"
3+
description: ""
4+
---
5+
## Features & enhancements
6+
### GitOps: Runtime v0.22: Argo CD 3.0 Upgrade
7+
8+
This runtime release upgrades **Argo CD to version 3.0**, bringing the latest features and improvements to Codefresh GitOps.
9+
10+
While we haven't identified any breaking changes for standard Codefresh deployments, please review the following recommendations:
11+
12+
* If you have **customized any default Argo CD values** beyond what Codefresh distributes, you may be affected by changes introduced in Argo CD 3.0.
13+
* Review the official [Argo CD 3.0 migration guide](https://argo-cd.readthedocs.io/en/stable/operator-manual/upgrading/3.0-migration/) if you maintain custom configurations.
14+
* If you have made **extensive customizations**, test this runtime upgrade in a **non-production environment first**.
15+
16+
For details, see the [runtime v0.22.1 release notes](https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.22.1).
17+
18+
19+
20+
## Bug fixes
21+
##### General
22+
* Fixed an issue where Quick Search (CMD + K) did not return any GitOps-related items, including applications. Users can now search and access GitOps items directly through Quick Search as expected.
23+
{% if page.collection == "posts" %}
24+
##### Pipelines
25+
* Fixed an issue that caused timeouts when loading UI pages for pipelines with a large number of triggers.
26+
* Fixed an issue where MacOS builds failed with an 'Unauthorized' error when provisioning the runtime, preventing customers from running MacOS builds successfully.
27+
* Fixed an issue where builds intermittently failed with a 'Failed to prepare dockerfile' error, preventing the Dockerfile from being fetched correctly during the build process.
28+
* Fixed an issue where SaaS builds failed due to insufficient disk space by re-enabling cleanup processes.
29+
30+
##### GitOps
31+
{% endif %}
32+
* Fixed an issue where applications nested more than three layers deep were not displayed in the UI tree view. The full application hierarchy now appears correctly in the tree view.

0 commit comments

Comments
 (0)