In the new versions, releases are organized into groups. Version details and breaking changes are now maintained within the files specific to each group:
- Renamed
attractor.rtrtoattractor.restrictions
- Renamed
naviback.rtrtonaviback.restrictions .Values.naviback.grpcPortalways enabled
- Added default
emptyDirto job importer
- If you are using nginx.ingress.kubernetes.io/cors-allow-headers, you need to add the "pragma" header
- You need to upgrade MapGL to version 1.61.0
- You need to update the data to use new styles
- Added new service:
citylens-routes-realtime-data-api - Added new required parameters:
.Values.routes.realtimeDataApi.postgres.database.Values.routes.realtimeData.url
.Values.routes.features.proxyNaviKeyEnabledwas removed.Values.routes.pro.mainTerritoryIdwas removed
kafka.statusTopicandkafka.archiveTopicwere no longer used- new required params
kafka.mergerStatusTopicandkafka.mergerTaskTopic rbacwas removed
- env.SSO_PROXY_ENABLED was removed
- elastic.host and elastic.port were removed, elastic.nodes was added instead.
- Minimum supported Postgres version is now 15
- Labels in tasks/deployment-worker.yaml have changed. You need to remove the tasks-worker and install it again.
- Single
proxy.access.tokenhas been split into two separate tokens:proxy.access.raster.token- for raster data authenticationproxy.access.vector.token- for vector data authentication
- env.PLATFORM_MANAGER_API_URL renamed to env.SSO_API_URL
- env.PLATFORM_MANAGER_CLIENT_ID renamed to env.SSO_CLIENT_ID
- env.PLATFORM_MANAGER_CLIENT_SECRET renamed to env.SSO_CLIENT_SECRET
- env.PLATFORM_MANAGER_SCOPE renamed to env.SSO_SCOPE
- env.MAPGL_FLOORSSERVER was removed
- Chart floors-api was removed
- Now attraction works only through an external attractor.
attractTopicRules:
- topic: attract_car_task_topic
default: true
type: car
- topic: attract_truck_task_topic
default: true
type: truck- Archiver always enabled. Required
serviceAccountandrbac.
- Updated a config verification code. If the config is not valid your application will be stopped.
- tasksApi.useForLayerDataPreparation is true by default
- added tasks settings, tasks.settings.enabled is true by default
- added required postgres settings for tasks and permissions: host, port, name, username, password
- elastic settings are set to standard, host must contain only the host, secure and port are mandatory, username and password can be set if needed, credentials is removed
- The in-chart Redis deployment has been removed. You must configure an external Redis instance for the application to function before upgrading. If you were using the in-chart Redis instance for additional tasks, make sure to migrate those workloads to a different Redis instance before proceeding with the upgrade.
- Added
ui.playgroundsfor enable playgrounds on the playground page
- You need to upgrade MapGL to version 1.54.1
- Updated ui.auth.oAuthProvider. Removed "ugc" value. Now possible values: "keycloak" | "openid". "keycloak" value is deprecated.
- api.settings.allowAnyOrigin was removed, api.settings.corsOrigins was added instead
- assetImporter.enabled was removed, assetImporter is now always mandatory
-
Existing DBs need task status type updated, in case public schema used:
ALTER TYPE public."statusvalues" ADD VALUE 'ATTRACT_PUSHED'; ALTER TYPE public."statusvalues" ADD VALUE 'ATTRACT_READY'; ALTER TYPE public."statusvalues" ADD VALUE 'ATTRACT_PROCESSED'; ALTER TYPE public."statusvalues" ADD VALUE 'ONE_TO_MANY_PUSHED'; ALTER TYPE public."statusvalues" ADD VALUE 'ONE_TO_MANY_READY'; ALTER TYPE public."statusvalues" ADD VALUE 'MERGER_PUSHED'; ALTER TYPE public."statusvalues" ADD VALUE 'MERGER_IN_PROGRESS';
- Before installing new version of citylens it is required to prepare database manually:
update tracks set localization_status = 2006;This is required as in on-premise environments this column was newer user before, and may contain unexpected values. - Values section
.Values.reportersreplaced with.Values.worker.reporterPro.enabledfield. - Worker
.Values.worker.detectionsLocalizerrequires- Asset "Objects" in Pro and topic
.Values.kafka.topics.proObjectsto be tied to that asset - topic
.Values.kafka.topics.objectsLifecyclerequired
- Asset "Objects" in Pro and topic
- Added new services:
citylens-routes-apiandcitylens-worker-service - Added new required parameters:
.Values.routes.postgres.database.Values.routes.hangfire.postgres.database.Values.routes.navi.url
- Before upgrading to the next version, make sure to update to the current version (1.34.0).
- Ensure that
keysservice is upgraded prior to upgrading any of thenaviservices. - A temporary flag,
--migrate-data, has been added for this release. This flag triggers the data migration required for the Routing API data in the service.
castle.restrictions.hostrenamed tocastle.restrictions.urland empty by defaultpersistentVolume.storageClassis now empty by default
- permissions.settings.enabled was removed, permissions api is now always mandatory
- postgres.connectionString, postgres.connectionStringReadonly, postgres.password were changed to postgres.api.rw / postgres.api.ro settings
- proxy.access.bss.enabled renamed to proxy.access.stat.enabled
- proxy.access.bss.url renamed to proxy.access.stat.url
- api.pod.appName renamed api.appName
- api.settings.enableUserAssetsImporter renamed to api.settings.backgroundJobs.enableUserAssetsImporter
- api.settings.enableAssetsStreaming renamed to api.settings.backgroundJobs.enableAssetsStreaming
- api.settings.auth.permissionsApiKey renamed permissions.settings.auth.apiKey
- MAPGL_ICONSPATH renamed to MAPGL_ICONS_URL
- MAPGL_MODELSPATH renamed to MAPGL_MODELS_URL
- appName renamed to api.appName
- image renamed to api.image
- ingress renamed to api.ingress
- pod renamed to api.pod
- vpa renamed to api.vpa
- service renamed to api.service
- licenseKey renamed to api.settings.licenseKey
- api.tempPath renamed to api.settings.tempPath
- api.allowAnyOrigin renamed to api.settings.allowAnyOrigin
- api.logEsQueries renamed to api.settings.logEsQueries
- api.debug renamed to api.settings.debug
- api.env renamed to api.settings.env
- api.filterByZoneCodes renamed to api.settings.filterByZoneCodes
- api.esDataCentersCount renamed to api.settings.esDataCentersCount
- api.rateLimiter renamed to api.settings.rateLimiter
- api.localCache renamed to api.settings.localCache
- api.openApi renamed to api.settings.openApi
- auth renamed to api.settings.auth
- permissionsApiImage renamed to permissions.image
- permissionsApiIngress renamed to permissions.ingress
- permissionsPodSettings renamed to permissions.pod
- permissionApiService renamed to permissions.service
- add permissions.settings block
- add assetImporter.appName
- assetImporter.maxParallelJobs renamed to assetImporter.settings.maxParallelJobs
- assetImporter.files renamed to assetImporter.settings.files
- assetImporter.imageProxyUrl renamed to assetImporter.settings.imageProxyUrl
- assetImporter.externalLinksProxyUrl renamed to assetImporter.settings.externalLinksProxyUrl
- assetImporter.externalLinksAllowedHosts renamed to assetImporter.settings.externalLinksAllowedHosts
- assetImporter.esMetricsEnabled renamed to assetImporter.settings.esMetricsEnabled
- assetPreparer.maxParallelJobs renamed to assetPreparer.settings.maxParallelJobs
s3.publicNetlocnow MUST start withhttp://orhttps://scheme
- Backward compatibility with
licenseversions before2.0.0(on-premise version1.8.0) is broken. - License v2 over HTTPS is required.
- ui.strategy renamed to strategy
- ui.image renamed to image
- ui.replicas renamed to replicas
- ui.revisionHistoryLimit renamed to revisionHistoryLimit
- ui.terminationGracePeriodSeconds renamed to terminationGracePeriodSeconds
- ui.nodeSelector renamed to nodeSelector
- ui.affinity renamed to affinity
- ui.tolerations renamed to tolerations
- ui.podAnnotations renamed to podAnnotations
- ui.podLabels renamed to podLabels
- ui.annotations renamed to annotations
- ui.labels renamed to labels
- ui.readinessProbe renamed to readinessProbe
- ui.livenessProbe renamed to livenessProbe
- ui.containerPort renamed to containerPort
- ui.service renamed to service
- ui.ingress renamed to ingress
- ui.resources renamed to resources
- ui.hpa renamed to hpa
- Added new worker
worker.dashboardBatchEvents - Added new kafka topics
kafka.topics.tracksLifecycle- tracks lifecycle eventskafka.topics.proDrivers- synchonization drivers tracks with Pro
- Added new required parameters: licenseKey, license.url
- Removed api.licensePartner
- Parameter
pro.urlreplaced withpro.baseUrlandpro.framesAssetId(ex:pro.url: "http://pro-api:8080/my_asset/filters"->pro.baseUrl: "http://pro-api:8080",pro.framesAssetId: "my_asset")
kafka.predictorsis removed. Topicskafka.predictors[0].topic(camcomin values example),kafka.predictors[1].topic(manualin values example) replaced with single topickafka.topics.predictions.
- Added new required parameters: kafka.eventsTopic.name, kafka.eventsTopic.readerGroupId
api.api_keyrenamed toapi.keyapi.is_init_dbrenamed toapi.isInitDbdbrenamed topostgrescron.max_attributes_fetcher_rpsrenamed tocron.maxAttributesFetcherRpsapi.attractor_url,cron.edges_url_templateandcron.edge_attributes_url_templateare deprecated. SetnaviBackHostandnaviCastleHostwithapi.attractorUri,cron.edgeAttributesUriTemplateandcron.maxAttributesFetcherRpsinstead- New values required
naviBackHost,naviCastleHost
worker.reporterProTracks.replicasreplaced withworker.reporterProTracks.enabled. One replica will be deployed if enabled.
router.keyManagementService.hostrenamed torouter.keyManagementService.urlrouter.keyManagementServicerenamed tokeysrouter.castleHostrenamed torouter.castleUrl
- Backward compatibility for citylens 1.6.0 is broken:
- Parameter
api.auth.camcomTokenis replaced withapi.auth.predictorsTokens.camcom - License v2 service now required:
api.licensing.url - Parameter
map.tileserverUrlnow required - Parameters group
worker.reporterProTracksnow required - Database structure changed
- Parameter
- Backward compatibility for citylens 1.3.0 is broken. Parameters
api.auth.publicKeyandapi.auth.algoritmare replaced withapi.auth.authServerUrl,api.auth.realm,api.auth.verifySsl.
-
Backward compatibility for license v1 is broken. If you have a version lower than
1.9.1, you need to upgrade first to version1.16.0to get license v2 without downtime - after that you can upgrade to version1.17.0. -
Removed
fspersistence type, now onlys3is available.persistence.typeis no more provided, oldpersistence.s3settings now should be located underpersistence.--- # old persistence: type: s3 s3: ... --- # new persistence: ...
-
added integration with license service (v2), mandatory for recent navi-back versions
license: url: https://license
-
renamed parameter naviback.ecaHost to naviback.ecaUrl
-
livenessProbeDelayandreadinessProbeDelayare ignored in favor of startup probes
- 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
router.keyManagementService.apis.*tokens renamed,-apisuffix added
-
Added new required dgctlStorage parameters
dgctlStorage: host: '' bucket: keys accessKey: '' secretKey: '' manifest: manifest.json
- Backward compatibility with
licenseversions before2.0.0(on-premise version1.8.0) is broken. - License v2 over HTTPS is required.
- Update migrations, when updating the service you need to update the data
- Add required topic
assetDataTopic
-
Remove
hpa.scaleUpStabilizationWindowSecondsand.hpa.scaleDownStabilizationWindowSeconds -
Add
hpa.behaviorhpa: behavior: scaleUp: stabilizationWindowSeconds: 500 scaleDown: stabilizationWindowSeconds: 600
- Added new required setting api.licensePartner. Now pro-api only works with a valid license file, which can be requested from your sales manager. The license file must be placed in the s3.assetsDataBucket.
-
Added
license.type -
Added
persistencepersistence: type: s3 fs: storage: 10Mi storageClassName: '' s3: host: '' bucket: '' root: '' accessKey: '' secretKey: ''
- Added new setting s3.assetsDataBucket. dgclStorage.bucket and buckets for the service app are completely separate now.
- Rename
external_protoandexternal_hostnametourl - Rename
spcore.debug_modetospcore.debug - Rename
spcore.reset_clustertospcore.resetCluster - Rename
spcore.update_dbtospcore.updateDb - Rename
spcore.cloud_porttospcore.nodePort - Rename
spcore.http_porttospcore.appPort - Rename
spcore.sync_parameterstospcore.syncParameters - Rename
spcore.cors.allow_everyonetospcore.cors.allowEveryone - Rename
spcore.s3.access_keytospcore.s3.accessKey - Rename
spcore.s3.secret_keytospcore.s3.secretKey - Rename
spcore.s3.session_buckettospcore.s3.sessionBucket - Rename
spcore.pgtospcore.postgres - Rename
spcore.pg.usertospcore.postgres.username - Rename
spcore.pg.dbnametospcore.postgres.name - Rename
spcore.jwt.token_keytospcore.jwt.tokenKey - Rename
spcore.jwt.token_admintospcore.jwt.tokenAdmin - Rename
portal.max_body_sizetoportal.maxBodySize - Rename
portal.gzip_enabledtoportal.gzip.enabled
- Remove
kafka.topics.prediction - Remove
kafka.topics.framesGroupId - Remove
kafka.topics.tracksGroupId - Remove
kafka.topics.predictionGroupId - Remove
kafka.topics.camcomSenderGroupId - Add
kafka.predictors
kafka:
predictors:
- name: ''
topic: ''
- Add
kafka.consumerGroups.prefix
- Rename
keys.tokens
to
keys.token
- For zero downtime, update navi-router first, then update keys
- Rename
serviceName: tiles-api-webgl
type: web
to
types:
- kind: web
- Rename
serviceName: tiles-api-raster
type: raster
to
types:
- kind: raster
- Rename
api_keytoapi.api_key
- Rename
search.hosttosearch.url - Rename
keys.hosttokeys.url
- Remove
admin.api
- Rename
proxy.access.hosttoproxy.access.url
- Renamed
keys.hosttokeys.url
- Renamed
api.hosttoapi.url
- Renamed
castle.castle_data_pathtocastle.castleDataPath - Renamed
castle.restrictions_api_urltocastle.restrictions.host - Renamed
castle.restrictions_api_keytocastle.restrictions.key
- Renamed
router.app_porttorouter.appPort - Renamed
router.app_castle_hosttorouter.castleHost - Renamed
router.additional_sectionstorouter.additionalSections
- Renamed
s3.urltos3.host - Renamed
s3.keyIdtos3.accessKey - Renamed
s3.keytos3.secretKey - Renamed
naviback.app_porttonaviback.appPort - Renamed
naviback.handlers_numbertonaviback.handlersNumber - Renamed
naviback.max_process_timetonaviback.maxProcessTime - Renamed
naviback.response_timelimittonaviback.responseTimelimit - Renamed
naviback.request_timeouttonaviback.requestTimeout - Renamed
naviback.app_castle_hosttonaviback.castleHost - Renamed
naviback.forecast_hosttonaviback.forecastHost - Renamed
naviback.eca_hosttonaviback.ecaHost - Renamed
naviback.additional_sectionstonaviback.additionalSections - Renamed
naviback.dump_querytonaviback.dump.query - Renamed
naviback.dump_resulttonaviback.dump.result - Renamed
naviback.dump_answertonaviback.dump.answer - Renamed
naviback.dm_sources_limittonaviback.dmSourcesLimit - Renamed
naviback.dm_targets_limittonaviback.dmTargetsLimit - Renamed
naviback.termination_grace_period_secondstonaviback.terminationGracePeriodSeconds - Renamed
naviback.simple_network_bicycletonaviback.simpleNetwork.bicycle - Renamed
naviback.simple_network_cartonaviback.simpleNetwork.car - Renamed
naviback.simple_network_emergencytonaviback.simpleNetwork.emergency - Renamed
naviback.simple_network_pedestriantonaviback.simpleNetwork.pedestrian - Renamed
naviback.simple_network_taxitonaviback.simpleNetwork.taxi - Renamed
naviback.simple_network_trucktonaviback.simpleNetwork.truck - Renamed
naviback.attractor_bicycletonaviback.attractor.bicycle - Renamed
naviback.attractor_cartonaviback.attractor.car - Renamed
naviback.attractor_pedestriantonaviback.attractor.pedestrian - Renamed
naviback.attractor_taxitonaviback.attractor.taxi - Renamed
naviback.reduce_edges_optimization_flagtonaviback.reduceEdgesOptimizationFlag
- Renamed
s3.urltos3.host - Renamed
s3.keyIdtos3.accessKey - Renamed
s3.keytos3.secretKey - Renamed
keys.endpointtokeys.host - Renamed
keys.dm_keytokeys.token
- Rename
dbtopostgres - Rename
admin.apiUrltoadmin.api - Rename
admin.appHosttoadmin.host
- Rename
redeploy_labeltoredeployLabel - Rename
api.data_dirtoapi.dataDir - Rename
api.fcgi_porttoapi.fcgiPort - Rename
nginx.http_porttonginx.httpPort
- Rename
dgctlStorage.endpointtodgctlStorage.host - Rename
keys.endpointtokeys.host - Rename
api.dbtoapi.postgres - Rename
importer.dbtoimporter.postgres - Rename
search.urltosearch.host - Rename
keys.serviceKeystokeys.tokens
- Resources limits are not set by default.
- Mandatory dependency on API Keys service with a valid API key required.
- Default values optimized for processing async-matrix.
- Rename value db to api.db
- Rename
podDisruptionBudgettopdb - For the HPA section, switched from
autoscaling/v1toautoscaling/v2
- For the HPA section, switched from
autoscaling/v2beta2toautoscaling/v2
- REMOVED
.Values.spcore.s3.preview_bucket. Move its contents to.Values.spcore.s3.bucket - ADDED
.Values.spcore.s3.session_bucket. Create it before updating
- Rename
podDisruptionBudgettopdb - For the HPA section, switched from
autoscaling/v1toautoscaling/v2
- Rename
podDisruptionBudgettopdb - For the HPA section, switched from
autoscaling/v1toautoscaling/v2
- Rename
autoscalingtohpa - Rename
autoscaling.scaleUpWindowSecondstohpa.scaleUpStabilizationWindowSeconds - Rename
autoscaling.scaleDownWindowsSecondstohpa.scaleDownStabilizationWindowSeconds - Rename
podDisruptionBudgettopdb - Rename
podDisruptionBudget.createtopdb.enabled
- Remove the
autoscalingsection
- Rename
autoscalingtohpa - Rename
pdb.createtopdb.enabled - For the HPA section, switched from
autoscaling/v2beta2toautoscaling/v2
- Rename
podDisruptionBudgettopdb - For the HPA section, switched from
autoscaling/v1toautoscaling/v2
- Rename
autoscalingtohpa - Rename
podDisruptionBudgettopdb - For the HPA section, switched from
autoscaling/v2beta2toautoscaling/v2
- Rename
podDisruptionBudgettopdb - For the HPA section, switched from
autoscaling/v1toautoscaling/v2
- For the HPA section, switched from
autoscaling/v1toautoscaling/v2
- Rename
podDisruptionBudgettopdb
.Values.cassandra.environmentis required
- change value
api.apiUrlfrom 'http://servicename/admin/v1' to 'http://servicename'