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
If you have [Codefresh On-Premises](https://artifacthub.io/packages/helm/codefresh-onprem/codefresh) deployed, you can install Codefresh Runner in **agentless** mode.
423
+
424
+
**What is agentless mode?**
425
+
426
+
Agent (aka venona) is Runner component which responsible for calling Codefresh API to run builds and create dind/engine pods and pvc objects. Agent can only be assigned to a single account, thus you can't share one runtime across multiple accounts. However, with **agentless** mode it's possible to register the runtime as **system**-type runtime so it's registered on the platform level and can be assigned/shared across multiple accounts.
427
+
428
+
**What are the prerequisites?**
429
+
- You have a running [Codefresh On-Premises](https://artifacthub.io/packages/helm/codefresh-onprem/codefresh) control-plane environment
430
+
- You have a Codefresh API token with platform **Admin** permissions scope
431
+
432
+
433
+
### How to deploy agentless runtime when it's on the SAME k8s cluster as On-Premises control-plane environment?
434
+
435
+
- Enable cluster-level permissions for cf-api (On-Premises control-plane component)
436
+
437
+
> `values.yaml` for [Codefresh On-Premises](https://artifacthub.io/packages/helm/codefresh-onprem/codefresh) Helm chart
438
+
```yaml
439
+
cfapi:
440
+
...
441
+
# -- Enable ClusterRole/ClusterRoleBinding
442
+
rbac:
443
+
namespaced: false
444
+
```
445
+
446
+
- Set the following values for Runner Helm chart
447
+
448
+
`.Values.global.codefreshHost=...` \
449
+
`.Values.global.codefreshToken=...` \
450
+
`.Values.global.runtimeName=system/...` \
451
+
`.Values.runtime.agent=false` \
452
+
`.Values.runtime.inCluster=true`
453
+
454
+
> `values.yaml` for [Codefresh Runner](https://artifacthub.io/packages/helm/codefresh-runner/cf-runtime) helm chart
455
+
```yaml
456
+
global:
457
+
# -- URL of Codefresh On-Premises Platform
458
+
codefreshHost: "https://myonprem.somedomain.com"
459
+
# -- User token in plain text with Admin permission scope
460
+
codefreshToken: ""
461
+
# -- User token that references an existing secret containing API key.
462
+
codefreshTokenSecretKeyRef: {}
463
+
# E.g.
464
+
# codefreshTokenSecretKeyRef:
465
+
# name: my-codefresh-api-token
466
+
# key: codefresh-api-token
467
+
468
+
# -- Distinguished runtime name
469
+
# (for On-Premise only; mandatory!) Must be prefixed with "system/..."
Go to [https://<YOUR_ONPREM_DOMAIN_HERE>/admin/runtime-environments/system](https://<YOUR_ONPREM_DOMAIN_HERE>/admin/runtime-environments/system) to check the runtime. Assign it to the required account(s). Run test pipeline on it.
496
+
497
+
498
+
### How to deploy agentless runtime when it's on the DIFFERENT k8s cluster than On-Premises control-plane environment?
499
+
500
+
In this case, it's required to mount runtime cluster's `KUBECONFIG` into On-Premises `cf-api` deployment
501
+
502
+
- Create the neccessary RBAC resources
503
+
504
+
> `values.yaml` for [Codefresh Runner](https://artifacthub.io/packages/helm/codefresh-runner/cf-runtime) helm chart
Go to [https://<YOUR_ONPREM_DOMAIN_HERE>/admin/runtime-environments/system](https://<YOUR_ONPREM_DOMAIN_HERE>/admin/runtime-environments/system) to see the runtime. Assign it to the required account(s).
0 commit comments