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
topicMappingStrategy
toadvanced
by 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
restoreFromOffset
filtering option -
Core: Add
restoreFromUnixTimestamp
filtering 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-format
option with json and text options -
Operator: Add the
spec.config.maxProducers
setting 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.apiUrl
option -
Helm: Add event gateway service to
kannika-api
chart -
Helm: Add
console.config.security.oidc
options -
Helm: Add
operator.config.eventGateway
options -
Helm: Add
api.eventGateway
options -
Helm: Add
api.storage.hostPath
option to persist API data to a host path -
Helm: Add
api.storage.persistentVolume
option to persist API data to a Persistent Volume
Refactor
- Operator: Replace
io.kannika/resource-id
labels withio.kannika/backup
andio.kannika/restore
labels
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
same
tool -
Update schema mapping docs to include the behaviour if a mapping is missing
-
Document metrics
-
Document Producer Pool and the
maxProducers
setting
Miscellaneous Tasks
-
General: Make restoreUntilOffset exclusive
-
Operator: Update probes to use new
/metrics
path -
Operator: Implement custom backoff strategy that logs reconnection attempts
-
Core: Make
restoreUntilUnixTimestamp
exclusive -
Core: Make
restoreUntilOffset
exclusive -
Console: Log initialization errors
-
Update dependencies
-
Upgrade images to
alpine:3.20
-
Upgrade to Rust 1.80
-
Bump version to 0.8.0