Skip to content

Releases: tektoncd/results

Tekton Results release v0.13.2 "Tekton Results"

10 Dec 08:23
683497f
Compare
Choose a tag to compare

Changes

Features

Fixes

  • 🐛 [release-v0.13.x] Fix the Unauthorized for the Rest API (#902)

Misc

Docs

Thanks

Thanks to these contributors who contributed to v0.13.2!

Extra shout-out for awesome release notes:

Tekton Results release v0.13.1 "Tekton Results"

06 Dec 08:34
Compare
Choose a tag to compare

-Docs @ v0.13.1
-Examples @ v0.13.1

Upgrade Notices

Changes

Features

Fixes

  • 🐛 [release-v0.13.x] Fix the blob for s3 prefixed key (#898)

If using prefix bucket, please pass // in LOGS_PATH, e.g.: LOGS_PATH=//logs

Misc

  • 🔨 [release-v0.13.x] Bump Pipelines to v0.65.2 (#895)

Docs

Thanks

Thanks to these contributors who contributed to v0.13.1!

Extra shout-out for awesome release notes:

Tekton Results release v0.13.0 "Tekton Results"

13 Nov 17:38
a3d212b
Compare
Choose a tag to compare

-Docs @ v0.13.0
-Examples @ v0.13.0

Upgrade Notices

We now support s3 and GCS logs reading for vector.dev forwarded logs in a certain format in addition to Loki.

Breaking Change from v0.11.0

If logging was enabled earlier, we need to pass the environment variable logs_api to the watcher deployment to enable logs streaming by the watcher to API.

Depreciation

Forwarding of logs by watcher would be removed in future releases.

Changes

Features

  • ✨ Provide configurations to store labels and Annotations in summary (#880)

You can provide args to watchers: summary_labels and summary_annotations to store labels/annotations present in the Top Level resource to the Result.Annotation field.
The top Level Resource name is always saved as an object.metadata.name in the annotation.

  • ✨ Add Support for Blob Type (s3 and GCS) (#879)

Added support for reading forwarded logs to s3 and GCS.
If the vector forwards logs to s3 and GCS, these logs can be read using
Go CDK's blob library.
Also, if the Result logging mechanism is changed to the plugin which doesn't use forwarding by watcher, we can read old logs if they exist.

  • ✨ Remove GRPC Proxy for v3 Log Rest API Call (#868)

The Rest API calls don't require translation for plugin Logs API.

  • ✨ Add watcher option logs_timestamps to store taskrun logs with timestamps (#789)

Add watcher option logs_timestamps to store TaskRun logs with timestamps (#671)

Misc

  • 🔨 Bump github.com/golang-jwt/jwt/v4 from 4.5.0 to 4.5.1 (#882)
  • 🔨 Bump github.com/aws/aws-sdk-go-v2/config from 1.27.9 to 1.28.3 (#878)
  • 🔨 Bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.51.4 to 1.66.3 (#875)
  • 🔨 Bump github.com/prometheus/client_golang from 1.19.1 to 1.20.5 (#852)
  • 🔨 Bump github.com/gorilla/mux from 1.8.0 to 1.8.1 (#812)

Thanks

Thanks to these contributors who contributed to v0.13.0!

Extra shout-out for awesome release notes:

Tekton Results release v0.12.2 "Tekton Results"

05 Nov 19:44
c613399
Compare
Choose a tag to compare

-Docs @ v0.12.2
-Examples @ v0.12.2

Changes

Features

Fixes

  • 🐛 [release-v0.12.x] Fix Panic in the API server (#872)

  • 🐛 [release-v0.12.x] Add nil Check for Completion time in Finalizer (#860)

  • 🐛 [release-v0.12.x] Storing PipelineRun and TaskRun deletion metadata (#861)

Misc

  • 🔨 [release-v0.12.x] Add Debug Logs for Third Party Logging API (#866)

Docs

Thanks

Thanks to these contributors who contributed to v0.12.2!

Extra shout-out for awesome release notes:

Tekton Results release v0.12.1 "Tekton Results"

26 Sep 16:04
Compare
Choose a tag to compare

-Docs @ v0.12.1
-Examples @ v0.12.1

Upgrade Notices

A new Logging API was introduced in v0.12.0 featuring support for forwarder + Loki.

Breaking Change from v0.11.0

If logging was enabled earlier, we need to pass the environment variable logs_api to the watcher deployment to enable logs streaming by the watcher to API.

Changes

Features

  • ✨ Pass Record name to the v1alpha3 API in tkn-results cli (#819)

User can pass the record name in the below format to v1alpha3 GetLog :
/results//records/

Fixes

  • 🐛 [release-v0.12.x] Add support for configuring custom query params to Logs API (#832)

LOGGING_PLUGIN_QUERY_PARAMS can be used to pass custom queries for third-party Logs API.

  • 🐛 [release-v0.12.x] Provide QueryLimit options for Third Party Logs API (Loki) (#824)

This adds a new config to provide a query limit for Third Party Logging API: LOGGING_PLUGIN_QUERY_LIMIT

Misc

  • 🔨 [release-v0.12.x] Update Release image to go 1.22 (#833)

Docs

Thanks

Thanks to these contributors who contributed to v0.12.1!

Extra shout-out for awesome release notes:

Tekton Results release v0.12.0 "Tekton Results"

15 Sep 19:32
Compare
Choose a tag to compare

-Docs @ v0.12.0
-Examples @ v0.12.0

Upgrade Notices

Breaking Change

If logging was enabled earlier, we need to pass the environment variable logs_api to the watcher deployment to enable logs streaming by the watcher to API.

Changes

Features

  • ✨ Add Global Retention Policy Agent for DB (#784)

Add Result Retention Policy Agent which removes older Result and their associated records.

  • ✨ Add Support for fetching forwarded logs from third party API (#782)

Enables the support for fetching logs from Third Party API. We have enabled the support for Loki for now. Later on, support for other logging stacks like Splunk, Google Cloud Logging, etc can be added.

  • ✨ Add a Converter Job which converts v1beta1 run in db to v1 run (#768)

Converter to convert older records from v1beta1 Tekton object to v1 Tekton object. This is controlled by the following fields in API:
CONVERTER_ENABLE: Whether to start converter or v1beta1 TaskRun/PipelineRun records to v1
CONVERTER_DB_LIMIT: How many records to convert at a time in a transaction |

  • ✨ Add Support for Tekton Pipeline v1 APIs (#762)

Records of TaskRuns and PipelineRuns are as stored as v1 in db instead of v1beta1.
Add support for storing PipelineRun and TaskRun objects as v1.
These CRs are reconciled as the v1 version of Pipelines API and then
stored in DB as v1. Existing v1beta1 resources are kept as it is.

Fixes

  • 🐛 Add finalizer to ensure that Runs are stored (#797)

Added finalizer to TaskRun and PipelineRun to ensure that TaskRun and PipelienRun are stored. This will block deletion until the deadline (Completion + store_deadline) lapses or Runs are stored when done.
This finalizer doesn't block if log streaming from watcher or pruner is enabled.

Misc

  • 🔨 Optimise GetLog API query in v1alpha3 Logs API (#808)
  • 🔨 Fix the Retention Policy Agent Name (#804)
  • 🔨 google.golang.org/grpc from 1.64.1 to 1.66.2 (#806)
  • 🔨 github.com/docker/docker from 26.1.4+incompatible to 26.1.5+incompatible (#785)
  • 🔨 github.com/docker/docker from 26.1.2+incompatible to 26.1.4+incompatible (#781)
  • 🔨 gorm.io/driver/sqlite from 1.5.1 to 1.5.6 (#775)
  • 🔨 google.golang.org/grpc from 1.64.0 to 1.64.1 (#772)

Docs

  • 📖 Change kind Role to ClusterRole for tekton-results-readonly (#780)

Thanks

Thanks to these contributors who contributed to v0.12.0!

Extra shout-out for awesome release notes:

Tekton Results release v0.11.0 "Tekton Results"

08 Jul 08:43
Compare
Choose a tag to compare

-Docs @ v0.11.0
-Examples @ v0.11.0

Changes

Features

  • ✨ Add log stored status explicitly (#760)
  • Added log stored stored status explictly in the Log object improves the detection for partial or no storage of logs
  • ✨ Enable storing of Run Events as Record (#748)

All Events related to taskrun or PipelineRun are stored when we are done with Runs and in a single List.
This can be controlled by a flag passed to the watcher: "store-event". Setting it to false
disables the storing of Events.
The record Name of EventList is stored as results.tekton.dev/eventlist in TaskRun and PipelineRun.

Fixes

  • 🐛 move log storage off reconciler thread (again) (#759)

Prior attempts to fix the watcher memory leak when log storage is enabled (originally issue #695) placed log storage on the dynamic reconciler to facilitate retry on retryable errors. However, production level testing uncovered underlying golang/http2 performance issues which made this untenable.

This change moves log storage back off the dynamic reconciler thread, but still addresses the memory leak, as well as intermittent 'canceled context' errors during log storage through the results api server.

Two new command line arguments are enabled on the watch to facilitate timeouts on log storage:

  1. dynamic_reconcile_timeout: How long the Watcher waits for the dynamic reconciler to complete before it aborts
  2. update_log_timeout: How log the Watcher waits for the UpdateLog operation for storing logs to complete before it aborts.
  • 🐛 do not lose flush error on server side update log (#756)

Misc

  • 🔨 Use latest Kind k8s version, fixes e2e tests (#766)

Thanks

Thanks to these contributors who contributed to v0.11.0!

Extra shout-out for awesome release notes:

Tekton Results release v0.10.0 "Tekton Results"

10 May 16:05
067091e
Compare
Choose a tag to compare

-Docs @ v0.10.0
-Examples @ v0.10.0

Changes

Features

  • ✨ alllow for database connection, grpc worker thread pool, and k8s client level tuning of the watcher and api servers (#744)

The number of idle and max database connections, grpc worker pool goroutines, k8s client qps and burst, in the api server can be now configured using environment variables.
The k8s client qps and burst settings can be set via command line arguments on the watcher
No defaults from prior settings have been changed.

  • ✨ Add profiling to API server (#743)

Fixes

  • 🐛 add timeout to dynamic Reconcile (#725)

Address deadlocked reconciler threads potentially hung while streaming logs

  • 🐛 employ some channel best practices to avoid hanging goroutines (#712)

Fixes around the threading / goroutines employed while storing logs mitigate an observed memory leak

  • 🐛 Don't run auth check for every log fragment (#740)

  • 💀 Update golang.org/x/net to handle CVE GO-2024-2687 (#746)

  • 💀 Bump github.com/cloudevents/sdk-go/v2 from 2.12.0 to 2.15.2 (#724) Patches CVE-2024-28110

Misc

  • 🔨 Bump google.golang.org/protobuf from 1.31.0 to 1.34.1 (#752)
  • 🔨 Update database drivers (#742)
  • 🔨 Bump github.com/docker/docker from 24.0.7+incompatible to 24.0.9+incompatible (#736)

Docs

  • 📖 fix syntax error with tekton results data model diagram (#708)

docs: Fix mermaid.js diagram for the Results data model

Thanks

Thanks to these contributors who contributed to v0.10.0!

Extra shout-out for awesome release notes:

Tekton Results release v0.9.2 "Tekton Results"

19 Mar 16:40
Compare
Choose a tag to compare

-Docs @ v0.9.2
-Examples @ v0.9.2

Changes

Fixes

  • 🐛 [release-v0.9.x] Support all data types in summary annotations (#723)
    This fixes panic when we pass data types other than a string in summary annotations.
  • 🐛 [release-v0.9.x] Disable Proxy for Rest to GRPC communication (#734)
    This adds support for Disconnected and Proxy environments and fixes probe failure in these environments.
  • 🐛 [release-v0.9.x] fix: prevent panic when a record Summary is not a valid object (#733)

Docs

Thanks

Thanks to these contributors who contributed to v0.9.2!

Extra shout-out for awesome release notes:

Tekton Results release v0.9.1 "Tekton Results"

07 Feb 08:48
Compare
Choose a tag to compare

-Docs @ v0.9.1

Installation one-liner

kubectl apply -f https://storage.googleapis.com/tekton-releases/results/previous/v0.9.1/release.yaml

Changes

Features

Fixes

  • 🐛 [release-v0.9.x] handle all terminal states when processing logs (#701)

Tekton results will now store logs when the supported runs in question are cancelled

Misc

  • 🔨 Add support for No DB release (#705)

This add support for release_base.yaml which doesn't include db.

Thanks

Thanks to these contributors who contributed to v0.9.1!

Extra shout-out for awesome release notes: