Skip to content

Commit 14dca29

Browse files
committed
Merge branch 'feat/workflows-codefresh-saas-s3' into chore/merge-logs-and-gitops-operator-bump
# Conflicts: # charts/gitops-runtime/README.md
2 parents e9d0f99 + 9f3b43f commit 14dca29

File tree

6 files changed

+64
-47
lines changed

6 files changed

+64
-47
lines changed

charts/gitops-runtime/Chart.yaml

-5
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,6 @@ dependencies:
4242
version: 0.7.1
4343
alias: gitops-operator
4444
condition: gitops-operator.enabled
45-
- name: garage
46-
repository: https://codefresh-io.github.io/garage
47-
alias: garage-workflows-artifact-storage
48-
version: 0.5.0-cf.3
49-
condition: garage-workflows-artifact-storage.enabled
5045
- name: cf-argocd-extras
5146
repository: oci://quay.io/codefresh/charts
5247
version: 0.3.20

charts/gitops-runtime/README.md

+17-9
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,18 @@ See [Use OCI-based registries](https://helm.sh/docs/topics/registries/)
1616
## Codefresh official documentation:
1717
Prior to running the installation please see the official documentation at: https://codefresh.io/docs/docs/installation/gitops/hybrid-gitops-helm-installation/
1818

19+
## Argo-workflows artifact and log storage
20+
> [!NOTE]
21+
> This version of the chart includes default configuration for storing workflow artifacts and logs in Codefresh provided s3 compatible storage.
22+
23+
If you have your own storage configuration using the default configmap `artifact-repositories` upgrading the chart will override your artifact storage configuration.
24+
To prevent this please set `argo-workflows.controller.workflowDefaults.spec.artifactRepository.configMap` to `artifact-repositories` and `argo-workflows.controller.workflowDefaults.spec.artifactRepository.key`
25+
to the respective key in your configmap identifying the repository.
26+
> [!WARNING]
27+
> It's highly recommended to use your own artifact storage for data privacy reasons.
28+
> Codefresh provided storage has a retention policy of 14 days and limitations on uploaded file sizes.
29+
> Please refer to the official documentation for more details.
30+
1931
## Installation with External ArgoCD
2032

2133
If you want to use an existing ArgoCD installation, you can disable the built-in ArgoCD and configure the GitOps Runtime to use the external ArgoCD.
@@ -259,6 +271,9 @@ sealed-secrets:
259271
| argo-rollouts.enabled | bool | `true` | |
260272
| argo-rollouts.fullnameOverride | string | `"argo-rollouts"` | |
261273
| argo-rollouts.installCRDs | bool | `true` | |
274+
| argo-workflows.codefreshWorkflowLogs | object | `{"endpoint":"gitops-workflow-logs.codefresh.io","insecure":false}` | Argo workflows logs storage on Codefresh platform settings. Don't change unless instructed by Codefresh support. |
275+
| argo-workflows.controller.workflowDefaults.spec.archiveLogs | bool | `true` | |
276+
| argo-workflows.controller.workflowDefaults.spec.artifactRepositoryRef | object | `{"configMap":"codefresh-workflows-log-store","key":"codefresh-workflows-log-store"}` | By default artifact repository is set to a Codefresh provided repository. For data privacy it is reccommended to set your own artifact repository. For instructions see: https://argo-workflows.readthedocs.io/en/latest/configure-artifact-repository/#configuring-your-artifact-repository |
262277
| argo-workflows.crds.install | bool | `true` | Install and upgrade CRDs |
263278
| argo-workflows.enabled | bool | `true` | |
264279
| argo-workflows.executor.resources.requests.ephemeral-storage | string | `"10Mi"` | |
@@ -304,14 +319,6 @@ sealed-secrets:
304319
| event-reporters.workflow.sensor.retryStrategy.steps | int | `3` | Number of retries |
305320
| event-reporters.workflow.sensor.tolerations | list | `[]` | |
306321
| event-reporters.workflow.serviceAccount.create | bool | `true` | |
307-
| garage-workflows-artifact-storage | object | `{"deployment":{"kind":"StatefulSet","replicaCount":3},"enabled":false,"fullnameOverride":"garage","garage":{"replicationMode":3},"persistence":{"data":{"size":"100Mi","storageClass":""},"enabled":true,"meta":{"size":"100Mi","storageClass":""}},"resources":{},"tests":{"enabled":false}}` | Builtin Workflows artifacts storage solution. Local S3 backed by local persistence with (PV and PVC) |
308-
| garage-workflows-artifact-storage.deployment.kind | string | `"StatefulSet"` | Only statefulset is supported for Codefresh gitops runtime. Do not change this |
309-
| garage-workflows-artifact-storage.persistence.data | object | `{"size":"100Mi","storageClass":""}` | Volume that stores artifacts and logs for workflows |
310-
| garage-workflows-artifact-storage.persistence.data.storageClass | string | `""` | When empty value empty the default storage class for the cluster will be used |
311-
| garage-workflows-artifact-storage.persistence.meta | object | `{"size":"100Mi","storageClass":""}` | Volume that stores cluster metadata |
312-
| garage-workflows-artifact-storage.persistence.meta.storageClass | string | `""` | When empty value empty the default storage class for the cluster will be used |
313-
| garage-workflows-artifact-storage.resources | object | `{}` | Resources for garage pods. For smaller deployments at least 100m CPU and 1024Mi memory is reccommended. For larger deployments double this size. |
314-
| garage-workflows-artifact-storage.tests | object | `{"enabled":false}` | Helm tests |
315322
| gitops-operator.affinity | object | `{}` | |
316323
| gitops-operator.crds | object | `{"additionalLabels":{},"annotations":{},"install":true,"keep":false}` | Codefresh gitops operator crds |
317324
| gitops-operator.crds.additionalLabels | object | `{}` | Additional labels for gitops operator CRDs |
@@ -389,7 +396,8 @@ sealed-secrets:
389396
| global.runtime.ingressUrl | string | `""` | Explicit url for runtime ingress. Provide this value only if you don't want the chart to create and ingress (global.runtime.ingress.enabled=false) and tunnel-client is not used (tunnel-client.enabled=false) |
390397
| global.runtime.isConfigurationRuntime | bool | `false` | is the runtime set as a "configuration runtime". |
391398
| global.runtime.name | string | `nil` | Runtime name. Must be unique per platform account. |
392-
| installer | object | `{"argoCdVersionCheck":{"argoServerLabels":{"app.kubernetes.io/component":"server","app.kubernetes.io/part-of":"argocd"}},"image":{"pullPolicy":"IfNotPresent","repository":"quay.io/codefresh/gitops-runtime-installer","tag":""},"skipValidation":false}` | Runtime installer used for running hooks and checks on the release |
399+
| installer | object | `{"argoCdVersionCheck":{"argoServerLabels":{"app.kubernetes.io/component":"server","app.kubernetes.io/part-of":"argocd"}},"image":{"pullPolicy":"IfNotPresent","repository":"quay.io/codefresh/gitops-runtime-installer","tag":""},"skipUsageValidation":false,"skipValidation":false}` | Runtime installer used for running hooks and checks on the release |
400+
| installer.skipUsageValidation | bool | `false` | if set to true, pre-install hook will *not* run |
393401
| installer.skipValidation | bool | `false` | if set to true, pre-install hook will *not* run |
394402
| internal-router.affinity | object | `{}` | |
395403
| internal-router.clusterDomain | string | `"cluster.local"` | |

charts/gitops-runtime/README.md.gotmpl

+13
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,19 @@ See [Use OCI-based registries](https://helm.sh/docs/topics/registries/)
1616
## Codefresh official documentation:
1717
Prior to running the installation please see the official documentation at: https://codefresh.io/docs/docs/installation/gitops/hybrid-gitops-helm-installation/
1818

19+
## Argo-workflows artifact and log storage
20+
> [!NOTE]
21+
> This version of the chart includes default configuration for storing workflow artifacts and logs in Codefresh provided s3 compatible storage.
22+
23+
If you have your own storage configuration using the default configmap `artifact-repositories` upgrading the chart will override your artifact storage configuration.
24+
To prevent this please set `argo-workflows.controller.workflowDefaults.spec.artifactRepository.configMap` to `artifact-repositories` and `argo-workflows.controller.workflowDefaults.spec.artifactRepository.key`
25+
to the respective key in your configmap identifying the repository.
26+
> [!WARNING]
27+
> It's highly recommended to use your own artifact storage for data privacy reasons.
28+
> Codefresh provided storage has a retention policy of 14 days and limitations on uploaded file sizes.
29+
> Please refer to the official documentation for more details.
30+
31+
1932
## Installation with External ArgoCD
2033

2134
If you want to use an existing ArgoCD installation, you can disable the built-in ArgoCD and configure the GitOps Runtime to use the external ArgoCD.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
{{- $_ := required "global.codefresh.accountId is required" .Values.global.codefresh.accountId }}
2+
apiVersion: v1
3+
data:
4+
codefresh-workflows-log-store: |
5+
archiveLogs: true
6+
s3:
7+
bucket: {{ .Values.global.codefresh.accountId }}
8+
endpoint: {{ index .Values "argo-workflows" "codefreshWorkflowLogs" "endpoint" }}
9+
insecure: {{ index .Values "argo-workflows" "codefreshWorkflowLogs" "insecure" }}
10+
keyFormat: {{ .Values.global.runtime.name }}/{{ "{{" }}workflow.name{{ "}}" }}/{{ "{{" }}pod.name{{ "}}" }}
11+
accessKeySecret:
12+
name: codefresh-token
13+
key: token
14+
secretKeySecret:
15+
name: codefresh-token
16+
key: token
17+
kind: ConfigMap
18+
metadata:
19+
annotations:
20+
workflows.argoproj.io/default-artifact-repository: codefresh-workflows-log-store
21+
name: codefresh-workflows-log-store

charts/gitops-runtime/templates/tunnel-client.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,4 @@ reduce complexity of installation and number or mandatory values to provide for
1010
{{ $runtimeName := required "runtime.name is required" .Values.global.runtime.name }}
1111
{{ $_ := set $tunnelClientContext.Values.tunnel "subdomainPrefix" (printf "%s-%s" $accoundId $runtimeName)}}
1212
{{- include "codefresh-tunnel-client.resources" $tunnelClientContext }}
13-
{{- end }}
13+
{{- end }}

charts/gitops-runtime/values.yaml

+12-32
Original file line numberDiff line numberDiff line change
@@ -302,6 +302,18 @@ argo-workflows:
302302
resources:
303303
requests:
304304
ephemeral-storage: 10Mi
305+
controller:
306+
workflowDefaults:
307+
spec:
308+
archiveLogs: true
309+
# -- By default artifact repository is set to a Codefresh provided repository. For data privacy it is reccommended to set your own artifact repository. For instructions see: https://argo-workflows.readthedocs.io/en/latest/configure-artifact-repository/#configuring-your-artifact-repository
310+
artifactRepositoryRef:
311+
configMap: codefresh-workflows-log-store
312+
key: codefresh-workflows-log-store
313+
# -- Argo workflows logs storage on Codefresh platform settings. Don't change unless instructed by Codefresh support.
314+
codefreshWorkflowLogs:
315+
endpoint: gitops-workflow-logs.codefresh.io
316+
insecure: false
305317

306318
#-----------------------------------------------------------------------------------------------------------------------
307319
# Argo rollouts
@@ -690,38 +702,6 @@ gitops-operator:
690702
cpu: 100m
691703
memory: 128Mi
692704
#-----------------------------------------------------------------------------------------------------------------------
693-
# Garage
694-
#-----------------------------------------------------------------------------------------------------------------------
695-
# -- Builtin Workflows artifacts storage solution. Local S3 backed by local persistence with (PV and PVC)
696-
garage-workflows-artifact-storage:
697-
fullnameOverride: garage
698-
enabled: false
699-
deployment:
700-
# -- Only statefulset is supported for Codefresh gitops runtime. Do not change this
701-
kind: StatefulSet
702-
replicaCount: 3
703-
garage:
704-
#-- Default to 3 replicas, see the replication_mode section at https://garagehq.deuxfleurs.fr/documentation/reference-manual/configuration/#replication-mode
705-
replicationMode: 3
706-
persistence:
707-
enabled: true
708-
# -- Volume that stores cluster metadata
709-
meta:
710-
# -- When empty value empty the default storage class for the cluster will be used
711-
storageClass: ""
712-
size: 100Mi
713-
# -- Volume that stores artifacts and logs for workflows
714-
data:
715-
# -- When empty value empty the default storage class for the cluster will be used
716-
storageClass: ""
717-
size: 100Mi
718-
# -- Resources for garage pods. For smaller deployments at least 100m CPU and 1024Mi memory is reccommended. For larger deployments double this size.
719-
resources: {}
720-
# -- Helm tests
721-
tests:
722-
enabled: false
723-
724-
#-----------------------------------------------------------------------------------------------------------------------
725705
# cf-argocd-extras
726706
#-----------------------------------------------------------------------------------------------------------------------
727707
# -- Codefresh extra services for ArgoCD

0 commit comments

Comments
 (0)