Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: Deprecations for connect-native SDK and specific connect native APIs #17937

Merged
merged 21 commits into from
Jun 28, 2023
Merged
3 changes: 3 additions & 0 deletions website/content/docs/connect/native/go.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ description: >-

# Service Mesh Native Integration for Go Applications

-> **Note:** The Connect Native golang SDK is currently deprecated and will be removed in a future Consul release.
The eventual removal of the SDK is dependent on the delivery of proxyless GRPC via XDS which is tracked on [GH-10339](https://github.com/hashicorp/consul/issues/10339).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The eventual removal of the SDK is dependent on the delivery of proxyless GRPC via XDS which is tracked on [GH-10339](https://github.com/hashicorp/consul/issues/10339).
We will replace the SDK functionality with proxy-less gRPC connections to Consul xDS. Refer to [GH-10339](https://github.com/hashicorp/consul/issues/10339) for additional information and to track progress toward the replacement functionality.

Is it correct to characterize the upcoming functionality as a replacement for the SDK?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Technically yes since all that is needed is the native golang package for XDS. I.e.

import _ "google.golang.org/grpc/xds"

david-yu marked this conversation as resolved.
Show resolved Hide resolved

We provide a library that makes it drop-in simple to integrate Consul service mesh
with most [Go](https://golang.org/) applications. This page shows examples
of integrating this library for accepting or establishing mesh-based
Expand Down
5 changes: 4 additions & 1 deletion website/content/docs/connect/native/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,10 @@ description: >-
~> **Note:** The Native App Integration does not support many of the Consul's service
mesh features, and is not under active development.
The [Envoy proxy](/consul/docs/connect/proxies/envoy) should be used for most production
environments.
environments. The Connect Native Golang SDK and `v1/agent/connect/authorize`, `v1/agent/connect/ca/leaf`,
and `v1/agent/connect/ca/roots` APIs are deprecated and will be removed in a future release. Although Connect Native
is still supported we discourage new users from adopting this feature at this time, as we plan to remove the feature
when a future long term replacement such as proxyless GRPC via XDS is delivered (see [GH-10339](https://github.com/hashicorp/consul/issues/10339)).

Applications can natively integrate with Consul's service mesh API to support accepting
and establishing connections to other mesh services without the overhead of a
Expand Down
8 changes: 8 additions & 0 deletions website/content/docs/connect/proxies/integrate.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,14 @@ description: >-

# Custom Proxy Configuration for Service Mesh

~> **Note:** The Native App Integration does not support many of the Consul's service
mesh features, and is not under active development.
The [Envoy proxy](/consul/docs/connect/proxies/envoy) should be used for most production
environments. The Connect Native Golang SDK and `v1/agent/connect/authorize`, `v1/agent/connect/ca/leaf`,
and `v1/agent/connect/ca/roots` APIs are deprecated and will be removed in a future release. Although Connect Native
is still supported we discourage new users from adopting this feature at this time, as we plan to remove the feature
when a future long term replacement such as proxyless GRPC via XDS is delivered (see [GH-10339](https://github.com/hashicorp/consul/issues/10339)).

This topic describes the process and API endpoints you can use to extend proxies for integration with Consul.

## Overview
Expand Down
11 changes: 10 additions & 1 deletion website/content/docs/release-notes/consul/v1_16_x.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,15 @@ We are pleased to announce the following Consul updates.

Consul's API gateway is the recommended alternative to ingress gateway. For ingress gateway features not currently supported by API gateway, equivalent functionality will be added to API gateway over the next several releases of Consul.

- **Connect Native Golang SDK:** The Connect Native [Golang SDK](https://github.com/hashicorp/consul/tree/main/connect) is deprecated and will be removed in a future release. No further enhancements or maintenance is expected in the future releases. The eventual removal of the SDK is dependent on the delivery of proxyless GRPC via XDS which is tracked on [GH-10339](https://github.com/hashicorp/consul/issues/10339).
david-yu marked this conversation as resolved.
Show resolved Hide resolved

- **Connect Native APIs:** The following APIs for Connect Native are deprecated:
- `v1/agent/connect/authorize` - used by the SDK to perform intention based authorization checks
- `v1/agent/connect/ca/leaf` - used by the SDK to get a leaf cert for a locally registered service
- `v1/agent/connect/ca/roots` - use to retrieved cached CA roots form the local client agent

Currently both `v1/agent/connect/authorize` and `v1/agent/connect/ca/leaf` have corresponding gRPC APIs. Removal of these APIs will be dependent on delivering the gRPC API for `v1/agent/connect/ca/roots` and HTTP endpoints for all three APIs for easier consumption by users.
david-yu marked this conversation as resolved.
Show resolved Hide resolved

## Upgrading

For more detailed information, please refer to the [upgrade details page](/consul/docs/upgrading/upgrade-specific) and the changelogs.
Expand All @@ -61,4 +70,4 @@ The changelogs for this major release version and any maintenance versions are l

<Note> These links take you to the changelogs on the GitHub website. </Note>

- [1.16.0](https://github.com/hashicorp/consul/releases/tag/v1.16.0)
- [1.16.0](https://github.com/hashicorp/consul/releases/tag/v1.16.0)