Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add readme for radar-gateway #119

Merged
merged 3 commits into from
Aug 10, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .helmdocsignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ charts/cert-manager/
charts/kafka-manager/
charts/kube-prometheus-stack/
charts/radar-backend/
charts/radar-gateway/
charts/radar-integration/
charts/radar-jdbc-connector/
charts/radar-output/
Expand Down
8 changes: 7 additions & 1 deletion charts/radar-gateway/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,10 +1,16 @@
apiVersion: v1
appVersion: "0.5.6"
description: A Helm chart for Kubernetes
description: A Helm chart for RADAR-base gateway. For more details of the configurations, see https://github.com/RADAR-base/RADAR-Gateway/blob/master/gateway.yml.
name: radar-gateway
version: 0.1.3
sources: ["https://github.com/RADAR-base/RADAR-Gateway"]
deprecated: false
type: application
home: "https://radar-base.org"
maintainers:
- email: keyvan@thehyve.nl
name: Keyvan Hedayati
- email: joris@thehyve.nl
name: Joris Borgdorff
- email: nivethika@thehyve.nl
name: Nivethika Mahasivam
Empty file.
62 changes: 62 additions & 0 deletions charts/radar-gateway/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@


# radar-gateway

![Version: 0.1.3](https://img.shields.io/badge/Version-0.1.3-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.5.6](https://img.shields.io/badge/AppVersion-0.5.6-informational?style=flat-square)

A Helm chart for RADAR-base gateway. For more details of the configurations, see https://github.com/RADAR-base/RADAR-Gateway/blob/master/gateway.yml.

**Homepage:** <https://radar-base.org>

## Maintainers

| Name | Email | Url |
| ---- | ------ | --- |
| Keyvan Hedayati | keyvan@thehyve.nl | |
| Joris Borgdorff | joris@thehyve.nl | |
| Nivethika Mahasivam | nivethika@thehyve.nl | |

## Source Code

* <https://github.com/RADAR-base/RADAR-Gateway>

## Prerequisites
* Kubernetes 1.17+
* Kubectl 1.17+
* Helm 3.1.0+

## Values

| Key | Type | Default | Description |
|-----|------|---------|-------------|
| replicaCount | int | `2` | Number of radar-gateway replicas to deploy |
| image.repository | string | `"radarbase/radar-gateway"` | radar-gateway image repository |
| image.tag | string | `"0.5.6"` | radar-gateway image tag (immutable tags are recommended) Overrides the image tag whose default is the chart appVersion. |
| image.pullPolicy | string | `"IfNotPresent"` | radar-gateway image pull policy |
| nameOverride | string | `""` | String to partially override radar-gateway.fullname template with a string (will prepend the release name) |
| fullnameOverride | string | `""` | String to fully override radar-gateway.fullname template with a string |
| service.type | string | `"ClusterIP"` | Kubernetes Service type |
| service.port | int | `8080` | radar-gateway port |
| ingress.enabled | bool | `true` | Enable ingress controller resource |
| ingress.annotations | object | check values.yaml | Annotations that define default ingress class, certificate issuer and deny access to sensitive URLs |
| ingress.path | string | `"/kafka/?(.*)"` | Path within the url structure |
| ingress.hosts | list | `["localhost"]` | Hosts to accept requests from |
| ingress.tls.secretName | string | `"radar-base-tls"` | Name of the secret that contains TLS certificates |
| resources.requests | object | `{"cpu":"100m","memory":"128Mi"}` | CPU/Memory resource requests |
| nodeSelector | object | `{}` | Node labels for pod assignment |
| tolerations | list | `[]` | Toleration labels for pod assignment |
| affinity | object | `{}` | Affinity labels for pod assignment |
| serviceMonitor.enabled | bool | `true` | Enable metrics to be collected via Prometheus-operator |
| managementportalHost | string | `"management-portal"` | Host name of the management portal application |
| schemaRegistry | string | `"http://cp-schema-registry:8081"` | Schema Registry URL |
| max_requests | int | `1000` | Not used. To be confirmed |
| bootstrapServers | string | `"cp-kafka-headless:9092"` | Kafka broker URLs |
| checkSourceId | bool | `true` | set to true, if sources in access token should be validated |
| adminProperties | object | `{}` | Additional Kafka Admin Client settings as key value pairs. Read from https://kafka.apache.org/documentation/#adminclientconfigs. |
| producerProperties | object | `{"compression.type":"lz4"}` | Kafka producer properties as key value pairs. Read from https://kafka.apache.org/documentation/#producerconfigs. |
| serializationProperties | object | `{}` | Additional Kafka serialization settings, used in KafkaAvroSerializer. Read from [io.confluent.kafka.serializers.AbstractKafkaSchemaSerDeConfig]. |
| cc.enabled | bool | `false` | set to true, if requests should be forwarded to Confluent Cloud based brokers. |
| cc.apiKey | string | `"ccApikey"` | Confluent Cloud cluster API key |
| cc.apiSecret | string | `"ccApiSecret"` | Confluent Cloud cluster API secret |
| cc.schemaRegistryApiKey | string | `"srApiKey"` | Confluent Cloud schema registry API key |
| cc.schemaRegistryApiSecret | string | `"srApiSecret"` | Confluent Cloud schema registry API secret |
16 changes: 16 additions & 0 deletions charts/radar-gateway/README.md.gotmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{{ template "chart.header" . }}
{{ template "chart.deprecationWarning" . }}

{{ template "chart.badgesSection" . }}

{{ template "chart.description" . }}

{{ template "chart.homepageLine" . }}

{{ template "chart.maintainersSection" . }}

{{ template "chart.sourcesSection" . }}

{{ template "common.prerequisites" . }}

{{ template "chart.valuesSection" . }}
37 changes: 34 additions & 3 deletions charts/radar-gateway/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,34 @@
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.

# -- Number of radar-gateway replicas to deploy
replicaCount: 2

image:
# -- radar-gateway image repository
repository: radarbase/radar-gateway
# -- radar-gateway image tag (immutable tags are recommended)
# Overrides the image tag whose default is the chart appVersion.
tag: 0.5.6
# -- radar-gateway image pull policy
pullPolicy: IfNotPresent

# -- String to partially override radar-gateway.fullname template with a string (will prepend the release name)
nameOverride: ""
# -- String to fully override radar-gateway.fullname template with a string
fullnameOverride: ""

service:
# -- Kubernetes Service type
type: ClusterIP
# -- radar-gateway port
port: 8080

ingress:
# -- Enable ingress controller resource
enabled: true
# -- Annotations that define default ingress class, certificate issuer and deny access to sensitive URLs
# @default -- check values.yaml
annotations:
kubernetes.io/ingress.class: nginx
cert-manager.io/cluster-issuer: letsencrypt-prod
Expand All @@ -32,10 +44,13 @@ ingress:
location ~* /kafka/topics/.+/partitions {
deny all;
}
# -- Path within the url structure
path: "/kafka/?(.*)"
# -- Hosts to accept requests from
hosts:
- localhost
tls:
# -- Name of the secret that contains TLS certificates
secretName: radar-base-tls

resources:
Expand All @@ -46,35 +61,51 @@ resources:
# limits:
# cpu: 100m
# memory: 128Mi

# -- CPU/Memory resource requests
requests:
cpu: 100m
memory: 128Mi

# -- Node labels for pod assignment
nodeSelector: {}

# -- Toleration labels for pod assignment
tolerations: []

# -- Affinity labels for pod assignment
affinity: {}

serviceMonitor:
# -- Enable metrics to be collected via Prometheus-operator
enabled: true

# -- Host name of the management portal application
managementportalHost: management-portal
# -- Schema Registry URL
schemaRegistry: http://cp-schema-registry:8081
# -- Not used. To be confirmed
max_requests: 1000
# -- Kafka broker URLs
bootstrapServers: cp-kafka-headless:9092
# -- set to true, if sources in access token should be validated
checkSourceId: true

# -- Additional Kafka Admin Client settings as key value pairs. Read from https://kafka.apache.org/documentation/#adminclientconfigs.
adminProperties: {}

# -- Kafka producer properties as key value pairs. Read from https://kafka.apache.org/documentation/#producerconfigs.
producerProperties:
compression.type: lz4

# -- Additional Kafka serialization settings, used in KafkaAvroSerializer. Read from [io.confluent.kafka.serializers.AbstractKafkaSchemaSerDeConfig].
serializationProperties: {}

cc:
# -- set to true, if requests should be forwarded to Confluent Cloud based brokers.
enabled: false
# -- Confluent Cloud cluster API key
apiKey: ccApikey
# -- Confluent Cloud cluster API secret
apiSecret: ccApiSecret
# -- Confluent Cloud schema registry API key
schemaRegistryApiKey: srApiKey
# -- Confluent Cloud schema registry API secret
schemaRegistryApiSecret: srApiSecret