0.8.0
This page documents the changes in Kannika Armory version 0.8.0.
Changelog 0.8.0
Features
-
General: Add support for OIDC authentication
-
General: Add data retention policies
-
General: Add option to restore from a date time
-
General: Add option to restore partitions from a certain offset
-
General: Support Azure OAuth2
-
API: Fetch metrics from backup pods
-
API: Fetch metrics from restore pods
-
API: Log user ID for each command
-
API: Log user ID for each query
-
API: Share workers to retrieve metrics
-
API: Add event gateway service on port 8082
-
API: Allow configuring additional properties on Backups and Restores
-
API: Handle Kubernetes timeout exceptions
-
API: Don’t allow MiB, GiB etc. for byte quantities
-
API: Return a Location header when creating a restore via the REST API
-
API: Set
topicMappingStrategytoadvancedby default -
Console: Allow configuring the API URL
-
Console: Refresh access token
-
Console: Check for user inactivity
-
Console: Verify basic auth on login screen
-
Console: Make topics optional when configuring a restore
-
Console: Show username from access token
-
Console: Split backup details into tabs
-
Console: Update backup details page
-
Console: Split restore details page into tabs
-
Console: Configure data retention policy in backup wizard
-
Console: Make storage capacity field consistent with partition rollover size trigger field
-
Console: Configure max producers for a restore
-
Core: Implement partition expiration based on retention policy
-
Core: Periodically check for and remove expired partitions
-
Core: Add
restoreFromOffsetfiltering option -
Core: Add
restoreFromUnixTimestampfiltering option -
Core: Implement producer pool
-
Core: Backup & Restore return error if one topic does not exist
-
Operator: Add option to configure metrics push endpoints
-
Operator: Recreate deployment on conflict
-
Operator: Track backup and restore pods using a pod informer
-
Operator: Wait for backup pod to be gone before creating a new one
-
Operator: Add
--logging-formatoption with json and text options -
Operator: Add the
spec.config.maxProducerssetting to a Restore -
Helm: Give the API access to list and watch pods in Kubernetes
-
Helm: Give the operator access to list and watch pods in Kubernetes
-
Helm: Add
console.config.apiUrloption -
Helm: Add event gateway service to
kannika-apichart -
Helm: Add
console.config.security.oidcoptions -
Helm: Add
operator.config.eventGatewayoptions -
Helm: Add
api.eventGatewayoptions -
Helm: Add
api.storage.hostPathoption to persist API data to a host path -
Helm: Add
api.storage.persistentVolumeoption to persist API data to a Persistent Volume
Refactor
- Operator: Replace
io.kannika/resource-idlabels withio.kannika/backupandio.kannika/restorelabels
Performance
- Core: Improve restoring performance for small messages using a custom delivery handler
Bug Fixes
-
API: Copy sink credentials when creating a Restore via the REST API
-
API: Retain unsupported fields config
-
Console: Fix invalid config shown instead of draft when restore has no topics
Documentation
-
Switch between different versions of the application
-
Document data retention policies
-
Update schema mapping docs to include the
sametool -
Update schema mapping docs to include the behaviour if a mapping is missing
-
Document metrics
-
Document Producer Pool and the
maxProducerssetting
Miscellaneous Tasks
-
General: Make restoreUntilOffset exclusive
-
Operator: Update probes to use new
/metricspath -
Operator: Implement custom backoff strategy that logs reconnection attempts
-
Core: Make
restoreUntilUnixTimestampexclusive -
Core: Make
restoreUntilOffsetexclusive -
Console: Log initialization errors
-
Update dependencies
-
Upgrade images to
alpine:3.20 -
Upgrade to Rust 1.80
-
Bump version to 0.8.0