diff --git a/Breaking-Changes.md b/Breaking-Changes.md index ce594ccf7..8f839d814 100644 --- a/Breaking-Changes.md +++ b/Breaking-Changes.md @@ -1,5 +1,11 @@ # 2GIS On-Premise Breaking-Changes +## [1.16.0] + +### catalog-api + +- Changes in data for catalog, if you have a version lower than 1.16.0, you need to update to version 1.16.0 to get the latest data + ## [1.15.0] ### navi-router diff --git a/CHANGELOG.md b/CHANGELOG.md index 42926a401..3248871de 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,36 @@ # 2GIS On-Premise Changelog +## [1.16.0] (2023-12-12) +#### [Breaking-Changes](Breaking-Changes.md#1600) +#### Images +``` +catalog-api + - catalog-importer:1.0.10 + + catalog-importer:1.1.0 +citylens + - citylens-api:1.1.2 + + citylens-api:1.2.6 + - citylens-database:1.1.2 + + citylens-database:1.2.0 + - citylens-web:1.1.2 + + citylens-web:1.2.6 +keys + - keys-backend:1.69.0 + + keys-backend:1.71.0 +mapgl-js-api + - mapgl:1.40.0 + + mapgl:1.42.0 +pro-api + + pro-importer:1.1.67 +pro-ui + - pro-ui:1.3.0 + + pro-ui:1.4.0 +search-api + - search-api:7.65.0 + + search-api:7.68.0 + +``` + ## [1.15.0] (2023-11-30) #### [Breaking-Changes](Breaking-Changes.md#1500) #### Images diff --git a/charts/catalog-api/Chart.yaml b/charts/catalog-api/Chart.yaml index bbc226525..6ec92662b 100644 --- a/charts/catalog-api/Chart.yaml +++ b/charts/catalog-api/Chart.yaml @@ -3,7 +3,7 @@ name: catalog-api type: application description: A Helm chart for Kubernetes to deploy Catalog APIs -version: 1.15.0 +version: 1.16.0 appVersion: 3.600.0 maintainers: diff --git a/charts/catalog-api/README.md b/charts/catalog-api/README.md index 42634a725..874fc001b 100644 --- a/charts/catalog-api/README.md +++ b/charts/catalog-api/README.md @@ -186,19 +186,20 @@ See the [documentation](https://docs.2gis.com/en/on-premise/search) to learn abo | Name | Description | Value | | --------------------------- | --------------------------------------------------------------------------------------------- | ---------------------------------- | | `importer.image.repository` | Repository | `2gis-on-premise/catalog-importer` | -| `importer.image.tag` | Tag | `1.0.10` | +| `importer.image.tag` | Tag | `1.1.0` | | `importer.image.pullPolicy` | Image [Pull Policy](https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy) | `IfNotPresent` | ### importer.postgres **Database settings** -| Name | Description | Value | -| --------------------------------------- | ------------------------------------------------ | ------ | -| `importer.postgres.host` | PostgreSQL rw hostname or IP. **Required** | `""` | -| `importer.postgres.port` | PostgreSQL port | `5432` | -| `importer.postgres.name` | PostgreSQL database name. **Required** | `""` | -| `importer.postgres.username` | PostgreSQL username with rw access. **Required** | `""` | -| `importer.postgres.password` | PostgreSQL password. **Required** | `""` | -| `importer.postgres.schemaSwitchEnabled` | Automatic switch PostgreSQL schema on releases | `true` | +| Name | Description | Value | +| --------------------------------------- | ------------------------------------------------ | ------------ | +| `importer.postgres.host` | PostgreSQL rw hostname or IP. **Required** | `""` | +| `importer.postgres.port` | PostgreSQL port | `5432` | +| `importer.postgres.name` | PostgreSQL database name. **Required** | `""` | +| `importer.postgres.username` | PostgreSQL username with rw access. **Required** | `""` | +| `importer.postgres.password` | PostgreSQL password. **Required** | `""` | +| `importer.postgres.schemaSwitchEnabled` | Automatic switch PostgreSQL schema on releases | `true` | +| `importer.postgres.schemaExtensions` | Schema for PostgreSQL extensions | `extensions` | ### importer.persistentVolume **Persistent Volume settings** diff --git a/charts/catalog-api/templates/helpers.tpl b/charts/catalog-api/templates/helpers.tpl index da5cca347..8fcde3463 100644 --- a/charts/catalog-api/templates/helpers.tpl +++ b/charts/catalog-api/templates/helpers.tpl @@ -45,7 +45,7 @@ onprem {{- define "catalog.env.postgres" -}} - name: CATALOG_DB_SCHEMA - value: "{{ include "catalog.manifestCode" . }},extensions" + value: "{{ include "catalog.manifestCode" . }},{{ .Values.importer.postgres.schemaExtensions }}" - name: CATALOG_DB_QUERY_TIMEOUT value: "{{ .Values.api.postgres.queryTimeout }}" - name: CATALOG_DB_BRANCH_POOL_SIZE @@ -76,16 +76,6 @@ onprem name: {{ include "catalog.secret.deploys.name" . }} key: apiDbPassword -- name: CATALOG_DB_API_KEY_URL - value: "jdbc:postgresql://{{ .Values.api.postgres.host }}:{{ .Values.api.postgres.port }}/{{ .Values.api.postgres.name }}" -- name: CATALOG_DB_API_KEY_LOGIN - value: "{{ .Values.api.postgres.username }}" -- name: CATALOG_DB_API_KEY_PASS - valueFrom: - secretKeyRef: - name: {{ include "catalog.secret.deploys.name" . }} - key: apiDbPassword - - name: CATALOG_DB_RUBRIC_URL value: "jdbc:postgresql://{{ .Values.api.postgres.host }}:{{ .Values.api.postgres.port }}/{{ .Values.api.postgres.name }}" - name: CATALOG_DB_RUBRIC_LOGIN @@ -155,6 +145,8 @@ onprem value: "{{ include "catalog.manifestCode" . }}" - name: IMPORTER_DB_CATALOG_SCHEMA_SWITCH_ENABLED value: "{{ .Values.importer.postgres.schemaSwitchEnabled }}" +- name: IMPORTER_DB_CATALOG_SCHEMA_EXTENSIONS + value: "{{ .Values.importer.postgres.schemaExtensions }}" - name: IMPORTER_DB_CATALOG_HOST value: "{{ required "A valid .Values.importer.postgres.host entry required" .Values.importer.postgres.host }}" - name: IMPORTER_DB_CATALOG_PORT diff --git a/charts/catalog-api/values.yaml b/charts/catalog-api/values.yaml index cdfa2bd5e..4f9070a09 100644 --- a/charts/catalog-api/values.yaml +++ b/charts/catalog-api/values.yaml @@ -262,7 +262,7 @@ importer: image: repository: 2gis-on-premise/catalog-importer - tag: 1.0.10 + tag: 1.1.0 pullPolicy: IfNotPresent # @section importer.postgres **Database settings** @@ -273,6 +273,7 @@ importer: # @param importer.postgres.username PostgreSQL username with rw access. **Required** # @param importer.postgres.password PostgreSQL password. **Required** # @param importer.postgres.schemaSwitchEnabled Automatic switch PostgreSQL schema on releases + # @param importer.postgres.schemaExtensions Schema for PostgreSQL extensions postgres: host: '' @@ -281,6 +282,7 @@ importer: username: '' password: '' schemaSwitchEnabled: true + schemaExtensions: extensions # @section importer.persistentVolume **Persistent Volume settings** diff --git a/charts/citylens/Chart.yaml b/charts/citylens/Chart.yaml index 3e6169d31..0c5cab10c 100644 --- a/charts/citylens/Chart.yaml +++ b/charts/citylens/Chart.yaml @@ -3,8 +3,8 @@ name: citylens type: application description: A Helm chart for Kubernetes to deploy Citylens service -version: 1.15.0 -appVersion: 1.1.2 +version: 1.16.0 +appVersion: 1.2.6 maintainers: - name: 2gis diff --git a/charts/citylens/README.md b/charts/citylens/README.md index 435d3d8bc..f993e8a02 100644 --- a/charts/citylens/README.md +++ b/charts/citylens/README.md @@ -47,7 +47,7 @@ See the [documentation]() to learn about: | Name | Description | Value | | ---------------------- | ------------ | ------------------------------ | | `api.image.repository` | Repository. | `2gis-on-premise/citylens-api` | -| `api.image.tag` | Tag. | `1.1.2` | +| `api.image.tag` | Tag. | `1.2.6` | | `api.image.pullPolicy` | Pull Policy. | `IfNotPresent` | ### Resources settings @@ -117,7 +117,7 @@ See the [documentation]() to learn about: | Name | Description | Value | | ---------------------- | ------------ | ------------------------------ | | `web.image.repository` | Repository. | `2gis-on-premise/citylens-web` | -| `web.image.tag` | Tag. | `1.1.2` | +| `web.image.tag` | Tag. | `1.2.6` | | `web.image.pullPolicy` | Pull Policy. | `IfNotPresent` | ### Resources settings @@ -154,14 +154,15 @@ See the [documentation]() to learn about: ### Auth settings for authentication -| Name | Description | Value | -| ------------------------ | ------------------------------------------------------------------------------------------ | ------- | -| `web.auth.enabled` | If authentication is needed. | `false` | -| `web.auth.realm` | Authenitcation realm, example: Inspection_Portal_backend **Required** | `""` | -| `web.auth.authServerUrl` | API URL of authentication service. Example: `http(s)://keycloak.ingress.host` **Required** | `""` | -| `web.auth.clientId` | Client id from keycloak, example: citylens-web-client **Required** | `""` | -| `web.auth.clientSecret` | Client Secret from keycloak. **Required** | `""` | -| `web.auth.verifySsl` | Enable\Disable SSL check. | `true` | +| Name | Description | Value | +| ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | +| `web.auth.enabled` | If authentication is needed. | `false` | +| `web.auth.realm` | Authentication realm. Used for constructing openid-configuration endpoint: `/realms/realm/.well-known/openid-configuration` if realm defined, `/.well-known/openid-configuration` othervise. Ex: Inspection_Portal_backend | `""` | +| `web.auth.authServerUrl` | API URL of authentication service. Ex: `http(s)://keycloak.ingress.host` **Required** | `""` | +| `web.auth.clientId` | Client id from keycloak. Ex: citylens-web-client **Required** | `""` | +| `web.auth.clientSecret` | Client Secret from keycloak. **Required** | `""` | +| `web.auth.verifySsl` | Enable\Disable SSL check. | `true` | +| `web.auth.pkce` | Enable\Disable PKCE (Proof Key for Code Exchange) in Authorization Code flow. | `false` | ### Custom settings @@ -219,6 +220,7 @@ See the [documentation]() to learn about: | `worker.camcomSender.requestRateLimit.period` | Camcom period rate limit | `60` | | `worker.camcomSender.requestRetries` | Camcom request retries | `3` | | `worker.camcomSender.requestRetriesBackoff` | request retries backoff | `1` | +| `worker.camcomSender.sourceEnv` | Environment name to send to CamCam (source_env field in request), ignored if empty. | `""` | | `worker.camcomSender.annotations` | Kubernetes [annotations](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/). | `{}` | | `worker.camcomSender.labels` | Kubernetes [labels](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/). | `{}` | | `worker.camcomSender.podAnnotations` | Kubernetes [annotations](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/). | `{}` | @@ -302,7 +304,7 @@ See the [documentation]() to learn about: | -------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------- | | `migrations.enabled` | If migrations needed. | `true` | | `migrations.image.repository` | Repository. | `2gis-on-premise/citylens-database` | -| `migrations.image.tag` | Tag. | `1.1.2` | +| `migrations.image.tag` | Tag. | `1.2.0` | | `migrations.image.pullPolicy` | Pull Policy | `IfNotPresent` | | `migrations.resources.requests.cpu` | A CPU request. | `100m` | | `migrations.resources.requests.memory` | A memory request. | `1Gi` | @@ -312,33 +314,35 @@ See the [documentation]() to learn about: ### Kafka settings -| Name | Description | Value | -| ----------------------------- | ------------------------------------------------------- | -------- | -| `kafka.bootstrapServer` | A Kafka broker endpoint. **Required** | `""` | -| `kafka.username` | A Kafka username for connection. **Required** | `""` | -| `kafka.password` | A Kafka password for connection. **Required** | `""` | -| `kafka.topics.frames` | List of topics for Frames saver worker. **Required** | `""` | -| `kafka.topics.tracks` | List of topics for Tracks metadata worker. **Required** | `""` | -| `kafka.topics.pro` | List of topics for Reporter pro worker. **Required** | `""` | -| `kafka.topics.uploader` | List of topics for Uploader worker. **Required** | `""` | -| `kafka.topics.logs` | List of topics for API logs. **Required** | `""` | -| `kafka.consumerGroups.prefix` | Kafka topics prefix. **Required** | `""` | -| `kafka.predictors[0].name` | Name of predictor **Required** | `camcom` | -| `kafka.predictors[0].topic` | Topic used by predictor **Required** | `""` | -| `kafka.predictors[1].name` | Name of manual predictor **Required** | `manual` | -| `kafka.predictors[1].topic` | Topic used by manual predictor **Required** | `""` | +| Name | Description | Value | +| ------------------------------ | ------------------------------------------------------- | -------- | +| `kafka.bootstrapServer` | A Kafka broker endpoint. **Required** | `""` | +| `kafka.username` | A Kafka username for connection. **Required** | `""` | +| `kafka.password` | A Kafka password for connection. **Required** | `""` | +| `kafka.topics.frames` | List of topics for Frames saver worker. **Required** | `""` | +| `kafka.topics.tracks` | List of topics for Tracks metadata worker. **Required** | `""` | +| `kafka.topics.pro` | List of topics for Reporter pro worker. **Required** | `""` | +| `kafka.topics.uploader` | List of topics for Uploader worker. **Required** | `""` | +| `kafka.topics.logs` | List of topics for API logs. **Required** | `""` | +| `kafka.topics.framesLifecycle` | Topic for frames lifecycle events logs. **Required** | `""` | +| `kafka.consumerGroups.prefix` | Kafka topics prefix. **Required** | `""` | +| `kafka.predictors[0].name` | Name of predictor **Required** | `camcom` | +| `kafka.predictors[0].topic` | Topic used by predictor **Required** | `""` | +| `kafka.predictors[1].name` | Name of manual predictor **Required** | `manual` | +| `kafka.predictors[1].topic` | Topic used by manual predictor **Required** | `""` | ### S3 settings -| Name | Description | Value | -| --------------------- | ------------------------------------------------------------------- | ------ | -| `s3.verifySsl` | Verify SSL certificate when connecting to s3.endpoint. | `true` | -| `s3.endpoint` | S3 endpoint. Format: `host:port` or `url`. **Required** | `""` | -| `s3.accessKey` | S3 access key for accessing the bucket. **Required** | `""` | -| `s3.secretAccessKey` | S3 secret key for accessing the bucket. **Required** | `""` | -| `s3.bucketPrefix` | S3 bucket name prefix for the frames buckets. **Required** | `""` | -| `s3.logsBucketPrefix` | S3 bucket name prefix for the mobile app logs buckets. **Required** | `""` | -| `s3.region` | S3 region. | `""` | +| Name | Description | Value | +| --------------------- | ------------------------------------------------------------------- | ------- | +| `s3.verifySsl` | Verify SSL certificate when connecting to s3.endpoint. | `true` | +| `s3.endpoint` | S3 endpoint. Format: `host:port` or `url`. **Required** | `""` | +| `s3.accessKey` | S3 access key for accessing the bucket. **Required** | `""` | +| `s3.secretAccessKey` | S3 secret key for accessing the bucket. **Required** | `""` | +| `s3.bucketPrefix` | S3 bucket name prefix for the frames buckets. **Required** | `""` | +| `s3.logsBucketPrefix` | S3 bucket name prefix for the mobile app logs buckets. **Required** | `""` | +| `s3.region` | S3 region. | `""` | +| `s3.setPublicReadACL` | Set "public-read" ACL on buckets and objects. | `false` | ### postgres **Database settings** @@ -362,13 +366,14 @@ See the [documentation]() to learn about: ### Custom settings -| Name | Description | Value | -| ------------------------- | ------------------------------------------ | ---------------------------- | -| `dashboardDomain` | Link to Citylens web address. **Required** | `""` | -| `locale` | Locale language (en by default). | `en` | -| `headerLinks` | List of links for navbar. | `["drivers","tracks","map"]` | -| `reporters[0].name` | Reporter name. | `pro` | -| `reporters[0].predictors` | Predictor used by reporter. | `["camcom"]` | +| Name | Description | Value | +| ------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------- | +| `dashboardDomain` | Link to Citylens web address. **Required** | `""` | +| `locale` | Locale language (en by default). | `en` | +| `headerLinks` | List of links for navbar. | `["drivers","tracks","map"]` | +| `reporters[0].name` | Reporter name. | `pro` | +| `reporters[0].predictors` | Predictor used by reporter. | `["camcom"]` | +| `reporters[0].trackTimeoutDays` | Time in days to wait for track completion and receiving frames prediction before marking as not synced with Pro. | `1` | ### PRO integration (only when Pro reporter enabled) diff --git a/charts/citylens/templates/web/configmap.yaml b/charts/citylens/templates/web/configmap.yaml index d105b712d..3ffb7853c 100644 --- a/charts/citylens/templates/web/configmap.yaml +++ b/charts/citylens/templates/web/configmap.yaml @@ -7,7 +7,12 @@ data: {{- with .Values.web.auth }} keycloak.json: | { - "realm": {{ required "A valid .Values.web.auth.realm entry required" .realm | quote }}, + {{- if .realm }} + "realm": {{ .realm | quote }}, + {{- end }} + {{- if .pkce }} + "pkce": {{ .pkce }}, + {{- end }} "auth-server-url": {{ required "A valid .Values.web.auth.authServerUrl entry required" .authServerUrl | quote }}, "resource": {{ required "A valid .Values.web.auth.clientId entry required" .clientId | quote }}, "verify-ssl": {{ .verifySsl }}, @@ -16,7 +21,7 @@ data: } } {{- end }} - {{- end }} + {{- end }} dashboard_config.yaml: | dashboard_domain: {{ required "A valid .Values.dashboardDomain. entry required" .Values.dashboardDomain | squote }} default_locale: {{ .Values.locale | squote }} @@ -40,6 +45,13 @@ data: {{- with .Values.s3 }} bucket_prefix: {{ required "A valid .Values.s3.bucketPrefix entry required" .bucketPrefix | squote }} logs_bucket_prefix: {{ required "A valid .Values.s3.logsBucketPrefix entry required" .logsBucketPrefix | squote }} + {{- if .setPublicReadACL }} + set_public_read_acl: {{ .setPublicReadACL }} + {{- end }} + key_templates: + log: '{track_uuid}/log_{log_timestamp_ms}' + log_prefix: '{track_uuid}/log_' + frame: '{track_uuid}/{frame_timestamp_ms}.jpg' client_params: aws_access_key_id: {{ required "A valid .Values.s3.accessKey entry required" .accessKey | squote }} aws_secret_access_key: {{ required "A valid .Values.s3.secretAccessKey entry required" .secretAccessKey | squote }} @@ -63,6 +75,7 @@ data: period: {{ .requestRateLimit.period }} request_retries: {{ .requestRetries }} request_retries_backoff: {{ .requestRetriesBackoff }} + source_env: {{ .sourceEnv }} {{- end }} {{- end }} {{- with .Values.pro }} @@ -95,6 +108,7 @@ data: track_downloader: frames_topics: {{ .Values.kafka.topics.frames }} metadata_topics: {{ .Values.kafka.topics.tracks }} + frames_lifecycle_topic: {{ required "A valid .Values.kafka.topics.framesLifecycle entry required" .Values.kafka.topics.framesLifecycle | squote }} logs_saver: logs_topic: {{ .Values.kafka.topics.logs }} reporters: @@ -104,6 +118,9 @@ data: {{- toYaml .predictors | nindent 12 }} {{- if eq .name "pro" }} topic: {{ $.Values.kafka.topics.pro }} + {{- if .trackTimeoutDays }} + timeout: {{ .trackTimeoutDays }} + {{- end }} {{- end }} {{- end }} predictors: diff --git a/charts/citylens/values.yaml b/charts/citylens/values.yaml index 542454251..5adc74947 100644 --- a/charts/citylens/values.yaml +++ b/charts/citylens/values.yaml @@ -86,7 +86,7 @@ api: image: repository: 2gis-on-premise/citylens-api pullPolicy: IfNotPresent - tag: 1.1.2 + tag: 1.2.6 replicas: 4 @@ -175,11 +175,12 @@ api: # @section Auth settings for authentication # @param web.auth.enabled If authentication is needed. -# @param web.auth.realm Authenitcation realm, example: Inspection_Portal_backend **Required** -# @param web.auth.authServerUrl API URL of authentication service. Example: `http(s)://keycloak.ingress.host` **Required** -# @param web.auth.clientId Client id from keycloak, example: citylens-web-client **Required** +# @param web.auth.realm Authentication realm. Used for constructing openid-configuration endpoint: `/realms/realm/.well-known/openid-configuration` if realm defined, `/.well-known/openid-configuration` othervise. Ex: Inspection_Portal_backend +# @param web.auth.authServerUrl API URL of authentication service. Ex: `http(s)://keycloak.ingress.host` **Required** +# @param web.auth.clientId Client id from keycloak. Ex: citylens-web-client **Required** # @param web.auth.clientSecret Client Secret from keycloak. **Required** # @param web.auth.verifySsl Enable\Disable SSL check. +# @param web.auth.pkce Enable\Disable PKCE (Proof Key for Code Exchange) in Authorization Code flow. # @section Custom settings @@ -200,7 +201,7 @@ web: image: repository: 2gis-on-premise/citylens-web pullPolicy: IfNotPresent - tag: 1.1.2 + tag: 1.2.6 replicas: 1 @@ -241,6 +242,7 @@ web: clientId: '' clientSecret: '' verifySsl: true + pkce: false logLevel: WARNING @@ -311,6 +313,8 @@ worker: # @param worker.camcomSender.requestRetries Camcom request retries # @param worker.camcomSender.requestRetriesBackoff request retries backoff +# @param worker.camcomSender.sourceEnv Environment name to send to CamCam (source_env field in request), ignored if empty. + # @param worker.camcomSender.annotations Kubernetes [annotations](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/). # @param worker.camcomSender.labels Kubernetes [labels](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/). @@ -335,6 +339,7 @@ worker: period: 60 requestRetries: 3 requestRetriesBackoff: 1 + sourceEnv: '' annotations: {} labels: {} @@ -503,7 +508,7 @@ migrations: image: repository: 2gis-on-premise/citylens-database pullPolicy: IfNotPresent - tag: 1.1.2 + tag: 1.2.0 resources: requests: @@ -525,6 +530,7 @@ migrations: # @param kafka.topics.pro List of topics for Reporter pro worker. **Required** # @param kafka.topics.uploader List of topics for Uploader worker. **Required** # @param kafka.topics.logs List of topics for API logs. **Required** +# @param kafka.topics.framesLifecycle Topic for frames lifecycle events logs. **Required** # @param kafka.consumerGroups.prefix Kafka topics prefix. **Required** # @param kafka.predictors[0].name Name of predictor **Required** # @param kafka.predictors[0].topic Topic used by predictor **Required** @@ -542,6 +548,7 @@ kafka: pro: '' logs: '' uploader: '' + framesLifecycle: '' consumerGroups: prefix: '' predictors: @@ -558,6 +565,7 @@ kafka: # @param s3.bucketPrefix S3 bucket name prefix for the frames buckets. **Required** # @param s3.logsBucketPrefix S3 bucket name prefix for the mobile app logs buckets. **Required** # @param s3.region S3 region. +# @param s3.setPublicReadACL Set "public-read" ACL on buckets and objects. s3: verifySsl: true @@ -567,6 +575,7 @@ s3: bucketPrefix: '' logsBucketPrefix: '' region: '' + setPublicReadACL: false # @section postgres **Database settings** @@ -607,6 +616,7 @@ map: # @param headerLinks List of links for navbar. # @param reporters[0].name Reporter name. # @param reporters[0].predictors Predictor used by reporter. +# @param reporters[0].trackTimeoutDays Time in days to wait for track completion and receiving frames prediction before marking as not synced with Pro. dashboardDomain: '' @@ -620,6 +630,7 @@ headerLinks: reporters: - name: pro predictors: [camcom] + trackTimeoutDays: 1 # @section PRO integration (only when Pro reporter enabled) diff --git a/charts/dgtt/Chart.yaml b/charts/dgtt/Chart.yaml index e4c76775a..8d5ae34ad 100644 --- a/charts/dgtt/Chart.yaml +++ b/charts/dgtt/Chart.yaml @@ -3,7 +3,7 @@ name: dgtt description: DGTT Helm chart for Kubernetes type: application -version: 1.15.0 +version: 1.16.0 appVersion: 0.2.27-b188673e09 maintainers: diff --git a/charts/floors-api/Chart.yaml b/charts/floors-api/Chart.yaml index c0222edb4..316f5a7bb 100644 --- a/charts/floors-api/Chart.yaml +++ b/charts/floors-api/Chart.yaml @@ -3,7 +3,7 @@ name: floors-api description: Helm for floors service type: application -version: 1.15.0 +version: 1.16.0 appVersion: 1.0.4 maintainers: diff --git a/charts/gis-platform/Chart.yaml b/charts/gis-platform/Chart.yaml index 4aa1e02c6..d96f10f2b 100644 --- a/charts/gis-platform/Chart.yaml +++ b/charts/gis-platform/Chart.yaml @@ -4,7 +4,7 @@ description: GIS Platform type: application -version: 1.15.0 +version: 1.16.0 appVersion: 2023.8.3-0 dependencies: diff --git a/charts/keycloak/Chart.yaml b/charts/keycloak/Chart.yaml index 42de09df1..310546cf3 100644 --- a/charts/keycloak/Chart.yaml +++ b/charts/keycloak/Chart.yaml @@ -5,7 +5,7 @@ description: Keycloak is a high performance Java-based identity and access manag solution. It lets developers add an authentication layer to their applications with minimum effort. -version: 1.15.0 +version: 1.16.0 appVersion: 21.1.1-debian-11-r4 maintainers: diff --git a/charts/keys/Chart.yaml b/charts/keys/Chart.yaml index 28f7711f0..2ecabc468 100644 --- a/charts/keys/Chart.yaml +++ b/charts/keys/Chart.yaml @@ -3,8 +3,8 @@ name: keys type: application description: A Helm chart for Kubernetes to deploy API Keys service -version: 1.15.0 -appVersion: 1.69.0 +version: 1.16.0 +appVersion: 1.71.0 maintainers: - name: 2gis diff --git a/charts/keys/README.md b/charts/keys/README.md index b82785ea6..76347dea9 100644 --- a/charts/keys/README.md +++ b/charts/keys/README.md @@ -31,7 +31,7 @@ See the [documentation](https://docs.2gis.com/en/on-premise/keys) to learn about | `imagePullSecrets` | Kubernetes image pull secrets. | `[]` | | `imagePullPolicy` | Pull policy. | `IfNotPresent` | | `backend.image.repository` | Backend service image repository. | `2gis-on-premise/keys-backend` | -| `backend.image.tag` | Backend service image tag. | `1.69.0` | +| `backend.image.tag` | Backend service image tag. | `1.71.0` | | `admin.image.repository` | Admin service image repository. | `2gis-on-premise/keys-ui` | | `admin.image.tag` | Admin service image tag. | `0.6.0` | | `redis.image.repository` | Redis image repository. | `2gis-on-premise/keys-redis` | diff --git a/charts/keys/values.yaml b/charts/keys/values.yaml index 10913e0db..5a6973def 100644 --- a/charts/keys/values.yaml +++ b/charts/keys/values.yaml @@ -22,7 +22,7 @@ imagePullPolicy: IfNotPresent backend: image: repository: 2gis-on-premise/keys-backend - tag: 1.69.0 + tag: 1.71.0 # @section Admin service settings diff --git a/charts/license/Chart.yaml b/charts/license/Chart.yaml index c3602a159..675b5d86c 100644 --- a/charts/license/Chart.yaml +++ b/charts/license/Chart.yaml @@ -3,7 +3,7 @@ name: license type: application description: A Helm chart for Kubernetes to deploy License service -version: 1.15.0 +version: 1.16.0 appVersion: 2.1.2 maintainers: diff --git a/charts/mapgl-js-api/Chart.yaml b/charts/mapgl-js-api/Chart.yaml index fa5e150b7..6a161d1d9 100644 --- a/charts/mapgl-js-api/Chart.yaml +++ b/charts/mapgl-js-api/Chart.yaml @@ -4,8 +4,8 @@ description: Basic WebGL map chart template for 2GIS On-Premise type: application -version: 1.15.0 -appVersion: 1.40.0 +version: 1.16.0 +appVersion: 1.42.0 maintainers: - name: 2gis diff --git a/charts/mapgl-js-api/README.md b/charts/mapgl-js-api/README.md index a1d6f9961..f9031763b 100644 --- a/charts/mapgl-js-api/README.md +++ b/charts/mapgl-js-api/README.md @@ -45,7 +45,7 @@ See the [documentation](https://docs.2gis.com/en/on-premise/map) to learn about: | Name | Description | Value | | ------------------ | ----------- | ----------------------- | | `image.repository` | Repository | `2gis-on-premise/mapgl` | -| `image.tag` | Tag | `1.40.0` | +| `image.tag` | Tag | `1.42.0` | | `image.pullPolicy` | Pull Policy | `IfNotPresent` | ### Environment variables diff --git a/charts/mapgl-js-api/values.yaml b/charts/mapgl-js-api/values.yaml index 0ff3cd07c..be23efdff 100644 --- a/charts/mapgl-js-api/values.yaml +++ b/charts/mapgl-js-api/values.yaml @@ -36,7 +36,7 @@ podLabels: {} image: repository: 2gis-on-premise/mapgl - tag: 1.40.0 + tag: 1.42.0 pullPolicy: IfNotPresent diff --git a/charts/navi-async-grpc-proxy/Chart.yaml b/charts/navi-async-grpc-proxy/Chart.yaml index b5b0a9c7d..351678ed8 100644 --- a/charts/navi-async-grpc-proxy/Chart.yaml +++ b/charts/navi-async-grpc-proxy/Chart.yaml @@ -6,7 +6,7 @@ keywords: - navi - dm-async-matrix - async-grpc-proxy -version: 1.15.0 +version: 1.16.0 appVersion: 0.0.2 maintainers: - name: 2gis diff --git a/charts/navi-async-matrix/Chart.yaml b/charts/navi-async-matrix/Chart.yaml index 97b082c0f..d6c164d5c 100644 --- a/charts/navi-async-matrix/Chart.yaml +++ b/charts/navi-async-matrix/Chart.yaml @@ -4,7 +4,7 @@ description: Service implements asynchronous API over Distance Matrix type: application -version: 1.15.0 +version: 1.16.0 appVersion: 1.6.2 maintainers: diff --git a/charts/navi-async-matrix/README.md b/charts/navi-async-matrix/README.md index 6f7bfdcab..d3f2ae3aa 100644 --- a/charts/navi-async-matrix/README.md +++ b/charts/navi-async-matrix/README.md @@ -63,6 +63,14 @@ See the [documentation](https://docs.2gis.com/en/on-premise/navigation/distance- | `serviceAccount.annotations` | Annotations to add to the service account. | `{}` | | `serviceAccount.name` | The name of the service account to use. If not set and create is true, a name is generated using the fullname template. | `""` | +### RBAC parameters + +| Name | Description | Value | +| ------------------ | ----------------------------------------------- | ------- | +| `rbac.create` | Whether to create and use RBAC resources or not | `false` | +| `rbac.annotations` | Role and RoleBinding annotations | `{}` | +| `rbac.labels` | Role and RoleBinding additional labels | `{}` | + ### Strategy settings | Name | Description | Value | @@ -158,18 +166,24 @@ See the [documentation](https://docs.2gis.com/en/on-premise/navigation/distance- ### Kafka settings -| Name | Description | Value | -| --------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------- | -| `kafka.groupId` | Distance Matrix Async API group identifier. | `navi_async_matrix` | -| `kafka.statusTopic` | Name of the topic for sending new tasks to. | `status_topic` | -| `kafka.cancelTopic` | Name of the topic for canceling or receiving information about finished tasks. | `cancel_topic` | -| `kafka.properties` | Properties as supported by kafka-python. Refer to inline comments for details. | | -| `kafka.sensitiveProperties` | As kafka.properties, but kept in Secrets. Refer to inlines comments for details. | `{}` | -| `kafka.fileProperties` | As kafka.properties, but kept in a file, which passed to application as a filename. Refer to inline comments for details. | `{}` | -| `kafka.taskTopicRules` | **Information about the topics that Distance Matrix Async API will use to send the requests.** | | -| `kafka.taskTopicRules[].topic` | Name of the topic. | | -| `kafka.taskTopicRules[].default` | If this topic is used for projects by default. | | -| `kafka.taskTopicRules[].projects` | List of projects to use this topic for, e.g., `['moscow']`. | | +| Name | Description | Value | +| --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------- | +| `kafka.groupId` | Distance Matrix Async API group identifier. | `navi_async_matrix` | +| `kafka.statusTopic` | Name of the topic for sending new tasks to. | `status_topic` | +| `kafka.cancelTopic` | Name of the topic for canceling or receiving information about finished tasks. | `cancel_topic` | +| `kafka.properties` | Properties as supported by kafka-python. Refer to inline comments for details. | | +| `kafka.sensitiveProperties` | As kafka.properties, but kept in Secrets. Refer to inlines comments for details. | `{}` | +| `kafka.fileProperties` | As kafka.properties, but kept in a file, which passed to application as a filename. Refer to inline comments for details. | `{}` | +| `kafka.consumerOverrides.properties` | Consumer specific properties as simple key-value pairs. | `{}` | +| `kafka.consumerOverrides.sensitiveProperties` | Consumer specific properties mounted as secrets. | `{}` | +| `kafka.consumerOverrides.fileProperties` | Consumer specific properties mounted as regular files. | `{}` | +| `kafka.producerOverrides.properties` | Consumer specific properties as simple key-value pairs. | `{}` | +| `kafka.producerOverrides.sensitiveProperties` | Consumer specific properties mounted as secrets. | `{}` | +| `kafka.producerOverrides.fileProperties` | Consumer specific properties mounted as regular files. | `{}` | +| `kafka.taskTopicRules` | **Information about the topics that Distance Matrix Async API will use to send the requests.** | | +| `kafka.taskTopicRules[].topic` | Name of the topic. | | +| `kafka.taskTopicRules[].default` | If this topic is used for projects by default. | | +| `kafka.taskTopicRules[].projects` | List of projects to use this topic for, e.g., `['moscow']`. | | ### S3-compatible storage settings diff --git a/charts/navi-async-matrix/templates/_helpers.tpl b/charts/navi-async-matrix/templates/_helpers.tpl index 7e1fb71da..f18deae00 100644 --- a/charts/navi-async-matrix/templates/_helpers.tpl +++ b/charts/navi-async-matrix/templates/_helpers.tpl @@ -67,20 +67,26 @@ Create the name of the service account to use Context: .kafka.properties .kafka.fileProperties + .overrides.properties + .overrides.fileProperties .mountpoint File properties values (file contents) replaced with keys (file names). File names prepended with the supposed directory from .mountpoint. + overrides.* are merged with kafka.* accordingly. + Returns {"ret": that-merged-dict}. Folding result in "ret" needed for marshalling. */ -}} {{- define "navi-async-matrix.kafkaProperties" -}} {{- $ctx := . -}} {{- $kafkaProperties := dict -}} - {{- range $key, $_ := $ctx.kafka.fileProperties -}} + {{- $fileProperties := deepCopy $ctx.kafka.fileProperties | mustMerge (($ctx.overrides).fileProperties | default dict) -}} + {{- range $key, $_ := $fileProperties -}} {{- $_ := set $kafkaProperties $key (printf "%s/%s" $ctx.mountpoint $key) -}} {{- end -}} - {{- $kafkaProperties = mustMerge $kafkaProperties $ctx.kafka.properties -}} + {{- $regularProperties := deepCopy $ctx.kafka.properties | mustMerge (($ctx.overrides).properties | default dict) -}} + {{- $kafkaProperties = deepCopy $regularProperties | mustMerge $kafkaProperties -}} {{- dict "ret" $kafkaProperties | toYaml }} {{- end }} @@ -90,6 +96,9 @@ Create the name of the service account to use .kafka.properties .kafka.fileProperties .kafka.sensitiveProperties + .overrides.properties + .overrides.fileProperties + .overrides.sensitiveProperties .mountpoint .secretname .prefix @@ -113,6 +122,8 @@ Create the name of the service account to use } } where secretKeyRef.name is from .secretname + overrides.* are merged with kafka.* accordingly. + Resulting object folded in {"ret":...} for marshalling. */ -}} {{- define "navi-async-matrix.kafkaPropertiesEnv" -}} @@ -125,7 +136,8 @@ Create the name of the service account to use "value" $val ) -}} {{- end -}} - {{- range $prop, $val := $ctx.kafka.sensitiveProperties -}} + {{- $sensitiveProperties := deepCopy $ctx.kafka.sensitiveProperties | mustMerge (($ctx.overrides).sensitiveProperties | default dict) -}} + {{- range $prop, $val := $sensitiveProperties -}} {{- $env = append $env (dict "name" (print $ctx.prefix ($prop | upper | replace "." "_")) "valueFrom" (dict diff --git a/charts/navi-async-matrix/templates/configmap.yaml b/charts/navi-async-matrix/templates/configmap.yaml index f4980be98..fbcf74fd4 100644 --- a/charts/navi-async-matrix/templates/configmap.yaml +++ b/charts/navi-async-matrix/templates/configmap.yaml @@ -18,9 +18,9 @@ data: {{- if .Values.kafka.fileProperties }} "volumes": [ { - "name": {{ printf "%s-kafka" (include "navi-async-matrix.fullname" .) | mustToJson }}, + "name": {{ printf "%s-producer" (include "navi-async-matrix.fullname" .) | mustToJson }}, "secret": { - "secretName": {{ printf "%s-kafka" (include "navi-async-matrix.fullname" .) | mustToJson }} + "secretName": {{ printf "%s-producer" (include "navi-async-matrix.fullname" .) | mustToJson }} } } ], @@ -31,11 +31,11 @@ data: "name": null, "image": "{{ .Values.dgctlDockerRegistry }}/{{ .Values.dm.archiver.image.repository }}:{{ .Values.dm.archiver.image.tag }}", "resources": {{ .Values.dm.archiver.resources | mustToJson }}, - {{- if .Values.kafka.fileProperties }} + {{- if .Values.kafka.fileProperties | or (.Values.kafka.producerOverrides).fileProperties }} "volumeMounts": [ { - "name": {{ printf "%s-kafka" (include "navi-async-matrix.fullname" .) | mustToJson }}, - "mountPath": "/app/secret/" + "name": {{ printf "%s-producer" (include "navi-async-matrix.fullname" .) | mustToJson }}, + "mountPath": "/app/secret/producer" } ], {{- end }} @@ -50,11 +50,12 @@ data: }, {{- $kafkaPropertiesEnv := include "navi-async-matrix.kafkaPropertiesEnv" (dict "kafka" .Values.kafka + "overrides" .Values.kafka.producerOverrides "secretname" (print (include "navi-async-matrix.fullname" .) - "-kafka" + "-producer" ) - "mountpoint" "/app/secret" + "mountpoint" "/app/secret/producer" "prefix" "KAFKA_PRODUCER_SETTING__CONFIG__" ) | fromYaml -}} {{- include "navi-async-matrix.partialListToJson" $kafkaPropertiesEnv | nindent 14 -}} diff --git a/charts/navi-async-matrix/templates/role.yaml b/charts/navi-async-matrix/templates/role.yaml index 9ec8ca556..f72737d1f 100644 --- a/charts/navi-async-matrix/templates/role.yaml +++ b/charts/navi-async-matrix/templates/role.yaml @@ -1,4 +1,4 @@ -{{- if .Values.dm.archiver.enabled }} +{{- if and .Values.rbac.create .Values.dm.archiver.enabled }} apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: @@ -31,4 +31,4 @@ rules: - patch - update - watch -{{- end }}{{- /* .Values.dm.archiver.enabled */}} +{{- end }}{{- /* .Values.rbac.create .Values.dm.archiver.enabled */}} diff --git a/charts/navi-async-matrix/templates/rolebinding.yaml b/charts/navi-async-matrix/templates/rolebinding.yaml index 35c81d766..1fba81ce4 100644 --- a/charts/navi-async-matrix/templates/rolebinding.yaml +++ b/charts/navi-async-matrix/templates/rolebinding.yaml @@ -1,4 +1,4 @@ -{{- if .Values.dm.archiver.enabled }} +{{- if and .Values.rbac.create .Values.dm.archiver.enabled }} apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: @@ -19,4 +19,4 @@ roleRef: apiGroup: rbac.authorization.k8s.io kind: Role name: {{ include "navi-async-matrix.fullname" . }} -{{- end }}{{- /* .Values.dm.archiver.enabled */}} +{{- end }}{{- /* .Values.rbac.create .Values.dm.archiver.enabled */}} diff --git a/charts/navi-async-matrix/templates/secret.yaml b/charts/navi-async-matrix/templates/secret.yaml index cc36cdc7e..ff9fbe39e 100644 --- a/charts/navi-async-matrix/templates/secret.yaml +++ b/charts/navi-async-matrix/templates/secret.yaml @@ -19,12 +19,16 @@ data: | b64enc | quote }} s3key: {{ required "A valid .Values.s3.secretKey entry required" .Values.s3.secretKey | b64enc | quote }} dmApiKey: {{ .Values.keys.token | b64enc | quote }} -{{- if or .Values.kafka.sensitiveProperties .Values.kafka.fileProperties }} +{{- if ( + (or .Values.kafka.sensitiveProperties .Values.kafka.fileProperties) | + or (or .Values.kafka.consumerOverrides.sensitiveProperties .Values.kafka.consumerOverrides.fileProperties) | + or (or .Values.kafka.producerOverrides.sensitiveProperties .Values.kafka.producerOverrides.fileProperties) + ) }} --- apiVersion: v1 kind: Secret metadata: - name: {{ printf "%s-kafka" (include "navi-async-matrix.fullname" .) | quote }} + name: {{ printf "%s-producer" (include "navi-async-matrix.fullname" .) | quote }} labels: {{- include "navi-async-matrix.labels" . | nindent 4 }} {{- if .Values.labels }} @@ -32,7 +36,26 @@ metadata: {{- end }} type: Opaque data: - {{- range $prop, $val := merge (deepCopy .Values.kafka.sensitiveProperties) (deepCopy .Values.kafka.fileProperties) }} + {{- $producerSensitiveProperties := deepCopy .Values.kafka.sensitiveProperties | mustMerge ((.Values.kafka.producerOverrides).sensitiveProperties | default dict) -}} + {{- $producerFileProperties := deepCopy .Values.kafka.fileProperties | mustMerge ((.Values.kafka.producerOverrides).fileProperties | default dict) -}} + {{- range $prop, $val := merge (deepCopy $producerSensitiveProperties) (deepCopy $producerFileProperties) }} + {{ $prop | quote }}: {{ $val | b64enc | quote }} + {{- end }} +--- +apiVersion: v1 +kind: Secret +metadata: + name: {{ printf "%s-consumer" (include "navi-async-matrix.fullname" .) | quote }} + labels: + {{- include "navi-async-matrix.labels" . | nindent 4 }} + {{- if .Values.labels }} + {{- toYaml .Values.labels | nindent 4 }} + {{- end }} +type: Opaque +data: + {{- $consumerSensitiveProperties := deepCopy .Values.kafka.sensitiveProperties | mustMerge ((.Values.kafka.consumerOverrides).sensitiveProperties | default dict) -}} + {{- $consumerFileProperties := deepCopy .Values.kafka.fileProperties | mustMerge ((.Values.kafka.consumerOverrides).fileProperties | default dict) -}} + {{- range $prop, $val := merge (deepCopy $consumerSensitiveProperties) (deepCopy $consumerFileProperties) }} {{ $prop | quote }}: {{ $val | b64enc | quote }} {{- end }} {{- end }} diff --git a/charts/navi-async-matrix/templates/statefulset.yaml b/charts/navi-async-matrix/templates/statefulset.yaml index 4b5965899..54e4f885f 100644 --- a/charts/navi-async-matrix/templates/statefulset.yaml +++ b/charts/navi-async-matrix/templates/statefulset.yaml @@ -73,10 +73,18 @@ spec: configMap: name: {{ printf "%s-configmap" (include "navi-async-matrix.fullname" .) | quote }} {{- end }} - {{- if .Values.kafka.fileProperties }} - - name: {{ printf "%s-kafka" (include "navi-async-matrix.fullname" .) | quote }} + {{- $kafkaVolumeMounted := ( + .Values.kafka.fileProperties | + or (.Values.kafka.consumerOverrides).fileProperties | + or (.Values.kafka.producerOverrides).fileProperties + ) }} + {{- if $kafkaVolumeMounted }} + - name: {{ printf "%s-consumer" (include "navi-async-matrix.fullname" .) | quote }} secret: - secretName: {{ printf "%s-kafka" (include "navi-async-matrix.fullname" .) | quote }} + secretName: {{ printf "%s-consumer" (include "navi-async-matrix.fullname" .) | quote }} + - name: {{ printf "%s-producer" (include "navi-async-matrix.fullname" .) | quote }} + secret: + secretName: {{ printf "%s-producer" (include "navi-async-matrix.fullname" .) | quote }} {{- end }} {{- if .Values.db.tls.enabled }} - name: {{ include "navi-async-matrix.fullname-psql-raw" . | quote }} @@ -137,9 +145,11 @@ spec: mountPath: /app/src/composite_task_result_archiver/manifests/archive_pod_manifest.json subPath: archive_pod_manifest.json {{- end }} - {{- if .Values.kafka.fileProperties }} - - name: {{ printf "%s-kafka" (include "navi-async-matrix.fullname" .) | quote }} - mountPath: /etc/2gis/secret/ + {{- if $kafkaVolumeMounted }} + - name: {{ printf "%s-consumer" (include "navi-async-matrix.fullname" .) | quote }} + mountPath: /etc/2gis/secret/consumer/ + - name: {{ printf "%s-producer" (include "navi-async-matrix.fullname" .) | quote }} + mountPath: /etc/2gis/secret/producer/ {{- end }} {{- if .Values.db.tls.enabled }} - name: {{ printf "%s-psql" (include "navi-async-matrix.fullname" .) | quote }} @@ -210,18 +220,21 @@ spec: - name: DM_ASYNC_SERVICE_BSS__VERSION value: {{ .Values.bss.version | quote }} {{- end }} - {{- range (list - "DM_ASYNC_SERVICE_KAFKA_PRODUCER_SETTING__KAFKA_PRODUCER_CONFIG__" - "DM_ASYNC_SERVICE_KAFKA_CONSUMER_SETTING__KAFKA_CONSUMER_CONFIG__" - ) }} + {{- range $kafkaRole, $overridesProperty := (dict + "PRODUCER" "producerOverrides" + "CONSUMER" "consumerOverrides" + ) -}} + {{- $kafkaPropertyEnv := print "DM_ASYNC_SERVICE_KAFKA_" $kafkaRole "_SETTING__KAFKA_" $kafkaRole "_CONFIG__" -}} {{- $kafkaPropertiesEnv := include "navi-async-matrix.kafkaPropertiesEnv" (dict "kafka" $.Values.kafka + "overrides" ($overridesProperty | get $.Values.kafka) "secretname" (print (include "navi-async-matrix.fullname" $) - "-kafka" + "-" + (lower $kafkaRole) ) - "mountpoint" "/etc/2gis/secret" - "prefix" . + "mountpoint" (print "/etc/2gis/secret/" (lower $kafkaRole)) + "prefix" $kafkaPropertyEnv ) | fromYaml }} {{- get $kafkaPropertiesEnv "ret" | toYaml | nindent 12 }} {{- end }}{{- /* range */}} diff --git a/charts/navi-async-matrix/values.yaml b/charts/navi-async-matrix/values.yaml index bf1e5bff5..371451b46 100644 --- a/charts/navi-async-matrix/values.yaml +++ b/charts/navi-async-matrix/values.yaml @@ -65,6 +65,19 @@ serviceAccount: annotations: {} name: '' + +# @section RBAC parameters + +# @param rbac.create Whether to create and use RBAC resources or not +# @param rbac.annotations Role and RoleBinding annotations +# @param rbac.labels Role and RoleBinding additional labels + +rbac: + create: false + annotations: {} + labels: {} + + # @section Strategy settings # @param updateStrategy.type Type of Kubernetes deployment. Can be `Recreate` or `RollingUpdate`. @@ -243,6 +256,12 @@ db: # @skip kafka.properties.security.protocol # @param kafka.sensitiveProperties As kafka.properties, but kept in Secrets. Refer to inlines comments for details. # @param kafka.fileProperties As kafka.properties, but kept in a file, which passed to application as a filename. Refer to inline comments for details. +# @param kafka.consumerOverrides.properties Consumer specific properties as simple key-value pairs. +# @param kafka.consumerOverrides.sensitiveProperties Consumer specific properties mounted as secrets. +# @param kafka.consumerOverrides.fileProperties Consumer specific properties mounted as regular files. +# @param kafka.producerOverrides.properties Consumer specific properties as simple key-value pairs. +# @param kafka.producerOverrides.sensitiveProperties Consumer specific properties mounted as secrets. +# @param kafka.producerOverrides.fileProperties Consumer specific properties mounted as regular files. # @extra kafka.taskTopicRules **Information about the topics that Distance Matrix Async API will use to send the requests.** # @extra kafka.taskTopicRules[].topic Name of the topic. # @extra kafka.taskTopicRules[].default If this topic is used for projects by default. @@ -260,6 +279,14 @@ kafka: security.protocol: PLAINTEXT sensitiveProperties: {} fileProperties: {} + consumerOverrides: + properties: {} + sensitiveProperties: {} + fileProperties: {} + producerOverrides: + properties: {} + sensitiveProperties: {} + fileProperties: {} taskTopicRules: - topic: task_topic default: true diff --git a/charts/navi-back/Chart.yaml b/charts/navi-back/Chart.yaml index 671407b51..715cf3ea4 100644 --- a/charts/navi-back/Chart.yaml +++ b/charts/navi-back/Chart.yaml @@ -6,7 +6,7 @@ keywords: - navi - back - backend -version: 1.15.0 +version: 1.16.0 appVersion: 7.10.0 maintainers: - name: 2gis diff --git a/charts/navi-castle/Chart.yaml b/charts/navi-castle/Chart.yaml index 98de27aa1..7eec412d0 100644 --- a/charts/navi-castle/Chart.yaml +++ b/charts/navi-castle/Chart.yaml @@ -4,7 +4,7 @@ description: Castle Helm chart for Kubernetes type: application -version: 1.15.0 +version: 1.16.0 appVersion: 1.7.0 maintainers: diff --git a/charts/navi-front/Chart.yaml b/charts/navi-front/Chart.yaml index 341cad6d4..adaa442bb 100644 --- a/charts/navi-front/Chart.yaml +++ b/charts/navi-front/Chart.yaml @@ -5,7 +5,7 @@ type: application keywords: - navi - front -version: 1.15.0 +version: 1.16.0 appVersion: 1.24.1 maintainers: - name: 2gis diff --git a/charts/navi-restrictions/Chart.yaml b/charts/navi-restrictions/Chart.yaml index 8253da49f..3732f64f6 100644 --- a/charts/navi-restrictions/Chart.yaml +++ b/charts/navi-restrictions/Chart.yaml @@ -4,7 +4,7 @@ description: A Helm chart for Kubernetes to deploy Restrictions backend type: application -version: 1.15.0 +version: 1.16.0 appVersion: 1.0.0 maintainers: diff --git a/charts/navi-router/Chart.yaml b/charts/navi-router/Chart.yaml index 33ad14cde..be8949a6b 100644 --- a/charts/navi-router/Chart.yaml +++ b/charts/navi-router/Chart.yaml @@ -5,7 +5,7 @@ type: application keywords: - navi - router -version: 1.15.0 +version: 1.16.0 appVersion: 6.17.0.8 maintainers: - name: 2gis diff --git a/charts/navi-splitter/Chart.yaml b/charts/navi-splitter/Chart.yaml index 498eee070..23c9afc1e 100644 --- a/charts/navi-splitter/Chart.yaml +++ b/charts/navi-splitter/Chart.yaml @@ -15,5 +15,5 @@ maintainers: - name: 2gis url: https://github.com/2gis email: on-premise@2gis.com -version: 1.15.0 +version: 1.16.0 appVersion: 1.0.1 diff --git a/charts/platform/Chart.yaml b/charts/platform/Chart.yaml index 4bce3d689..6df3c460f 100644 --- a/charts/platform/Chart.yaml +++ b/charts/platform/Chart.yaml @@ -3,7 +3,7 @@ name: platform type: application description: A Helm chart for Kubernetes to deploy Platform -version: 1.15.0 +version: 1.16.0 appVersion: 0.5.5 maintainers: diff --git a/charts/pro-api/Chart.yaml b/charts/pro-api/Chart.yaml index ffe92781a..14ad9c63c 100644 --- a/charts/pro-api/Chart.yaml +++ b/charts/pro-api/Chart.yaml @@ -5,8 +5,8 @@ description: Geo API for getting geo data type: application -version: 1.15.0 -appVersion: 1.1.60 +version: 1.16.0 +appVersion: 1.1.67 maintainers: - name: 2gis diff --git a/charts/pro-api/README.md b/charts/pro-api/README.md index d4b15761e..8a780de9d 100644 --- a/charts/pro-api/README.md +++ b/charts/pro-api/README.md @@ -30,13 +30,14 @@ ### Deployment Artifacts Storage settings -| Name | Description | Value | -| ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- | -| `dgctlStorage.host` | S3 endpoint. Format: `host:port`. **Required** | `""` | -| `dgctlStorage.bucket` | S3 bucket name. **Required** | `""` | -| `dgctlStorage.accessKey` | S3 access key for accessing the bucket. **Required** | `""` | -| `dgctlStorage.secretKey` | S3 secret key for accessing the bucket. **Required** | `""` | -| `dgctlStorage.manifest` | The path to the [manifest file](https://docs.2gis.com/en/on-premise/overview#nav-lvl2@paramCommon_deployment_steps). Format: `manifests/0000000000.json`.
This file contains the description of pieces of data that the service requires to operate. **Required** | `""` | +| Name | Description | Value | +| ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | +| `dgctlStorage.host` | S3 endpoint. Format: `host:port`. **Required** | `""` | +| `dgctlStorage.secure` | Set to `true` if dgctlStorage.host must be accessed via https. **Required** | `false` | +| `dgctlStorage.bucket` | S3 bucket name. **Required** | `""` | +| `dgctlStorage.accessKey` | S3 access key for accessing the bucket. **Required** | `""` | +| `dgctlStorage.secretKey` | S3 secret key for accessing the bucket. **Required** | `""` | +| `dgctlStorage.manifest` | The path to the [manifest file](https://docs.2gis.com/en/on-premise/overview#nav-lvl2@paramCommon_deployment_steps). Format: `manifests/0000000000.json`.
This file contains the description of pieces of data that the service requires to operate. **Required** | `""` | ### Strategy settings @@ -71,7 +72,7 @@ | Name | Description | Value | | ------------------ | ----------- | ------------------------- | | `image.repository` | Repository | `2gis-on-premise/pro-api` | -| `image.tag` | Tag | `1.1.60` | +| `image.tag` | Tag | `1.1.67` | | `image.pullPolicy` | Pull Policy | `IfNotPresent` | ### 2GIS PRO Storage configuration @@ -204,7 +205,7 @@ | Name | Description | Value | | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ | | `assetImporter.repository` | Docker Repository Image. | `2gis-on-premise/pro-importer` | -| `assetImporter.tag` | Docker image tag. | `1.1.60` | +| `assetImporter.tag` | Docker image tag. | `1.1.67` | | `assetImporter.schedule` | Import job schedule. | `0 18 * * *` | | `assetImporter.backoffLimit` | The number of [retries](https://kubernetes.io/docs/concepts/workloads/controllers/job/#pod-backoff-failure-policy) before considering a Job as failed. | `2` | | `assetImporter.successfulJobsHistoryLimit` | How many completed and failed jobs should be kept. See [docs](https://kubernetes.io/docs/tasks/job/automated-tasks-with-cron-jobs/#jobs-history-limits). | `3` | @@ -228,7 +229,7 @@ | `assetImporter.resources.requests.cpu` | A CPU request. | `700m` | | `assetImporter.resources.requests.memory` | A memory request. | `768M` | | `assetImporter.resources.limits.cpu` | A CPU limit. | `1000m` | -| `assetImporter.resources.limits.memory` | A memory limit. | `2560M` | +| `assetImporter.resources.limits.memory` | A memory limit. | `8Gi` | ### Kubernetes [Ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/) settings diff --git a/charts/pro-api/templates/asset-import-starter.yaml b/charts/pro-api/templates/asset-import-starter.yaml index 5a6da5737..cdabe75ca 100644 --- a/charts/pro-api/templates/asset-import-starter.yaml +++ b/charts/pro-api/templates/asset-import-starter.yaml @@ -43,6 +43,8 @@ spec: value: "{{ .Values.dgctlStorage.manifest }}" - name: S3Settings__Url value: {{ required "A valid .Values.dgctlStorage.host entry required" $.Values.dgctlStorage.host }} + - name: S3Settings__Secure + value: "{{ .Values.dgctlStorage.secure }}" - name: S3Settings__DgctlStorageBucket value: {{ required "A valid .Values.dgctlStorage.bucket entry required" $.Values.dgctlStorage.bucket }} - name: S3Settings__AssetDataBucket diff --git a/charts/pro-api/templates/asset-importer.yaml b/charts/pro-api/templates/asset-importer.yaml index f6d5579cc..5fcff74db 100644 --- a/charts/pro-api/templates/asset-importer.yaml +++ b/charts/pro-api/templates/asset-importer.yaml @@ -7,6 +7,7 @@ spec: concurrencyPolicy: Forbid schedule: "{{ .Values.assetImporter.schedule }}" successfulJobsHistoryLimit: {{ .Values.assetImporter.successfulJobsHistoryLimit }} + suspend: {{ .Values.assetImporter.suspended }} jobTemplate: spec: backoffLimit: {{ .Values.assetImporter.backoffLimit }} @@ -45,6 +46,8 @@ spec: value: "{{ .Values.dgctlStorage.manifest }}" - name: S3Settings__Url value: {{ required "A valid .Values.dgctlStorage.host entry required" $.Values.dgctlStorage.host }} + - name: S3Settings__Secure + value: "{{ .Values.dgctlStorage.secure }}" - name: S3Settings__DgctlStorageBucket value: {{ required "A valid .Values.dgctlStorage.bucket entry required" $.Values.dgctlStorage.bucket }} - name: S3Settings__AssetDataBucket @@ -102,6 +105,17 @@ spec: value: "{{ .Values.api.logging.targets }}" - name: Common__EsMetricsEnabled value: "{{ .Values.assetImporter.esMetricsEnabled }}" + - name: Digger__Address + value: "{{ .Values.digger.url}}" + - name: Digger__UserName + value: "{{ .Values.digger.userName}}" + {{ if .Values.digger.password }} + - name: Digger__Password + valueFrom: + secretKeyRef: + key: diggerPassword + name: {{ include "pro-api.name" . }}-secret + {{ end }} - name: Navi__Url value: {{ .Values.navi.url }} - name: Navi__Key diff --git a/charts/pro-api/templates/asset-preparer.yaml b/charts/pro-api/templates/asset-preparer.yaml index 4c55a7f77..8a7100af2 100644 --- a/charts/pro-api/templates/asset-preparer.yaml +++ b/charts/pro-api/templates/asset-preparer.yaml @@ -42,6 +42,8 @@ spec: value: "{{ .Values.assetPreparer.maxParallelJobs }}" - name: S3Settings__Url value: {{ required "A valid .Values.dgctlStorage.host entry required" $.Values.dgctlStorage.host }} + - name: S3Settings__Secure + value: "{{ .Values.dgctlStorage.secure }}" - name: S3Settings__AssetDataBucket value: {{ required "A valid .Values.s3.assetsDataBucket entry required" $.Values.s3.assetsDataBucket }} - name: S3Settings__UserAssetDataBucket @@ -86,11 +88,15 @@ spec: value: "{{ .Values.api.logging.format }}" - name: Common__Logging__Targets value: "{{ .Values.api.logging.targets }}" + - name: Digger__Address + value: "{{ .Values.digger.url}}" - name: Digger__UserName - value: "{{ .Values.api.diggerUserName}}" + value: "{{ .Values.digger.userName}}" + {{ if .Values.digger.password }} - name: Digger__Password valueFrom: secretKeyRef: key: diggerPassword name: {{ include "pro-api.name" . }}-secret + {{ end }} {{ end }} diff --git a/charts/pro-api/templates/deployment.yaml b/charts/pro-api/templates/deployment.yaml index 7594b5d67..4fb681c0a 100644 --- a/charts/pro-api/templates/deployment.yaml +++ b/charts/pro-api/templates/deployment.yaml @@ -168,6 +168,8 @@ spec: name: {{ include "pro-api.name" . }}-secret - name: S3Settings__Url value: {{ required "A valid .Values.dgctlStorage.host entry required" $.Values.dgctlStorage.host }} + - name: S3Settings__Secure + value: "{{ .Values.dgctlStorage.secure }}" - name: S3Settings__AssetDataBucket value: {{ required "A valid .Values.s3.assetsDataBucket entry required" $.Values.s3.assetsDataBucket }} - name: S3Settings__UserAssetDataBucket @@ -277,3 +279,7 @@ spec: value: "{{ .Values.api.rateLimiter.requestsLimit }}" - name: RateLimiter__WindowSizeInSeconds value: "{{ .Values.api.rateLimiter.windowSizeInSeconds }}" + - name: LocalCache__Enabled + value: "{{ .Values.api.localCache.enabled }}" + - name: LocalCache__TrackStatistics + value: "{{ .Values.api.localCache.trackStatistics }}" diff --git a/charts/pro-api/templates/permissions-api-deployment.yaml b/charts/pro-api/templates/permissions-api-deployment.yaml index 480f41814..e46cabdc9 100644 --- a/charts/pro-api/templates/permissions-api-deployment.yaml +++ b/charts/pro-api/templates/permissions-api-deployment.yaml @@ -181,5 +181,8 @@ spec: value: "{{ $.Values.kafka.permissionsTopic.name }}" - name: Kafka__PermissionsTopicSettings__ReaderGroupId value: "{{ $.Values.kafka.permissionsTopic.readerGroupId }}" - + - name: LocalCache__Enabled + value: "{{ .Values.permissionsApi.localCache.enabled }}" + - name: LocalCache__TrackStatistics + value: "{{ .Values.permissionsApi.localCache.trackStatistics }}" {{- end }} diff --git a/charts/pro-api/templates/secrets.yaml b/charts/pro-api/templates/secrets.yaml index 58f99ffca..a0c5d11cf 100644 --- a/charts/pro-api/templates/secrets.yaml +++ b/charts/pro-api/templates/secrets.yaml @@ -9,8 +9,8 @@ data: dbConnectionPwd: {{ required "Valid .Values.postgres.password required!" .Values.postgres.password | b64enc }} s3AccessKey: {{ required "Valid .Values.dgctlStorage.accessKey required!" .Values.dgctlStorage.accessKey | b64enc }} s3SecretKey: {{ required "Valid .Values.dgctlStorage.secretKey required!" .Values.dgctlStorage.secretKey | b64enc }} - {{ if .Values.api.diggerPassword }} - diggerPassword: {{ .Values.api.diggerPassword | b64enc }} + {{ if .Values.digger.password }} + diggerPassword: {{ .Values.digger.password | b64enc }} {{ end }} {{ if .Values.auth.permissionsApiKey }} permissionsApiKey: {{ required "Valid .Values.auth.permissionsApiKey required!" .Values.auth.permissionsApiKey | b64enc }} diff --git a/charts/pro-api/templates/user-asset-importer.yaml b/charts/pro-api/templates/user-asset-importer.yaml index d654e8b39..bd3a49da8 100755 --- a/charts/pro-api/templates/user-asset-importer.yaml +++ b/charts/pro-api/templates/user-asset-importer.yaml @@ -45,7 +45,9 @@ spec: - name: MAX_PARALLEL_JOBS value: "{{ .Values.assetImporter.maxParallelJobs }}" - name: S3Settings__Url - value: "{{ .Values.dgctlStorage.host }}" + value: {{ required "A valid .Values.dgctlStorage.host entry required" $.Values.dgctlStorage.host }} + - name: S3Settings__Secure + value: "{{ .Values.dgctlStorage.secure }}" - name: S3Settings__AssetDataBucket value: {{ required "A valid .Values.s3.assetsDataBucket entry required" $.Values.s3.assetsDataBucket }} - name: S3Settings__UserAssetDataBucket diff --git a/charts/pro-api/values.yaml b/charts/pro-api/values.yaml index 3d4454078..59dd0a824 100644 --- a/charts/pro-api/values.yaml +++ b/charts/pro-api/values.yaml @@ -41,6 +41,7 @@ revisionHistoryLimit: 3 # @section Deployment Artifacts Storage settings # @param dgctlStorage.host S3 endpoint. Format: `host:port`. **Required** +# @param dgctlStorage.secure Set to `true` if dgctlStorage.host must be accessed via https. **Required** # @param dgctlStorage.bucket S3 bucket name. **Required** # @param dgctlStorage.accessKey S3 access key for accessing the bucket. **Required** # @param dgctlStorage.secretKey S3 secret key for accessing the bucket. **Required** @@ -48,6 +49,7 @@ revisionHistoryLimit: 3 dgctlStorage: host: '' + secure: false bucket: '' accessKey: '' secretKey: '' @@ -113,14 +115,14 @@ vpa: image: repository: 2gis-on-premise/pro-api - tag: 1.1.60 + tag: 1.1.67 pullPolicy: IfNotPresent # @skip permissionsApiImage permissionsApiImage: repository: 2gis-on-premise/pro-permissions-api - tag: 1.1.60 + tag: 1.1.67 pullPolicy: IfNotPresent # @section 2GIS PRO Storage configuration @@ -148,20 +150,19 @@ s3: # @extra api.rateLimiter rate limiter settings # @param api.rateLimiter.requestsLimit max number of requests from one user during time window (0 means rate limiter is disabled) # @param api.rateLimiter.windowSizeInSeconds the size of time windows to count and limit incoming requests -# @skip api.diggerPassword -# @skip api.diggerUserName # @skip api.logEsQueries # @skip api.debug # @skip api.env # @skip api.token # @skip api.filterByZoneCodes # @skip api.esDataCentersCount +# @skip Local cache settings +# @skip api.localCache.enabled +# @skip api.localCache.trackStatistics api: serviceAccount: runner tempPath: /tmp - diggerPassword: '' - diggerUserName: '' allowAnyOrigin: false logEsQueries: false debug: false @@ -175,6 +176,9 @@ api: rateLimiter: requestsLimit: 0 windowSizeInSeconds: 1 + localCache: + enabled: true + trackStatistics: false # @section Auth configuration @@ -197,6 +201,13 @@ auth: turnOffCertValidation: false shareKeys: [] +# @skip digger + +digger: + url: '' + userName: '' + password: '' + # @section PostgreSQL settings # @param postgres.connectionString Connection string to the PostgreSQL database. Format: `Server=SERVER_URL;Database=DB_NAME;UID=USER_NAME;` @@ -349,10 +360,16 @@ permissionsPodSettings: # @section 2GIS PRO Permissions API configuration # @skip permissionsApi.host # @param permissionsApi.enabled If permissionsApi is enabled for the service. +# @skip Local cache settings +# @skip permissionsApi.localCache.enabled +# @skip permissionsApi.localCache.trackStatistics permissionsApi: host: '' enabled: false + localCache: + enabled: true + trackStatistics: false # @section Import job settings @@ -369,10 +386,11 @@ permissionsApi: # @param assetImporter.externalLinksProxyUrl URL to proxy http links from assets data (including query parameters, if any, i.e. 'https://someserver.com/proxy?url=' ) # @skip assetImporter.files # @skip assetImporter.esMetricsEnabled +# @skip assetImporter.suspended assetImporter: repository: 2gis-on-premise/pro-importer - tag: 1.1.60 + tag: 1.1.67 schedule: 0 18 * * * backoffLimit: 2 successfulJobsHistoryLimit: 3 @@ -383,9 +401,10 @@ assetImporter: memory: 768M limits: cpu: 1000m - memory: 2560M + memory: 8Gi maxParallelJobs: 1 enabled: true + suspended: false startOnDeploy: true files: '' imageProxyUrl: '' @@ -400,7 +419,7 @@ userAssetImporter: assetPreparer: repository: 2gis-on-premise/pro-importer - tag: 1.1.60 + tag: 1.1.67 schedule: 0 16 * * 6 backoffLimit: 2 successfulJobsHistoryLimit: 1 diff --git a/charts/pro-ui/Chart.yaml b/charts/pro-ui/Chart.yaml index 53274b9ad..a9d544687 100644 --- a/charts/pro-ui/Chart.yaml +++ b/charts/pro-ui/Chart.yaml @@ -3,9 +3,8 @@ name: pro-ui type: application description: A Helm chart for Kubernetes to deploy 2GIS Pro UI service -version: 1.15.0 -appVersion: 1.3.0 - +version: 1.16.0 +appVersion: 1.4.0 maintainers: - name: 2gis diff --git a/charts/pro-ui/README.md b/charts/pro-ui/README.md index 77b6ae428..2206c1a3c 100644 --- a/charts/pro-ui/README.md +++ b/charts/pro-ui/README.md @@ -32,7 +32,7 @@ Use this Helm chart to deploy 2GIS Pro UI service, which is a part of 2GIS's [On | Name | Description | Value | | --------------------- | ------------------------------ | ------------------------ | | `ui.image.repository` | Repository | `2gis-on-premise/pro-ui` | -| `ui.image.tag` | Tag | `1.3.0` | +| `ui.image.tag` | Tag | `1.4.0` | | `imagePullPolicy` | Pull Policy | `IfNotPresent` | | `imagePullSecrets` | Kubernetes image pull secrets. | `[]` | diff --git a/charts/pro-ui/values.yaml b/charts/pro-ui/values.yaml index 544296e46..d79b54f80 100644 --- a/charts/pro-ui/values.yaml +++ b/charts/pro-ui/values.yaml @@ -37,7 +37,7 @@ ui: image: repository: 2gis-on-premise/pro-ui - tag: 1.3.0 + tag: 1.4.0 # @section UI service settings diff --git a/charts/search-api/Chart.yaml b/charts/search-api/Chart.yaml index 572b7396a..6e2cc0d45 100644 --- a/charts/search-api/Chart.yaml +++ b/charts/search-api/Chart.yaml @@ -4,8 +4,8 @@ description: Search engine for catalog type: application -version: 1.15.0 -appVersion: 7.65.0 +version: 1.16.0 +appVersion: 7.68.0 maintainers: - name: 2gis diff --git a/charts/search-api/README.md b/charts/search-api/README.md index 80e7b34b4..8f92b83f9 100644 --- a/charts/search-api/README.md +++ b/charts/search-api/README.md @@ -55,7 +55,7 @@ See the [documentation](https://docs.2gis.com/en/on-premise/search) to learn abo | Name | Description | Value | | ---------------------- | --------------------------------------------------------------------------------------------- | ---------------------------- | | `api.image.repository` | Repository | `2gis-on-premise/search-api` | -| `api.image.tag` | Tag | `7.65.0` | +| `api.image.tag` | Tag | `7.68.0` | | `api.image.pullPolicy` | Image [pull policy](https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy) | `IfNotPresent` | ### API settings diff --git a/charts/search-api/values.yaml b/charts/search-api/values.yaml index 9484cbd51..924cc1819 100644 --- a/charts/search-api/values.yaml +++ b/charts/search-api/values.yaml @@ -54,7 +54,7 @@ api: image: repository: 2gis-on-premise/search-api - tag: 7.65.0 + tag: 7.68.0 pullPolicy: IfNotPresent diff --git a/charts/stat-receiver/Chart.yaml b/charts/stat-receiver/Chart.yaml index f65fee5a9..bce1fddca 100644 --- a/charts/stat-receiver/Chart.yaml +++ b/charts/stat-receiver/Chart.yaml @@ -3,7 +3,7 @@ name: stat-receiver type: application description: A Helm chart for Kubernetes to deploy Stat Receiver -version: 1.15.0 +version: 1.16.0 appVersion: 1.11.1 maintainers: diff --git a/charts/tiles-api/Chart.yaml b/charts/tiles-api/Chart.yaml index ac5e6215e..071cb50f9 100644 --- a/charts/tiles-api/Chart.yaml +++ b/charts/tiles-api/Chart.yaml @@ -4,7 +4,7 @@ description: Tiles API for getting cartographic data type: application -version: 1.15.0 +version: 1.16.0 appVersion: 4.51.1 maintainers: diff --git a/charts/traffic-proxy/Chart.yaml b/charts/traffic-proxy/Chart.yaml index 738b42497..c8bca5ccc 100644 --- a/charts/traffic-proxy/Chart.yaml +++ b/charts/traffic-proxy/Chart.yaml @@ -4,7 +4,7 @@ description: A Helm chart for Kubernetes to deploy Proxy for traffic jams type: application -version: 1.15.0 +version: 1.16.0 appVersion: 1.21.6 maintainers: diff --git a/charts/twins-api/Chart.yaml b/charts/twins-api/Chart.yaml index 33b9e24c0..095239a5f 100644 --- a/charts/twins-api/Chart.yaml +++ b/charts/twins-api/Chart.yaml @@ -3,7 +3,7 @@ name: twins-api type: application description: A Helm chart for Kubernetes to deploy API Twins service -version: 1.15.0 +version: 1.16.0 appVersion: 1.6.0 maintainers: diff --git a/image_versions.txt b/image_versions.txt index 5635dc8c6..d580d200a 100644 --- a/image_versions.txt +++ b/image_versions.txt @@ -1,10 +1,10 @@ catalog-api catalog-api:3.600.0 - catalog-importer:1.0.10 + catalog-importer:1.1.0 citylens - citylens-api:1.1.2 - citylens-database:1.1.2 - citylens-web:1.1.2 + citylens-api:1.2.6 + citylens-database:1.2.0 + citylens-web:1.2.6 dgtt dgtt:0.2.27-b188673e09 floors-api @@ -20,13 +20,13 @@ keycloak keycloak-themes:0.0.8 keycloak:21.1.1-debian-11-r4 keys - keys-backend:1.69.0 + keys-backend:1.71.0 keys-redis:6.2.6-alpine3.15 keys-ui:0.6.0 license license:2.1.2 mapgl-js-api - mapgl:1.40.0 + mapgl:1.42.0 navi-async-grpc-proxy async-grpc-proxy:1.0.0 navi-async-matrix @@ -48,14 +48,14 @@ navi-splitter platform platform-ui:0.5.5 pro-api - pro-api:1.1.60 - pro-importer:1.1.60 - pro-importer:1.1.60 - pro-permissions-api:1.1.60 + pro-api:1.1.67 + pro-importer:1.1.67 + pro-importer:1.1.67 + pro-permissions-api:1.1.67 pro-ui - pro-ui:1.3.0 + pro-ui:1.4.0 search-api - search-api:7.65.0 + search-api:7.68.0 search-nginx:1.21.6 stat-receiver stat-receiver-api:1.11.1