This topic contains release notes for Tanzu Application Platform v1.8.0.
Release Date: 29 February 2024
This release includes the following changes, listed by component and area.
The authorization server can auto-discover upstream identity provider configuration from AuthServer.spec.identityProviders[].openID.configurationURI
. For more information, see Identity providers for Application Single Sign-On.
The userinfo
endpoint of an upstream identity provider is called when it’s known and configured with the scope openid
. That means user information is retrieved for non-standard providers.
Scopes in the token response are filtered according to the roles filtering defined on the AuthServer
.
Advertises the Application Single Sign-On version on components:
sso.apps.tanzu.vmware.com/version
.AuthServer
-owned workloads are annotated with sso.apps.tanzu.vmware.com/version
.FDQN/actuator/info
.Shows an error message when attempting unsupported, Relying Party (RP)-Initiated Logout.
Shows an improved error message when using localhost
in ClientRegistration.spec.redirectURIs
.
Bundles the latest bitnami/redis:7.2.4
.
Supports Kubernetes v1.29.
Adds the service Amazon MQ for RabbitMQ. To enable the new service, set rabbitmq.enabled: true
in your aws-services-values.yaml
. For more configuration options, see Package values for AWS Services.
Adds the package value crossplane.role_arn
. Users can specify a role_arn
, which causes the Provider pods to run as a service account that is mapped to the corresponding IAM role in AWS.
Updates upbound/provider-aws from v0.39.0 to v0.46.0.
Adds the following new stacks with their associated builders to the full dependencies:
For more information, see About lite and full dependencies.
Adds support for .NET 8 in the Tanzu .NET Core Buildpack. For more information about .NET 8, see the Microsoft documentation.
Updates Universal Crossplane to v1.14.5-up.1 For more information, see the Upbound blog.
Updates provider-helm to v0.16.0.
Updates provider-kubernetes to v0.11.0.
Adds support for composition functions. Composition functions are beta in for Crossplane v1.14. For more information, see the Upbound Documentation.
Adds the patch and transform function. Users who want to use function pipelines in their Compositions can use this function without having to explicitly install it.
ServiceBinding
not immediately reconciling when status.binding.name
changes on a previously bound service resource. For more information, see the runtime release notes.Skips TLS verification in DiscoveryClient when mTLS is not enabled.
Enables TLS configuration conditionally with the server.ssl.enabled
flag.
Permits configuration of resource requests and limits for EurekaServers that were deployed by using eureka-controller
.
Supply Chain Security Tools (SCST) - Scan 2.0 is now GA. For more information, including guidance about when to use SCST - Scan 1.0 versus SCST - Scan 2.0, see SCST - Scan Overview.
SCST - Scan 1.0 remains the default scan component, with SCST - Scan 2.0 available on an opt-in basis, except in the following situations:
You can scan container images on a periodic interval after the initial build. For more information, see Set up recurring scanning.
The SCST - Scan 2.0 scanners are updated to the latest versions to support CycloneDX v1.5 outputs:
Adds support for ingesting Software Bill of Materials (SBOMs) in CycloneDX v1.5 format.
Includes better error messaging for ingestion errors.
To enable DORA metrics functionality, if you configured the environment
label, rename it to env
. For more information, see Configure Artifact Metadata Repository.
Tanzu Build Service can now generate Supply-chain Levels for Software Artifacts (SLSA) attestations. For instructions, see Generate Supply-chain Levels for Software Artifacts attestations.
Tanzu UBI and Static builders are now available and you can install them as part of the full
dependencies. For instructions and descriptions, see Installing Install full dependencies.
You can now configure Tanzu Build Service with automatic dependency updates to keep your stacks and buildpacks up to date out of band of Tanzu Application Platform releases. For instructions, see Configure your profile with automatic dependency updates.
Cosign signatures for Builders and ClusterBuilders are now generated. Previously, only app images were signed.
Builders and ClusterBuilders can now specify additional labels to be attached to the image.
portforwards
with the Port Forward action from the pop-up menu in the Tanzu panel. This enables you to easily access the application when iterating locally from a local URL by using Tanzu: Portforward or by using a Knative URL for web type workloads from the Tanzu panel.portforwards
with the Tanzu: Portforward action from the pop-up menu in the Tanzu panel. This enables you to easily access the application when iterating locally from a local URL by using Tanzu: Portforward or by using a Knative URL for web type workloads from the Tanzu panel.This release includes the following changes, listed by component and area.
Tanzu Java Buildpack removes Java (BellSoft Liberica) v20. This is replaced by Java v21.
Tanzu Go Buildpack removes support for the dep dependency management tool for Go. This tool has been officially deprecated since 2020.
For the list of security fixes in this Tanzu Application Platform release, see Security fixes.
The following issues, listed by component and area, are resolved in this release.
API server says: admission webhook "validation.webhook.serving.knative.dev" denied the request: validation failed: annotation value is immutable
.ServiceBinding
is not immediately reconciled when status.binding.name
changes on a previously bound service resource.Resolved the issue where using a custom issuer such as Let’s Encrypt broke the Tanzu Mission Console orchestration that pushes the AMR Observer credentials from the view cluster to the non-view cluster.
Resolved the issue with expired certificates where you must restart the metadata-store pods when the internal database certificate is rotated by cert-manager. This issue no longer occurs with the default internal database, but the solution does not cover external databases.
Artifact Metadata Repository now properly sets the hasNextPage
to false
when there are no more items to be retrieved during a paginated query. This fixes the issue where the last page always returns an empty list.
This release has the following known issues, listed by component and area.
Installing this Tanzu Application Platform release using Tanzu Mission Control is not supported for Kubernetes v1.26.
On Azure Kubernetes Service (AKS), the Datadog Cluster Agent cannot reconcile the webhook, which leads to an error. For troubleshooting information, see Datadog agent cannot reconcile webhook on AKS.
The Tanzu Application Platform integration with Tanzu Service Mesh does not work on vSphere with TKR v1.26. For more information about this integration, see Set up Tanzu Service Mesh. As a workaround, you can apply the label to update pod security on a TKr v1.26 Kubernetes namespace as advised by the release notes for TKr 1.26.5 for vSphere 8.x. However, applying this label provides more than the minimum necessary privilege to the resources in developer namespaces.
Registering conflicting groupId
and version
with API portal:
If you create two CuratedAPIDescriptor
s with the same groupId
and version
combination, both reconcile without throwing an error, and the /openapi?groupId&version
endpoint returns both specifications. If you are adding both specifications to the API portal, only one of them might show up in the API portal UI with a warning indicating that there is a conflict. If you add the route provider annotation for both of the CuratedAPIDescriptor
s to use Spring Cloud Gateway, the generated API specspecification includes API routes from both CuratedAPIDescriptor
s.
You can see the groupId
and version
information from all CuratedAPIDescriptor
s by running:
$ kubectl get curatedapidescriptors -A
NAMESPACE NAME GROUPID VERSION STATUS CURATED API SPEC URL
my-apps petstore test-api-group 1.2.3 Ready http://AAR-CONTROLLER-FQDN/openapi/my-apps/petstore
default mystery test-api-group 1.2.3 Ready http://AAR-CONTROLLER-FQDN/openapi/default/mystery
When creating an APIDescriptor
with different apiSpec.url
and server.url
, the controller incorrectly uses the API spec URL as the server URL. To avoid this issue, use server.url
only.
The app-config-web, app-config-server, and app-config-worker components do not allow developers to override the default application ports. This means that applications that use non-standard ports do not work. To work around this, you can configure ports by providing values to the resulting Carvel package. This issue is planned to be fixed in a future release.
The app-config-web, app-config-server, and app-config-worker components output a YTT overlay that allows developers to configure the environment variables for their Carvel package. This overlay incorrectly replaces all Convention provided environment variables, instead of merging developer provided environment variables. To work around this, supply all environment variables, both Convention provided and user provided, to the Carvel package. This issue is planned to be fixed in a future release.
endpoint
. This does not match the name that the Spring Cloud Bindings library expects, which is addresses
. As a result, when you bind Spring-based workloads to the Amazon MQ service, the connection is not established automatically. For a workaround, see Troubleshoot AWS Services.CrashLoopBackOff
or OOMKilled
. For information about how to increase the memory limit for both the convention server and webhook servers, including app-live-view-conventions, spring-boot-webhook, and developer-conventions/webhook, see Troubleshoot Cartographer Conventions.After you uninstall the Crossplane package and reinstall it on the same cluster, service claims you create never transition to READY=True
. If you inspect the underlying Crossplane managed resource, you see a TLS certificate verification error. For more information, see Troubleshoot Crossplane.
The Crossplane validatingwebhookconfiguration
is not removed when you uninstall the Crossplane package. To workaround, delete the validatingwebhookconfiguration
manually by running kubectl delete validatingwebhookconfiguration crossplane
.
additionalProperties
is true
in a CompositeResourceDefinition. For more information and a workaround, see Troubleshoot Services Toolkit.The Workload page in the Supply Chain UI takes a long time to load when there are more than 100 workloads to display.
The Workload Details page, accessed by clicking on a workload name, does not load in the Supply Chain UI when there are more than 100 workloads to display.
The template for the external-deliverable-template
does not respect the gitops_credentials_secret
parameter. The value is not present on the deliverable if it is provided in the workload parameter gitops_credentials_secret
or the supply chain tap-value ootb_supply_chain*.gitops.credentials_secret
. As a workaround, operators must provide the value as a tap-value for the delivery: ootb_delivery_basic.source.credentials_secret
. The supply chain’s GitOps credentials must authenticate to the same repository as the delivery’s source credentials. If a deliverable must use a secret different from that specified by the delivery tap-value, the deliverable must be manually altered when being copied to the Run cluster. Add the secret name as a source_credentials_secret
parameter on the deliverable.
By default, Server Workload Carvel packages generated by the Carvel package supply chains no longer contain OpenAPIv3 descriptions of their parameters. These descriptions were omitted to keep the size of the Carvel Package definition under 4 KB, which is the size limit for the string output of a Tekton Task. For information about these parameters, see Carvel Package Supply Chains.
When using the Carvel Package Supply Chains, if the operator updates the parameter carvel_package.name_suffix
, existing workloads incorrectly output a Carvel package to the GitOps repository that uses the old value of carvel_package.name_suffix
. You can ignore or delete this package.
If the size of the resulting OpenAPIv3 specification exceeds a certain size, approximately 3 KB, the Supply Chain does not function. If you use the default Carvel package parameters, this issue does not occur. If you use custom Carvel package parameters, you might encounter this size limit. If you exceed the size limit, you can either deactivate this feature, or use a workaround. The workaround requires enabling a Tekton feature flag. For more information, see the Tekton documentation.
When opting in to source scanning in the supply chain the source scan will fail because curl is not available in the source scan image for Grype.
When using Supply Chain Security Tools (SCST) - Scan 2.0 with a ClusterImageTemplate, the value for the scanning image is overwritten with an incorrect default value from ootb_supply_chain_testing_scanning.image_scanner_cli
in the tap-values.yaml
file for templates other than Trivy. You can prevent this by setting the value in your tap-values.yaml
file to the correct image. For example, for the Grype image packaged with Tanzu Application Platform:
ootb_supply_chain_testing_scanning:
image_scanner_template_name: image-vulnerability-scan-grype
image_scanning_cli:
image: registry.example.com/tanzu-application-platform/tap-packages@sha256:feb1cdbd5c918aae7a89bdb2aa39d486bf6ffc81000764b522842e5934578497
The Snyk scanner outputs an incorrectly created date, resulting in an invalid date. If the workload is in a failed state due to an invalid date, wait approximately 10 hours and the workload automatically goes into the ready state. For more about this issue information, see the Snyk GitHub repository.
Recurring scan has a maximum of approximately 5000 container images that can be scanned at a single time due to size limits configMaps.
If the supply chain container image scanning is configured to use a different scanner or scanner version than the recurring scanning, the vulnerabilities displayed in Tanzu Developer Portal might be inaccurate.
SCST - Scan 1.0 fails with the error secrets 'store-ca-cert' not found
during deployment by using Tanzu Mission Control with a non-default issuer. For how to work around this issue, see Deployment failure with non-default issuer.
SCST - Store automatically detects PostgreSQL database index corruptions. If SCST - Store finds a PostgresSQL database index has been corrupted, SCST - Store will automatically attempt to repair, which might cause reconciliation during package updates. When this happens, the included Postgres database might take some time to complete the repair and accept connections. For more information, see Fix Postgres Database Index Corruption.
When outputting CycloneDX v1.5 SBOMs, the report is found to be an invalid SBOM by CycloneDX validators. This issue is planned to be fixed in a future release.
If CA Certificate data is included in the shared Tanzu Application Platform values section, do not configure AMR Observer with CA Certificate data.
When observer.deploy_through_tmc
is true
, properties are auto-configured for Tanzu Mission Control (TMC). This causes the MultiClusterPropertyCollector
resource to overwrite existing Tanzu Application Platform values for Observer.
When using Let’s Encrypt ACME issuers, the resultant Kubernetes secret resource does not contain a ca.crt
property. Therefore, when the MultiClusterPropertyCollector
resource creates the Observer package configuration values secret, the required ca_cert_data
is empty.
To work around this issue, add the Certificate Authority (CA) Certificate to the shared.ca_cert_data
key in the Tanzu Application Platform installation values.
During upgrades a large number of builds might be created due to buildpack and stack updates. Some of these builds might fail due to transient network issues, causing the workload to be in an unhealthy state. This resolves itself on subsequent builds after a code change and does not affect the running application.
If you do not want to wait for subsequent builds to run, you can manually trigger a build. For instructions, see Troubleshooting.
Tanzu Developer Portal Configurator jumps from v1.0.x in Tanzu Application Platform v1.7 to v1.8.x in Tanzu Application Platform v1.8. This version jump enables future versions of Tanzu Developer Portal and Tanzu Developer Portal Configurator to sync going forward.
If you do not configure any authentication providers, and do not allow guest access, the following message appears when loading Tanzu Developer Portal in a browser:
No configured authentication providers. Please configure at least one.
To resolve this issue, see Troubleshooting.
Ad-blocking browser extensions and standalone ad-blocking software can interfere with telemetry collection within the VMware Customer Experience Improvement Program and restrict access to all or parts of Tanzu Developer Portal. For more information, see Troubleshooting.
ScmAuth is a Backstage concept that abstracts Source Code Management (SCM) authentication into a package. An oversight in a recent code-base migration led to the accidental exclusion of custom ScmAuth functions. This exclusion affected some client operations, such as using Application Accelerators to create Git repositories on behalf of users.
The back-end Kubernetes plug-in reports failure in multicluster environments. In a multicluster environment when one request to a Kubernetes cluster fails, backstage-kubernetes-backend
reports a failure to the front end. This is a known issue with upstream Backstage and it applies to all released versions of Tanzu Developer Portal. For more information, see this Backstage code in GitHub. This behavior arises from the API at the Backstage level. There are currently no known workarounds. There are plans for upstream commits to Backstage to resolve this issue.
The error com.vdurmont.semver4j.SemverException: Invalid version (no major version)
is shown in the error logs when attempting to perform a workload action before installing the Tanzu CLI apps plug-in.
If you restart your computer while running Live Update without terminating the Tilt process beforehand, there is a lock that incorrectly shows that Live Update is still running and prevents it from starting again. For the fix, see Troubleshooting.
Workload actions and Live Update do not work when in a project with spaces in its name, such as my app
, or in its path, such as C:\Users\My User\my-app
. For more information, see Troubleshooting.
An EDT Thread Exception error is logged or reported as a notification with a message similar to "com.intellij.diagnostic.PluginException: 2007 ms to call on EDT TanzuApplyAction#update@ProjectViewPopup"
. For more information, see Troubleshooting.
The following table lists the Tanzu Application Platform package versions included with this release. For open source component versions in this Tanzu Application Platform release, see Open source component versions.
Component Name | Version |
---|---|
API Auto Registration | 0.4.2 |
API portal | 1.5.0 |
Application Accelerator | 1.8.1 |
Application Configuration Service | 2.3.0 |
Application Live View APIServer | 1.8.0 |
Application Live View back end | 1.8.0 |
Application Live View connector | 1.8.0 |
Application Live View conventions | 1.8.0 |
Application Single Sign-On | 5.1.1 |
Artifact Metadata Repository Observer | 0.4.1 |
AWS Services | 0.2.0 |
Bitnami Services | 0.4.0 |
Carbon Black Scanner for SCST - Scan (beta) | 1.3.2 |
Cartographer Conventions | 0.8.10 |
cert-manager | 2.7.0 |
Cloud Native Runtimes | 2.5.1 |
Contour | 2.2.0 |
Crossplane | 0.4.1 |
Default Roles | 1.1.0 |
Developer Conventions | 0.16.1 |
External Secrets Operator | 0.9.4+tanzu.2 |
Flux CD Source Controller | 0.36.1+tanzu.2 |
Grype Scanner for SCST - Scan | 1.8.2 |
Local Source Proxy | 0.2.1 |
Managed Resource Controller (beta) | 0.1.2 |
Namespace Provisioner | 0.6.2 |
Out of the Box Delivery - Basic | 0.15.6 |
Out of the Box Supply Chain - Basic | 0.15.6 |
Out of the Box Supply Chain - Testing | 0.15.6 |
Out of the Box Supply Chain - Testing and Scanning | 0.15.6 |
Out of the Box Templates | 0.15.6 |
Service Bindings | 0.11.0 |
Service Registry | 1.3.1 |
Services Toolkit | 0.13.0 |
Snyk Scanner for SCST - Scan (beta) | 1.2.2 |
Source Controller | 0.8.3 |
Spring Boot conventions | 1.8.0 |
Spring Cloud Gateway | 2.1.7 |
Supply Chain Choreographer | 0.8.10 |
Supply Chain Security Tools - Policy Controller | 1.6.3 |
Supply Chain Security Tools - Scan | 1.8.2 |
Supply Chain Security Tools - Scan 2.0 | 0.3.2 |
Supply Chain Security Tools - Store | 1.8.1 |
Tanzu Application Platform Telemetry | 0.7.0 |
Tanzu Build Service | 1.13.0 |
Tanzu CLI | 1.2.0 |
Tanzu Developer Portal | 1.8.1 |
Tanzu Developer Portal Configurator | 1.8.1 |
Tanzu Supply Chain (beta) | 0.1.16 |
Tekton Pipelines | 0.50.3+tanzu.4 |