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
7 changes: 7 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,13 @@ 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"


</Note>

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
14 changes: 10 additions & 4 deletions website/content/docs/connect/native/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,16 @@ description: >-

# Service Mesh Native App Integration Overview

~> **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.
<Note>

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
will still operate as designed, we do not recommend leveraging this feature because it is deprecated and will be removed when the long term replacement, proxy-less gRPC connections to Consul xDS, is delivered. Refer to [GH-10339](https://github.com/hashicorp/consul/issues/10339) for additional information and to track progress toward the replacement functionality.

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.

</Note>

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
11 changes: 11 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,17 @@ description: >-

# Custom Proxy Configuration for Service Mesh

<Note>

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
will still operate as designed, we do not recommend leveraging this feature because it is deprecated and will be removed when the long term replacement, proxy-less gRPC connections to Consul xDS, is delivered. Refer to [GH-10339](https://github.com/hashicorp/consul/issues/10339) for additional information and to track progress toward the replacement functionality.

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.

</Note>

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. We will remove the SDK when the long term replacement, proxy-less gRPC connections to Consul xDS, is delivered. Refer to [GH-10339](https://github.com/hashicorp/consul/issues/10339) for additional information and to track progress toward the replacement functionality.

- **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

The `v1/agent/connect/authorize` and `v1/agent/connect/ca/leaf` endpoints have corresponding gRPC APIs. We will remove these APIs when the gRPC API for `v1/agent/connect/ca/roots` and HTTP endpoints for all three APIs are available.

## 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)