1
- ### How to build CF onprem chart locally
1
+ # Codefresh On-Premises
2
2
3
- ``` shell
4
- # Optionally: update runtime images from SAAS system/default-plan runtime first
5
- ./update_re_images.sh
3
+ [ ![ Codefresh build status] ( https://g.codefresh.io/api/badges/pipeline/codefresh-inc/on-prem%2Fonprem-ci?type=cf-2&key=eyJhbGciOiJIUzI1NiJ9.NTY3MmQ4ZGViNjcyNGI2ZTM1OWFkZjYy.AN2wExsAsq7FseTbVxxWls8muNx_bBUnQWQVS8IgDTI )] ( https://g.codefresh.io/pipelines/edit/new/builds?id=5ee8d26e8d2815f4e5146d52&pipeline=onprem-ci&projects=on-prem&projectId=5ee9c5edaa339a29053f7498 )
6
4
7
- helm dependency update codefresh --debug
8
- helm package codefresh
9
- ```
5
+ ## Prerequisites
6
+
7
+ - Kubernetes 1.19+
8
+ - Helm 3.2.0+
9
+ - PV provisioner support in the underlying infrastructure
10
+ - GCR Service Account JSON ` sa.json ` (provided by Codefresh)
11
+ - Firebase secret (provided by Codefresh)
10
12
11
- ### How to install CF onprem chart locally
13
+ ## Get Repo Info
14
+
15
+ ``` console
16
+ helm repo add codefresh-onprem https://chartmuseum.codefresh.io/codefresh
17
+ helm repo update
18
+ ```
12
19
13
- See [ kcfi README.md ] ( https://github.com/codefresh-io/kcfi#example---codefresh-onprem-installation )
20
+ ## Install Chart
14
21
15
- or with HELM:
22
+ ** Important: ** only helm3 is supported
16
23
17
24
- obtain GCR Service Account JSON and Firebase secret from Codefresh:
25
+
18
26
``` shell
27
+ GCR_SA_KEY_B64=$( cat sa.json | base64)
19
28
DOCKER_CFG_VAR=$( echo -n " _json_key:$( echo ${GCR_SA_KEY_B64} | base64 -d) " | base64 | tr -d ' \n' )
20
- REGISTRY= " gcr.io "
21
- VALUES_MAIN=" values-main .yaml"
22
- CF_APP_HOST=" myonprem.local "
29
+ FIREBASE_SECRET= " <token> "
30
+ VALUES_MAIN=" cf-values .yaml"
31
+ CF_APP_HOST=" onprem.example.com "
23
32
```
24
33
25
- - feed them into ` values-main .yaml ` :
34
+ - Edit default ` values.yaml ` or create empty ` cf-values .yaml`
26
35
27
36
``` shell
28
37
cat << EOF > ${VALUES_MAIN}
@@ -36,16 +45,78 @@ firebaseSecret: ${FIREBASE_SECRET}
36
45
37
46
dockerconfigjson:
38
47
auths:
39
- ${REGISTRY} :
48
+ gcr.io :
40
49
auth: ${DOCKER_CFG_VAR}
41
50
EOF
42
51
```
43
52
44
- ``` shell
45
- helm repo add codefresh-onprem https://chartmuseum.codefresh.io/codefresh
46
- helm pull codefresh-onprem/codefresh
47
- helm upgrade --install cf codefresh-onprem/codefresh -f values-main.yaml --create-namespace --namespace codefresh --debug
53
+ - Install Chart
54
+ ``` console
55
+ helm upgrade --install cf codefresh-onprem/codefresh -f cf-values.yaml --create-namespace --namespace codefresh --debug
48
56
```
49
57
50
- ### Additional docs
58
+ The command deploys Codefresh On-Premises on the Kubernetes cluster in the default configuration.
59
+
60
+ _ See [ configuration] ( #configuration ) below._
61
+
62
+ _ See [ helm upgrade] ( https://helm.sh/docs/helm/helm_upgrade/ ) for command documentation._
63
+
64
+ ## Configuration
65
+
66
+
67
+ ## Parameters
68
+
69
+ ### Tags
70
+
71
+ | Name | Description | Value |
72
+ | -------------------- | ----------------------------------------------------- | ------- |
73
+ | ` tags.cf-infra ` | Enable Codefresh Classic services(charts) | ` true ` |
74
+ | ` tags.argo-platform ` | (WIP) Enable Codefresh Argo-Platform services(charts) | ` false ` |
75
+
76
+
77
+ ### Root
78
+
79
+ | Name | Description | Value |
80
+ | ---------------- | ------------------------------- | -------------------------------------------------- |
81
+ | ` firebaseUrl ` | Firebase URL for logs streaming | ` https://codefresh-on-prem.firebaseio.com/on-prem ` |
82
+ | ` firebaseSecret ` | Firebase Secret | ` placeholder ` |
83
+
84
+
85
+ ### Global parameters
86
+
87
+ | Name | Description | Value |
88
+ | ----------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------- |
89
+ | ` global.appUrl ` | Application root url | ` onprem.codefresh.local ` |
90
+ | ` global.seedJobs ` | Instantiate databases with seed data. Used in on-prem environments. ` true/false ` | ` nil ` |
91
+ | ` global.certsJobs ` | Generate self-signed certificates for Builder/Runner. Used in on-prem environments. ` true/false ` | ` nil ` |
92
+ | ` global.privateRegistry ` | When using private docker registry, enable this flag | ` false ` |
93
+ | ` global.dockerRegistry ` | Replaces/adds docker registry prefix for images when ` privateRegistry ` is enabled (has to be with trailing ` / ` ) | ` "" ` |
94
+ | ` global.rabbitService ` | Default Internal RabbitMQ service address | ` rabbitmq ` |
95
+ | ` global.rabbitmqHostname ` | External RabbitMQ service address | ` nil ` |
96
+ | ` global.rabbitmqUsername ` | Default RabbitMQ username | ` user ` |
97
+ | ` global.rabbitmqPassword ` | Default RabbitMQ password | ` cVz9ZdJKYm7u ` |
98
+ | ` global.mongoURI ` | Default Internal MongoDB URI | ` mongodb://cfuser:mTiXcU2wafr9@mongodb:27017 ` |
99
+ | ` global.mongodbDatabase ` | Default MongoDB database name | ` codefresh ` |
100
+ | ` global.mongodbRootUser ` | Default MongoDB root user | ` root ` |
101
+ | ` global.mongodbRootPassword ` | Default MongoDB root password | ` XT9nmM8dZD ` |
102
+ | ` global.mongodbImage ` | Default Image used in seed-jobs | ` bitnami/mongodb:4.2 ` |
103
+ | ` global.redisService ` | Default Internal Redis service address | ` redis-master ` |
104
+ | ` global.redisPort ` | Default Redis port number | ` 6379 ` |
105
+ | ` global.redisUrl ` | Default External Redis service address | ` nil ` |
106
+ | ` global.redisPassword ` | Default Redis password | ` hoC9szf7NtrU ` |
107
+ | ` global.runtimeRedisHost ` | Default for OfflineLogging feature | ` cf-redis-master ` |
108
+ | ` global.runtimeRedisPassword ` | Default for OfflineLogging feature | ` hoC9szf7NtrU ` |
109
+ | ` global.runtimeRedisDb ` | Default for OfflineLogging feature | ` 1 ` |
110
+ | ` global.runtimeRedisPort ` | Default for OfflineLogging feature | ` 6379 ` |
111
+ | ` global.runtimeMongoURI ` | Default for OfflineLogging feature | ` mongodb://cfuser:mTiXcU2wafr9@mongodb:27017 ` |
112
+ | ` global.runtimeMongoDb ` | Default for OfflineLogging feature | ` codefresh ` |
113
+ | ` global.postgresService ` | Default Internal Postgresql service address | ` postgresql ` |
114
+ | ` global.postgresHostname ` | Default External Postgresql service address | ` nil ` |
115
+ | ` global.postgresUser ` | Default Postgresql username | ` postgres ` |
116
+ | ` global.postgresPassword ` | Default Postgresql password | ` eC9arYka4ZbH ` |
117
+ | ` global.postgresDatabase ` | Default Postgresql database name | ` codefresh ` |
118
+ | ` global.postgresPort ` | Default Postgresql port number | ` 5432 ` |
119
+
120
+
121
+ ## Additional Documentation
51
122
[ Codefresh On-Premises] ( https://codefresh.io/docs/docs/administration/codefresh-on-prem/ )
0 commit comments