Keptn 0.15.0
Release Notes 0.15.0
Keptn 0.15.0 improves the upgrade capabilities of Keptn to achieve zero-downtime upgrades and enhances the trigger a sequence functionality in the Bridge.
Key announcements:
🎉 Improved upgrade capabilities : Keptn introduces the cp-connector
library, which will replace the Distributor in all Keptn core services to ensure reliable event distribution. Besides, upgrade strategies of core components were adjusted.
⭐ Git repository provisioning : Since Keptn will require an upstream in future versions, a new Git Provisioning API is introduced. This provides an extension point to automatically provision Git repositories on demand when creating new projects. For further information, please refer to the documentation .
💨 Improved sequence trigger: Community feedback on triggering a sequence via Bridge has been incorporated.
🔒 Deny list for Webhooks : Keptn administrators can provide a deny list for Webhook URLs via a ConfigMap
, please check out the documentation .
✨ SLI provider support : Finally, the Keptn CLI supports Datadog as a provider of Service Level Indicators (SLIs).
Keptn Enhancement Proposals
This release focuses on the KEP: KEP 48 .
Keptn Specification
Implemented Keptn spec version: 0.2.4
⚠ BREAKING CHANGES
cli: Removed send event new-artifact
command
cli: Removed --tag
option from trigger delivery command
Update go-utils to a version without GitCommit in the finished events
Features
Add datadog
flag to keptn configure monitoring
(#7285 ) (bfcb352 )
bridge: Configure Git upstream via SSH/HTTPS (#7330 ) (0aaeded )
bridge: Consider real waiting state for sequences (#7399 ) (f8a5bf0 )
bridge: Create styled loading indicator component (3c91f7d ), closes #5568
bridge: Custom sequence depends on selected stage (#7463 ) (577b8f1 )
bridge: Format trigger sequence date with YYYY-MM-DD HH:mm:ss
(#7522 ) (096c7a1 )
bridge: OAUTH error handling polished (#7397 ) (0b89a37 )
bridge: Open project in new tab (#7629 ) (ba102d5 )
bridge: Show service and time stamp on sequence details page (#7283 ) (d03ab0c )
bridge: Stop event propagation when clicking on external link (#7632 ) (e93ba8b )
bridge: Unify loading indicators (#5568 ) (#7527 ) (b90ac83 )
Configure terminationGracePeriod, preStop hooks and upgrade strategy for core deployments (#7466 ) (44dbbe1 )
cp-connector: Added FixedSubscriptionSource
(#7528 ) (1bfaa27 )
cp-connector: Forward subscription id to event receiver (#7655 ) (b88db17 )
Initial implementation of cp-connector
library (#7418 ) (367e859 )
installer: Add option to define nodeSelector globally or per service (#7336 ) (8b257fa )
installer: Create separate helm chart for commonly used functionality (#7568 ) (8c93343 )
Introducing ZeroDowntime tests (#7479 ) (71d2c94 )
secret-service: Provide HTTP 400 when scope is not found (#7325 ) (8cf10b6 )
shipyard-controller: Introduce automatic provisioning of gitRemoteURI (#7276 ) (59778e0 )
shipyard-controller: Stop pulling messages after receiving sigterm (#7464 ) (f04874a )
shipyard-controller: Store sequence executions in new format without potential dots (.) in property names (#7605 ) (1bc93f3 )
webhook-service: Implement v1beta1
webhook config version (#7329 ) (56c082f )
webhook-service: Introduce keptn-webhook-config
ConfigMap with denyList (#7548 ) (b392dc0 )
Bug Fixes
Better error message for jmeter-service (#7377 ) (f689877 )
Resource-service clean-up (#7427 ) (0e75970 )
Add support for ingress class name (#7324 ) (2fe45a8 )
Added default user string (#7430 ) (3b8f1ca )
Added missing UpdateProject parameters (#7362 ) (ae5b81c )
Added validation of uniform subscriptions (#7366 ) (c9670c7 )
api: Allow to enable/disable rate limit (#7534 ) (b36816c )
api: Metadata model update (#7349 ) (f93c920 )
bridge: Copy to clipboard button rendering (#7571 ) (f2f236f )
bridge: Do not send a start date for evaluation if none is given by the user (43f053c )
bridge: Fix update of git upstream without a user (#7519 ) (4a05795 )
bridge: Fixed incorrect selected stage in sequence timeline (#7394 ) (558e491 )
bridge: Pretty-print request errors (#7652 ) (5b395b9 )
bridge: Render html in notifications (#7523 ) (5ae2853 )
bridge: Show remediation sequence in default color while running (#7300 ) (6cf6f6b )
bridge: Subscription filter now correctly updates on delete/create service (#7480 ) (fc7d3b4 )
Changed help messages in labels (#7491 ) (0a2ca97 )
cli: Cleaned up Oauth command (#7307 ) (c4c9cd1 )
cli: Provide values needed for upgrading the nats dependency (#7316 ) (#7321 ) (8962936 )
cli: Remove –tag option from trigger delivery command, remove deprecated new-artifact command (#7376 ) (787f08b )
Disconnect MongoDB client before reconnecting (#7416 ) (a90d39c )
distributor: Parsing of URLforces scheme to http or https (#7641 ) (9240659 )
Do not require git user being set when updating project upstream credentials (#7533 ) (ccbf2f1 )
installer: Custom readiness probe for MongoDB to fix default one (#7663 ) (0c8b879 )
installer: Quote value of MAX_AUTH_ENABLED (#7549 ) (b3a4cb9 )
installer: Revert configuration-service back to update strategy recreate (#7650 ) (c4ab18d )
jmeter-service: Avoid nil pointer access when logging results (#7391 ) (c981022 )
Rename GitProxyInsecure to InsecureSkpTLS and pass it to upstream interactions (#7410 ) (07d2ad9 )
resource-service: Fixed unit test (#7443 ) (8f6dbb5 )
shipyard-controller: Added option to configure maximum service name length, adapted returned http status code (#7445 ) (26bc02a )
shipyard-controller: Fix order of merging properties for event payload (#7631 ) (#7651 ) (640b80e )
shipyard-controller: Proceed with service deletion if the service is not present on the configuration service anymore (#7461 ) (6ee9f48 )
URL-provisioning test should wait for pod restart (#7411 ) (966a549 )
Refactoring
bridge: Move static server pages to angular client (#7369 ) (0ff21f3 )
Other
Docs
Add conventions for logging and env var naming (#7611 ) (90f8536 )
cli: Add missing/remove unsupported commands from README (#7544 ) (bea81f1 )
distributor: Fixed broken link to cloud events docs (#7441 ) (5ee6f28 )
Fix hyperlink to references to docs folder (#7327 ) (5d8b4eb )
Resource Stats
Name
Container Name
CPU Request
CPU Limit
RAM Request
RAM Limit
Image
keptn-mongo
mongodb
null
null
null
null
docker.io/bitnami/mongodb:4.4.13-debian-10-r52
api-gateway-nginx
api-gateway-nginx
50m
100m
64Mi
128Mi
docker.io/nginxinc/nginx-unprivileged:1.21.6-alpine
api-service
api-service
50m
100m
32Mi
64Mi
docker.io/keptn/api:0.15.0
api-service
distributor
25m
100m
16Mi
32Mi
docker.io/keptn/distributor:0.15.0
approval-service
approval-service
25m
100m
32Mi
128Mi
docker.io/keptn/approval-service:0.15.0
approval-service
distributor
25m
100m
16Mi
32Mi
docker.io/keptn/distributor:0.15.0
configuration-service
configuration-service
25m
100m
32Mi
64Mi
docker.io/keptn/configuration-service:0.15.0
remediation-service
remediation-service
50m
200m
64Mi
1Gi
docker.io/keptn/remediation-service:0.15.0
remediation-service
distributor
25m
100m
16Mi
32Mi
docker.io/keptn/distributor:0.15.0
bridge
bridge
25m
200m
64Mi
256Mi
docker.io/keptn/bridge2:0.15.0
mongodb-datastore
mongodb-datastore
50m
300m
32Mi
512Mi
docker.io/keptn/mongodb-datastore:0.15.0
mongodb-datastore
distributor
25m
100m
16Mi
32Mi
docker.io/keptn/distributor:0.15.0
lighthouse-service
lighthouse-service
50m
200m
128Mi
1Gi
docker.io/keptn/lighthouse-service:0.15.0
lighthouse-service
distributor
25m
100m
16Mi
32Mi
docker.io/keptn/distributor:0.15.0
secret-service
secret-service
25m
200m
32Mi
64Mi
docker.io/keptn/secret-service:0.15.0
shipyard-controller
shipyard-controller
50m
100m
32Mi
128Mi
docker.io/keptn/shipyard-controller:0.15.0
statistics-service
statistics-service
25m
100m
32Mi
64Mi
docker.io/keptn/statistics-service:0.15.0
statistics-service
distributor
25m
100m
16Mi
32Mi
docker.io/keptn/distributor:0.15.0
webhook-service
webhook-service
25m
100m
32Mi
64Mi
docker.io/keptn/webhook-service:0.15.0
webhook-service
distributor
25m
100m
16Mi
32Mi
docker.io/keptn/distributor:0.15.0
keptn-nats
nats
null
null
null
null
nats:2.7.3-alpine
keptn-nats
metrics
null
null
null
null
natsio/prometheus-nats-exporter:0.9.1