values.yaml 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884
  1. ## @section Global parameters
  2. ## Global Docker image parameters
  3. ## Please, note that this will override the image parameters, including dependencies, configured to use the global value
  4. ## Current available global Docker image parameters: imageRegistry, imagePullSecrets and storageClass
  5. ##
  6. ## @param global.imageRegistry Global Docker image registry
  7. ## @param global.imagePullSecrets Global Docker registry secret names as an array
  8. ## @param global.storageClass Global StorageClass for Persistent Volume(s)
  9. ##
  10. global:
  11. imageRegistry: ""
  12. ## E.g.
  13. ## imagePullSecrets:
  14. ## - myRegistryKeySecretName
  15. ##
  16. imagePullSecrets: []
  17. storageClass: "openebs-hostpath"
  18. ## @section Common parameters
  19. ##
  20. ## @param kubeVersion Override Kubernetes version
  21. ##
  22. kubeVersion: ""
  23. ## @param nameOverride String to partially override common.names.fullname template (will maintain the release name)
  24. ##
  25. nameOverride: ""
  26. ## @param fullnameOverride String to fully override common.names.fullname template
  27. ##
  28. fullnameOverride: ""
  29. ## @param commonLabels Labels to add to all deployed resources
  30. ##
  31. commonLabels: {}
  32. ## @param commonAnnotations Annotations to add to all deployed resources
  33. ##
  34. commonAnnotations: {}
  35. ## @param clusterDomain Kubernetes Cluster Domain
  36. ##
  37. clusterDomain: cluster.local
  38. ## @param extraDeploy Array of extra objects to deploy with the release
  39. ##
  40. extraDeploy: []
  41. ## Enable diagnostic mode in the deployment
  42. ##
  43. diagnosticMode:
  44. ## @param diagnosticMode.enabled Enable diagnostic mode (all probes will be disabled and the command will be overridden)
  45. ##
  46. enabled: false
  47. ## @param diagnosticMode.command Command to override all containers in the deployment
  48. ##
  49. command:
  50. - sleep
  51. ## @param diagnosticMode.args Args to override all containers in the deployment
  52. ##
  53. args:
  54. - infinity
  55. ## @section Halo Image parameters
  56. ##
  57. ## Halo image
  58. ## ref: https://hub.docker.com/r/bitnami/halo/tags/
  59. ## @param image.registry Halo image registry
  60. ## @param image.repository Halo image repository
  61. ## @param image.tag Halo image tag (immutable tags are recommended)
  62. ## @param image.digest Halo image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag
  63. ## @param image.pullPolicy Halo image pull policy
  64. ## @param image.pullSecrets Halo image pull secrets
  65. ##
  66. image:
  67. registry: docker.io
  68. repository: halohub/halo
  69. tag: 2.11.2
  70. digest: ""
  71. ## Specify a imagePullPolicy
  72. ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
  73. ## ref: https://kubernetes.io/docs/user-guide/images/#pre-pulling-images
  74. ##
  75. pullPolicy: IfNotPresent
  76. ## Optionally specify an array of imagePullSecrets.
  77. ## Secrets must be manually created in the namespace.
  78. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
  79. ## e.g:
  80. ## pullSecrets:
  81. ## - myRegistryKeySecretName
  82. ##
  83. pullSecrets: []
  84. ## @section Halo Configuration parameters
  85. ## Halo settings based on environment variables
  86. ## ref: https://github.com/bitnami/containers/tree/main/bitnami/halo#environment-variables
  87. ##
  88. ## @param haloUsername Halo username
  89. ##
  90. haloUsername: admin
  91. ## @param haloPassword Halo user password
  92. ## Defaults to a random 10-character alphanumeric string if not set
  93. ##
  94. haloPassword: "halocecf@"
  95. ## @param existingSecret Name of existing secret containing Halo credentials
  96. ## NOTE: Must contain key `halo-password`
  97. ## NOTE: When it's set, the `haloPassword` parameter is ignored
  98. ##
  99. existingSecret: ""
  100. ## @param haloExternalUrl 外部访问地址,请根据实际需要修改
  101. ##
  102. haloExternalUrl: "http://halo.cestong.com.cn"
  103. ## @param haloScheme Scheme to use to generate Halo URLs
  104. ##
  105. haloScheme: http
  106. ## @param command Override default container command (useful when using custom images)
  107. ##
  108. command: []
  109. ## @param args Override default container args (useful when using custom images)
  110. ##
  111. args: []
  112. ## @param extraEnvVars Array with extra environment variables to add to the Halo container
  113. ## e.g:
  114. ## extraEnvVars:
  115. ## - name: FOO
  116. ## value: "bar"
  117. ##
  118. extraEnvVars: []
  119. ## @param extraEnvVarsCM Name of existing ConfigMap containing extra env vars
  120. ##
  121. extraEnvVarsCM: ""
  122. ## @param extraEnvVarsSecret Name of existing Secret containing extra env vars
  123. ##
  124. extraEnvVarsSecret: ""
  125. ## @section Database Parameters
  126. ##
  127. ## PostgreSQL chart configuration
  128. ## ref: https://github.com/bitnami/charts/blob/main/bitnami/postgresql/values.yaml
  129. ##
  130. postgresql:
  131. ## @param postgresql.enabled Deploy a PostgreSQL server to satisfy the applications database requirements
  132. ## To use an external database set this to false and configure the `externalDatabase.*` parameters
  133. ##
  134. enabled: false
  135. ## @param postgresql.architecture PostgreSQL architecture. Allowed values: `standalone` or `replication`
  136. ##
  137. architecture: standalone
  138. ## PostgreSQL Authentication parameters
  139. ## @param postgresql.auth.rootPassword PostgreSQL root password
  140. ## @param postgresql.auth.database PostgreSQL custom database
  141. ## @param postgresql.auth.username PostgreSQL custom user name
  142. ## @param postgresql.auth.password PostgreSQL custom user password
  143. ## ref: https://github.com/bitnami/containers/tree/main/bitnami/postgresql#setting-the-root-password-on-first-run
  144. ## https://github.com/bitnami/containers/blob/main/bitnami/postgresql/README.md#creating-a-database-on-first-run
  145. ## https://github.com/bitnami/containers/blob/main/bitnami/postgresql/README.md#creating-a-database-user-on-first-run
  146. ##
  147. auth:
  148. rootPassword: ""
  149. database: halo
  150. username: halo
  151. password: ""
  152. ## PostgreSQL Primary configuration
  153. ##
  154. primary:
  155. ## PostgreSQL Primary Persistence parameters
  156. ## ref: https://kubernetes.io/docs/user-guide/persistent-volumes/
  157. ## @param postgresql.primary.persistence.enabled Enable persistence on PostgreSQL using PVC(s)
  158. ## @param postgresql.primary.persistence.storageClass Persistent Volume storage class
  159. ## @param postgresql.primary.persistence.accessModes [array] Persistent Volume access modes
  160. ## @param postgresql.primary.persistence.size Persistent Volume size
  161. ##
  162. persistence:
  163. enabled: true
  164. storageClass: ""
  165. accessModes:
  166. - ReadWriteOnce
  167. size: 8Gi
  168. ## MySQL chart configuration
  169. ## ref: https://github.com/bitnami/charts/blob/main/bitnami/mysql/values.yaml
  170. ##
  171. mysql:
  172. ## @param mysql.enabled Deploy a MySQL server to satisfy the applications database requirements
  173. ## To use an external database set this to false and configure the `externalDatabase.*` parameters
  174. ##
  175. enabled: false
  176. ## @param mysql.architecture MySQL architecture. Allowed values: `standalone` or `replication`
  177. ##
  178. architecture: standalone
  179. ## MySQL Authentication parameters
  180. ## @param mysql.auth.rootPassword MySQL root password
  181. ## @param mysql.auth.database MySQL custom database
  182. ## @param mysql.auth.username MySQL custom user name
  183. ## @param mysql.auth.password MySQL custom user password
  184. ## ref: https://github.com/bitnami/containers/tree/main/bitnami/mysql#setting-the-root-password-on-first-run
  185. ## https://github.com/bitnami/containers/blob/main/bitnami/mysql/README.md#creating-a-database-on-first-run
  186. ## https://github.com/bitnami/containers/blob/main/bitnami/mysql/README.md#creating-a-database-user-on-first-run
  187. ##
  188. auth:
  189. rootPassword: ""
  190. database: halo
  191. username: halo
  192. password: ""
  193. ## MySQL Primary configuration
  194. ##
  195. primary:
  196. ## MySQL Primary Persistence parameters
  197. ## ref: https://kubernetes.io/docs/user-guide/persistent-volumes/
  198. ## @param mysql.primary.persistence.enabled Enable persistence on MySQL using PVC(s)
  199. ## @param mysql.primary.persistence.storageClass Persistent Volume storage class
  200. ## @param mysql.primary.persistence.accessModes [array] Persistent Volume access modes
  201. ## @param mysql.primary.persistence.size Persistent Volume size
  202. ##
  203. persistence:
  204. enabled: true
  205. storageClass: ""
  206. accessModes:
  207. - ReadWriteOnce
  208. size: 8Gi
  209. ## External Database Configuration
  210. ## All of these values are only used if `postgresql.enabled=false`
  211. ##
  212. externalDatabase:
  213. ## @param externalDatabase.platform External Database platform
  214. ##
  215. platform: mysql
  216. ## @param externalDatabase.host External Database server host
  217. ##
  218. host: "mysql-primary.observe.svc.cluster.local"
  219. ## @param externalDatabase.port External Database server port
  220. ##
  221. port: "3306"
  222. ## @param externalDatabase.user External Database username
  223. ##
  224. user: "halo"
  225. ## @param externalDatabase.password External Database user password
  226. ##
  227. password: "halo@cestong.com"
  228. ## @param externalDatabase.database External Database database name
  229. ##
  230. database: "halo"
  231. ## @param externalDatabase.existingSecret The name of an existing secret with database credentials. Evaluated as a template
  232. ## NOTE: Must contain key `password`
  233. ## NOTE: When it's set, the `externalDatabase.password` parameter is ignored
  234. ##
  235. existingSecret: ""
  236. ## @section Halo deployment parameters
  237. ##
  238. ## @param replicaCount Number of Halo replicas to deploy
  239. ## NOTE: ReadWriteMany PVC(s) are required if replicaCount > 1
  240. ##
  241. replicaCount: 1
  242. ## @param updateStrategy.type Halo deployment strategy type
  243. ## @param updateStrategy.rollingUpdate Halo deployment rolling update configuration parameters
  244. ## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
  245. ## NOTE: Set it to `Recreate` if you use a PV that cannot be mounted on multiple pods
  246. ## e.g:
  247. ## updateStrategy:
  248. ## type: RollingUpdate
  249. ## rollingUpdate:
  250. ## maxSurge: 25%
  251. ## maxUnavailable: 25%
  252. ##
  253. updateStrategy:
  254. type: RollingUpdate
  255. rollingUpdate: {}
  256. ## @param schedulerName Alternate scheduler
  257. ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
  258. ##
  259. schedulerName: ""
  260. ## @param topologySpreadConstraints Topology Spread Constraints for pod assignment spread across your cluster among failure-domains. Evaluated as a template
  261. ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/#spread-constraints-for-pods
  262. ##
  263. topologySpreadConstraints: []
  264. ## @param priorityClassName Name of the existing priority class to be used by Halo pods, priority class needs to be created beforehand
  265. ## Ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
  266. ##
  267. priorityClassName: ""
  268. ## @param hostAliases [array] Halo pod host aliases
  269. ## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
  270. ##
  271. hostAliases:
  272. ## Required for Apache exporter to work
  273. ##
  274. - ip: "127.0.0.1"
  275. hostnames:
  276. - "status.localhost"
  277. ## @param extraVolumes Optionally specify extra list of additional volumes for Halo pods
  278. ##
  279. extraVolumes: []
  280. ## @param extraVolumeMounts Optionally specify extra list of additional volumeMounts for Halo container(s)
  281. ##
  282. extraVolumeMounts: []
  283. ## @param sidecars Add additional sidecar containers to the Halo pod
  284. ## e.g:
  285. ## sidecars:
  286. ## - name: your-image-name
  287. ## image: your-image
  288. ## imagePullPolicy: Always
  289. ## ports:
  290. ## - name: portname
  291. ## containerPort: 1234
  292. ##
  293. sidecars: []
  294. ## @param initContainers Add additional init containers to the Halo pods
  295. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
  296. ## e.g:
  297. ## initContainers:
  298. ## - name: your-image-name
  299. ## image: your-image
  300. ## imagePullPolicy: Always
  301. ## command: ['sh', '-c', 'copy themes and plugins from git and push to /bitnami/halo/wp-content. Should work with extraVolumeMounts and extraVolumes']
  302. ##
  303. initContainers: []
  304. ## @param podLabels Extra labels for Halo pods
  305. ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
  306. ##
  307. podLabels: {}
  308. ## @param podAnnotations Annotations for Halo pods
  309. ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
  310. ##
  311. podAnnotations: {}
  312. ## @param podAffinityPreset Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
  313. ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
  314. ##
  315. podAffinityPreset: ""
  316. ## @param podAntiAffinityPreset Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
  317. ## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
  318. ##
  319. podAntiAffinityPreset: soft
  320. ## Node affinity preset
  321. ## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity
  322. ##
  323. nodeAffinityPreset:
  324. ## @param nodeAffinityPreset.type Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
  325. ##
  326. type: ""
  327. ## @param nodeAffinityPreset.key Node label key to match. Ignored if `affinity` is set
  328. ##
  329. key: ""
  330. ## @param nodeAffinityPreset.values Node label values to match. Ignored if `affinity` is set
  331. ## E.g.
  332. ## values:
  333. ## - e2e-az1
  334. ## - e2e-az2
  335. ##
  336. values: []
  337. ## @param affinity Affinity for pod assignment
  338. ## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
  339. ## NOTE: podAffinityPreset, podAntiAffinityPreset, and nodeAffinityPreset will be ignored when it's set
  340. ##
  341. affinity: {}
  342. ## @param nodeSelector Node labels for pod assignment
  343. ## ref: https://kubernetes.io/docs/user-guide/node-selection/
  344. ##
  345. nodeSelector: {}
  346. ## @param tolerations Tolerations for pod assignment
  347. ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
  348. ##
  349. tolerations: []
  350. ## Halo containers' resource requests and limits
  351. ## ref: https://kubernetes.io/docs/user-guide/compute-resources/
  352. ## @param resources.limits The resources limits for the Halo containers
  353. ## @param resources.requests.memory The requested memory for the Halo containers
  354. ## @param resources.requests.cpu The requested cpu for the Halo containers
  355. ##
  356. resources:
  357. limits: {}
  358. requests:
  359. memory: 4096Mi
  360. cpu: 1
  361. ## Container ports
  362. ## @param containerPorts.http Halo HTTP container port
  363. ##
  364. containerPorts:
  365. http: 8090
  366. ## @param extraContainerPorts Optionally specify extra list of additional ports for Halo container(s)
  367. ## e.g:
  368. ## extraContainerPorts:
  369. ## - name: myservice
  370. ## containerPort: 9090
  371. ##
  372. extraContainerPorts: []
  373. ## Configure Pods Security Context
  374. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
  375. ## @param podSecurityContext.enabled Enabled Halo pods' Security Context
  376. ## @param podSecurityContext.fsGroup Set Halo pod's Security Context fsGroup
  377. ##
  378. podSecurityContext:
  379. enabled: true
  380. fsGroup: 1001
  381. ## Configure Container Security Context (only main container)
  382. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
  383. ## @param containerSecurityContext.enabled Enabled Halo containers' Security Context
  384. ## @param containerSecurityContext.runAsUser Set Halo container's Security Context runAsUser
  385. ## @param containerSecurityContext.runAsNonRoot Set Halo container's Security Context runAsNonRoot
  386. ## @param containerSecurityContext.allowPrivilegeEscalation Set Halo container's privilege escalation
  387. ## @param containerSecurityContext.capabilities.drop Set Halo container's Security Context runAsNonRoot
  388. ##
  389. containerSecurityContext:
  390. enabled: true
  391. runAsUser: 1001
  392. runAsNonRoot: true
  393. allowPrivilegeEscalation: false
  394. capabilities:
  395. drop: ["ALL"]
  396. ## Configure extra options for Halo containers' liveness, readiness and startup probes
  397. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes
  398. ## @param livenessProbe.enabled Enable livenessProbe on Halo containers
  399. ## @skip livenessProbe.httpGet
  400. ## @param livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe
  401. ## @param livenessProbe.periodSeconds Period seconds for livenessProbe
  402. ## @param livenessProbe.timeoutSeconds Timeout seconds for livenessProbe
  403. ## @param livenessProbe.failureThreshold Failure threshold for livenessProbe
  404. ## @param livenessProbe.successThreshold Success threshold for livenessProbe
  405. ##
  406. livenessProbe:
  407. enabled: true
  408. httpGet:
  409. path: /
  410. port: "{{ .Values.haloScheme }}"
  411. scheme: "{{ .Values.haloScheme | upper }}"
  412. ## If using an HTTPS-terminating load-balancer, the probes may need to behave
  413. ## like the balancer to prevent HTTP 302 responses. According to the Kubernetes
  414. ## docs, 302 should be considered "successful", but this issue on GitHub
  415. ## (https://github.com/kubernetes/kubernetes/issues/47893) shows that it isn't.
  416. ## E.g.
  417. ## httpHeaders:
  418. ## - name: X-Forwarded-Proto
  419. ## value: https
  420. ##
  421. httpHeaders: []
  422. initialDelaySeconds: 30
  423. periodSeconds: 10
  424. timeoutSeconds: 5
  425. failureThreshold: 3
  426. successThreshold: 1
  427. ## @param readinessProbe.enabled Enable readinessProbe on Halo containers
  428. ## @skip readinessProbe.httpGet
  429. ## @param readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe
  430. ## @param readinessProbe.periodSeconds Period seconds for readinessProbe
  431. ## @param readinessProbe.timeoutSeconds Timeout seconds for readinessProbe
  432. ## @param readinessProbe.failureThreshold Failure threshold for readinessProbe
  433. ## @param readinessProbe.successThreshold Success threshold for readinessProbe
  434. ##
  435. readinessProbe:
  436. enabled: true
  437. httpGet:
  438. path: /
  439. port: "{{ .Values.haloScheme }}"
  440. scheme: "{{ .Values.haloScheme | upper }}"
  441. ## If using an HTTPS-terminating load-balancer, the probes may need to behave
  442. ## like the balancer to prevent HTTP 302 responses. According to the Kubernetes
  443. ## docs, 302 should be considered "successful", but this issue on GitHub
  444. ## (https://github.com/kubernetes/kubernetes/issues/47893) shows that it isn't.
  445. ## E.g.
  446. ## httpHeaders:
  447. ## - name: X-Forwarded-Proto
  448. ## value: https
  449. ##
  450. httpHeaders: []
  451. initialDelaySeconds: 30
  452. periodSeconds: 10
  453. timeoutSeconds: 5
  454. failureThreshold: 3
  455. successThreshold: 1
  456. ## @param startupProbe.enabled Enable startupProbe on Halo containers
  457. ## @skip startupProbe.httpGet
  458. ## @param startupProbe.initialDelaySeconds Initial delay seconds for startupProbe
  459. ## @param startupProbe.periodSeconds Period seconds for startupProbe
  460. ## @param startupProbe.timeoutSeconds Timeout seconds for startupProbe
  461. ## @param startupProbe.failureThreshold Failure threshold for startupProbe
  462. ## @param startupProbe.successThreshold Success threshold for startupProbe
  463. ##
  464. startupProbe:
  465. enabled: false
  466. httpGet:
  467. path: /
  468. port: "{{ .Values.haloScheme }}"
  469. scheme: "{{ .Values.haloScheme | upper }}"
  470. ## If using an HTTPS-terminating load-balancer, the probes may need to behave
  471. ## like the balancer to prevent HTTP 302 responses. According to the Kubernetes
  472. ## docs, 302 should be considered "successful", but this issue on GitHub
  473. ## (https://github.com/kubernetes/kubernetes/issues/47893) shows that it isn't.
  474. ## E.g.
  475. ## httpHeaders:
  476. ## - name: X-Forwarded-Proto
  477. ## value: https
  478. ##
  479. httpHeaders: []
  480. initialDelaySeconds: 10
  481. periodSeconds: 5
  482. timeoutSeconds: 3
  483. failureThreshold: 3
  484. successThreshold: 1
  485. ## @param customLivenessProbe Custom livenessProbe that overrides the default one
  486. ##
  487. customLivenessProbe: {}
  488. ## @param customReadinessProbe Custom readinessProbe that overrides the default one
  489. ##
  490. customReadinessProbe: {}
  491. ## @param customStartupProbe Custom startupProbe that overrides the default one
  492. ##
  493. customStartupProbe: {}
  494. ## @param lifecycleHooks for the Halo container(s) to automate configuration before or after startup
  495. ##
  496. lifecycleHooks: {}
  497. ## @section Traffic Exposure Parameters
  498. ##
  499. ## Halo service parameters
  500. ##
  501. service:
  502. ## @param service.type Halo service type
  503. ##
  504. type: NodePort
  505. ## @param service.ports.http Halo service HTTP port
  506. ##
  507. ports:
  508. http: 80
  509. ## Node ports to expose
  510. ## @param service.nodePorts.http Node port for HTTP
  511. ## NOTE: choose port between <30000-32767>
  512. ##
  513. nodePorts:
  514. http: ""
  515. ## @param service.sessionAffinity Control where client requests go, to the same pod or round-robin
  516. ## Values: ClientIP or None
  517. ## ref: https://kubernetes.io/docs/user-guide/services/
  518. ##
  519. sessionAffinity: None
  520. ## @param service.sessionAffinityConfig Additional settings for the sessionAffinity
  521. ## sessionAffinityConfig:
  522. ## clientIP:
  523. ## timeoutSeconds: 300
  524. ##
  525. sessionAffinityConfig: {}
  526. ## @param service.clusterIP Halo service Cluster IP
  527. ## e.g.:
  528. ## clusterIP: None
  529. ##
  530. clusterIP: ""
  531. ## @param service.loadBalancerIP Halo service Load Balancer IP
  532. ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-loadbalancer
  533. ##
  534. loadBalancerIP: ""
  535. ## @param service.loadBalancerSourceRanges Halo service Load Balancer sources
  536. ## ref: https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service
  537. ## e.g:
  538. ## loadBalancerSourceRanges:
  539. ## - 10.10.10.0/24
  540. ##
  541. loadBalancerSourceRanges: []
  542. ## @param service.externalTrafficPolicy Halo service external traffic policy
  543. ## ref https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
  544. ##
  545. externalTrafficPolicy: Cluster
  546. ## @param service.annotations Additional custom annotations for Halo service
  547. ##
  548. annotations: {}
  549. ## @param service.extraPorts Extra port to expose on Halo service
  550. ##
  551. extraPorts: []
  552. ## Configure the ingress resource that allows you to access the Halo installation
  553. ## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/
  554. ##
  555. ingress:
  556. ## @param ingress.enabled Enable ingress record generation for Halo
  557. ##
  558. enabled: false
  559. ## @param ingress.pathType Ingress path type
  560. ##
  561. pathType: ImplementationSpecific
  562. ## @param ingress.apiVersion Force Ingress API version (automatically detected if not set)
  563. ##
  564. apiVersion: ""
  565. ## @param ingress.ingressClassName IngressClass that will be be used to implement the Ingress (Kubernetes 1.18+)
  566. ## This is supported in Kubernetes 1.18+ and required if you have more than one IngressClass marked as the default for your cluster .
  567. ## ref: https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/
  568. ##
  569. ingressClassName: "nginx"
  570. ## @param ingress.hostname Default host for the ingress record
  571. ##
  572. hostname: halo.cestong.com.cn
  573. ## @param ingress.path Default path for the ingress record
  574. ## NOTE: You may need to set this to '/*' in order to use this with ALB ingress controllers
  575. ##
  576. path: /
  577. ## @param ingress.annotations Additional annotations for the Ingress resource. To enable certificate autogeneration, place here your cert-manager annotations.
  578. ## For a full list of possible ingress annotations, please see
  579. ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md
  580. ## Use this parameter to set the required annotations for cert-manager, see
  581. ## ref: https://cert-manager.io/docs/usage/ingress/#supported-annotations
  582. ##
  583. ## e.g:
  584. ## annotations:
  585. ## kubernetes.io/ingress.class: nginx
  586. ## cert-manager.io/cluster-issuer: cluster-issuer-name
  587. ##
  588. annotations: {}
  589. ## @param ingress.tls Enable TLS configuration for the host defined at `ingress.hostname` parameter
  590. ## TLS certificates will be retrieved from a TLS secret with name: `{{- printf "%s-tls" .Values.ingress.hostname }}`
  591. ## You can:
  592. ## - Use the `ingress.secrets` parameter to create this TLS secret
  593. ## - Rely on cert-manager to create it by setting the corresponding annotations
  594. ## - Rely on Helm to create self-signed certificates by setting `ingress.selfSigned=true`
  595. ##
  596. tls: false
  597. ## @param ingress.selfSigned Create a TLS secret for this ingress record using self-signed certificates generated by Helm
  598. ##
  599. selfSigned: false
  600. ## @param ingress.extraHosts An array with additional hostname(s) to be covered with the ingress record
  601. ## e.g:
  602. ## extraHosts:
  603. ## - name: halo.local
  604. ## path: /
  605. ##
  606. extraHosts: []
  607. ## @param ingress.extraPaths An array with additional arbitrary paths that may need to be added to the ingress under the main host
  608. ## e.g:
  609. ## extraPaths:
  610. ## - path: /*
  611. ## backend:
  612. ## serviceName: ssl-redirect
  613. ## servicePort: use-annotation
  614. ##
  615. extraPaths: []
  616. ## @param ingress.extraTls TLS configuration for additional hostname(s) to be covered with this ingress record
  617. ## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls
  618. ## e.g:
  619. ## extraTls:
  620. ## - hosts:
  621. ## - halo.local
  622. ## secretName: halo.local-tls
  623. ##
  624. extraTls: []
  625. ## @param ingress.secrets Custom TLS certificates as secrets
  626. ## NOTE: 'key' and 'certificate' are expected in PEM format
  627. ## NOTE: 'name' should line up with a 'secretName' set further up
  628. ## If it is not set and you're using cert-manager, this is unneeded, as it will create a secret for you with valid certificates
  629. ## If it is not set and you're NOT using cert-manager either, self-signed certificates will be created valid for 365 days
  630. ## It is also possible to create and manage the certificates outside of this helm chart
  631. ## Please see README.md for more information
  632. ## e.g:
  633. ## secrets:
  634. ## - name: halo.local-tls
  635. ## key: |-
  636. ## -----BEGIN RSA PRIVATE KEY-----
  637. ## ...
  638. ## -----END RSA PRIVATE KEY-----
  639. ## certificate: |-
  640. ## -----BEGIN CERTIFICATE-----
  641. ## ...
  642. ## -----END CERTIFICATE-----
  643. ##
  644. secrets: []
  645. ## @param ingress.extraRules Additional rules to be covered with this ingress record
  646. ## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-rules
  647. ## e.g:
  648. ## extraRules:
  649. ## - host: halo.local
  650. ## http:
  651. ## path: /
  652. ## backend:
  653. ## service:
  654. ## name: halo-svc
  655. ## port:
  656. ## name: http
  657. ##
  658. extraRules: []
  659. ## @section Persistence Parameters
  660. ##
  661. ## Persistence Parameters
  662. ## ref: https://kubernetes.io/docs/user-guide/persistent-volumes/
  663. ##
  664. persistence:
  665. ## @param persistence.enabled Enable persistence using Persistent Volume Claims
  666. ##
  667. enabled: true
  668. ## @param persistence.storageClass Persistent Volume storage class
  669. ## If defined, storageClassName: <storageClass>
  670. ## If set to "-", storageClassName: "", which disables dynamic provisioning
  671. ## If undefined (the default) or set to null, no storageClassName spec is set, choosing the default provisioner
  672. ##
  673. storageClass: ""
  674. ## @param persistence.accessModes [array] Persistent Volume access modes
  675. ##
  676. accessModes:
  677. - ReadWriteOnce
  678. ## @param persistence.size Persistent Volume size
  679. ##
  680. size: 10Gi
  681. ## @param persistence.dataSource Custom PVC data source
  682. ##
  683. dataSource: {}
  684. ## @param persistence.existingClaim The name of an existing PVC to use for persistence
  685. ##
  686. existingClaim: ""
  687. ## @param persistence.selector Selector to match an existing Persistent Volume for Halo data PVC
  688. ## If set, the PVC can't have a PV dynamically provisioned for it
  689. ## E.g.
  690. ## selector:
  691. ## matchLabels:
  692. ## app: my-app
  693. ##
  694. selector: {}
  695. ## @param persistence.annotations Persistent Volume Claim annotations
  696. ##
  697. annotations: {}
  698. ## Init containers parameters:
  699. ## volumePermissions: Change the owner and group of the persistent volume(s) mountpoint(s) to 'runAsUser:fsGroup' on each node
  700. ##
  701. volumePermissions:
  702. ## @param volumePermissions.enabled Enable init container that changes the owner/group of the PV mount point to `runAsUser:fsGroup`
  703. ##
  704. enabled: false
  705. ## Bitnami Shell image
  706. ## ref: https://hub.docker.com/r/bitnami/bitnami-shell/tags/
  707. ## @param volumePermissions.image.registry Bitnami Shell image registry
  708. ## @param volumePermissions.image.repository Bitnami Shell image repository
  709. ## @param volumePermissions.image.tag Bitnami Shell image tag (immutable tags are recommended)
  710. ## @param volumePermissions.image.digest Bitnami Shell image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag
  711. ## @param volumePermissions.image.pullPolicy Bitnami Shell image pull policy
  712. ## @param volumePermissions.image.pullSecrets Bitnami Shell image pull secrets
  713. ##
  714. image:
  715. registry: docker.io
  716. repository: bitnami/bitnami-shell
  717. tag: 11-debian-11-r59
  718. digest: ""
  719. pullPolicy: IfNotPresent
  720. ## Optionally specify an array of imagePullSecrets.
  721. ## Secrets must be manually created in the namespace.
  722. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
  723. ## e.g:
  724. ## pullSecrets:
  725. ## - myRegistryKeySecretName
  726. ##
  727. pullSecrets: []
  728. ## Init container's resource requests and limits
  729. ## ref: https://kubernetes.io/docs/user-guide/compute-resources/
  730. ## @param volumePermissions.resources.limits The resources limits for the init container
  731. ## @param volumePermissions.resources.requests The requested resources for the init container
  732. ##
  733. resources:
  734. limits: {}
  735. requests: {}
  736. ## Init container' Security Context
  737. ## Note: the chown of the data folder is done to containerSecurityContext.runAsUser
  738. ## and not the below volumePermissions.containerSecurityContext.runAsUser
  739. ## @param volumePermissions.containerSecurityContext.runAsUser User ID for the init container
  740. ##
  741. containerSecurityContext:
  742. runAsUser: 0
  743. ## @section Other Parameters
  744. ##
  745. ## Halo Service Account
  746. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
  747. ##
  748. serviceAccount:
  749. ## @param serviceAccount.create Enable creation of ServiceAccount for Halo pod
  750. ##
  751. create: false
  752. ## @param serviceAccount.name The name of the ServiceAccount to use.
  753. ## If not set and create is true, a name is generated using the common.names.fullname template
  754. ##
  755. name: ""
  756. ## @param serviceAccount.automountServiceAccountToken Allows auto mount of ServiceAccountToken on the serviceAccount created
  757. ## Can be set to false if pods using this serviceAccount do not need to use K8s API
  758. ##
  759. automountServiceAccountToken: true
  760. ## @param serviceAccount.annotations Additional custom annotations for the ServiceAccount
  761. ##
  762. annotations: {}
  763. ## @section NetworkPolicy parameters
  764. ##
  765. ## Add networkpolicies
  766. ##
  767. networkPolicy:
  768. ## @param networkPolicy.enabled Enable network policies
  769. ## If ingress.enabled or metrics.enabled are true, configure networkPolicy.ingress and networkPolicy.metrics selectors respectively to allow communication
  770. ##
  771. enabled: false
  772. ## @param networkPolicy.metrics.enabled Enable network policy for metrics (prometheus)
  773. ## @param networkPolicy.metrics.namespaceSelector [object] Monitoring namespace selector labels. These labels will be used to identify the prometheus' namespace.
  774. ## @param networkPolicy.metrics.podSelector [object] Monitoring pod selector labels. These labels will be used to identify the Prometheus pods.
  775. ##
  776. metrics:
  777. enabled: false
  778. ## e.g:
  779. ## podSelector:
  780. ## label: monitoring
  781. ##
  782. podSelector: {}
  783. ## e.g:
  784. ## namespaceSelector:
  785. ## label: monitoring
  786. ##
  787. namespaceSelector: {}
  788. ## @param networkPolicy.ingress.enabled Enable network policy for Ingress Proxies
  789. ## @param networkPolicy.ingress.namespaceSelector [object] Ingress Proxy namespace selector labels. These labels will be used to identify the Ingress Proxy's namespace.
  790. ## @param networkPolicy.ingress.podSelector [object] Ingress Proxy pods selector labels. These labels will be used to identify the Ingress Proxy pods.
  791. ##
  792. ingress:
  793. enabled: false
  794. ## e.g:
  795. ## podSelector:
  796. ## label: ingress
  797. ##
  798. podSelector: {}
  799. ## e.g:
  800. ## namespaceSelector:
  801. ## label: ingress
  802. ##
  803. namespaceSelector: {}
  804. ## @param networkPolicy.ingressRules.backendOnlyAccessibleByFrontend Enable ingress rule that makes the backend (postgresql) only accessible by testlink's pods.
  805. ## @param networkPolicy.ingressRules.customBackendSelector [object] Backend selector labels. These labels will be used to identify the backend pods.
  806. ## @param networkPolicy.ingressRules.accessOnlyFrom.enabled Enable ingress rule that makes testlink only accessible from a particular origin
  807. ## @param networkPolicy.ingressRules.accessOnlyFrom.namespaceSelector [object] Namespace selector label that is allowed to access testlink. This label will be used to identified the allowed namespace(s).
  808. ## @param networkPolicy.ingressRules.accessOnlyFrom.podSelector [object] Pods selector label that is allowed to access testlink. This label will be used to identified the allowed pod(s).
  809. ## @param networkPolicy.ingressRules.customRules [object] Custom network policy ingress rule
  810. ##
  811. ingressRules:
  812. ## postgresql backend only can be accessed from testlink
  813. ##
  814. backendOnlyAccessibleByFrontend: false
  815. ## Additional custom backend selector
  816. ## e.g:
  817. ## customBackendSelector:
  818. ## - to:
  819. ## - namespaceSelector:
  820. ## matchLabels:
  821. ## label: example
  822. ##
  823. customBackendSelector: {}
  824. ## Allow only from the indicated:
  825. ##
  826. accessOnlyFrom:
  827. enabled: false
  828. ## e.g:
  829. ## podSelector:
  830. ## label: access
  831. ##
  832. podSelector: {}
  833. ## e.g:
  834. ## namespaceSelector:
  835. ## label: access
  836. ##
  837. namespaceSelector: {}
  838. ## custom ingress rules
  839. ## e.g:
  840. ## customRules:
  841. ## - from:
  842. ## - namespaceSelector:
  843. ## matchLabels:
  844. ## label: example
  845. ##
  846. customRules: {}
  847. ## @param networkPolicy.egressRules.denyConnectionsToExternal Enable egress rule that denies outgoing traffic outside the cluster, except for DNS (port 53).
  848. ## @param networkPolicy.egressRules.customRules [object] Custom network policy rule
  849. ##
  850. egressRules:
  851. # Deny connections to external. This is not compatible with an external database.
  852. denyConnectionsToExternal: false
  853. ## Additional custom egress rules
  854. ## e.g:
  855. ## customRules:
  856. ## - to:
  857. ## - namespaceSelector:
  858. ## matchLabels:
  859. ## label: example
  860. ##
  861. customRules: {}