Skip to content

Commit

Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Extract tabbed Prerequisites into a partial
Browse files Browse the repository at this point in the history
Backports #11710

While editing guides in certain sections to accommodate Cloud users
(#10631), I introduced some inconsistencies into the way the
Prerequisites sections in these guides provide instructions for users
of Cloud, Open Source, and Enterprise Teleport.

This change adds a partial that provides tabbed instructions to users
of different Teleport editions when a guide requires a running Auth and
Proxy Service. It then includes this partial where relevant in guides
that fall under the scope of #10631.

This helps ensure that cross-edition instructions are consistent in our
guides, and makes it easier to edit additional guides to accommodate
users of different editions.

Caveats:

- Since this change covers a lot of guides, it aims to be as small as
  possible. While all of these guides included links in their
  Prerequisites sections, for example, replacing these links with full
  instructions was out of the scope of this guide. This change should
  still make it easier to make further edits, e.g., in response to
  #11538.

- We still need to change other elements of some guides to accommodate
  Cloud users. The current change only aims to standardize the
  Prerequisites section.
ptgott committed Apr 14, 2022
1 parent 88500b3 commit 07914f7
Showing 25 changed files with 163 additions and 558 deletions.
3 changes: 1 addition & 2 deletions docs/pages/access-controls/getting-started.mdx
Original file line number Diff line number Diff line change
@@ -13,8 +13,7 @@ with creating your own role.

## Prerequisites

- Installed [Teleport](../getting-started.mdx) or [Teleport Cloud](../cloud/introduction.mdx) >= (=teleport.version=)
- [Tctl admin tool](https://goteleport.com/teleport/download) >= (=teleport.version=)
(!docs/pages/includes/edition-prereqs-tabs.mdx!)

(!docs/pages/includes/permission-warning.mdx!)

48 changes: 42 additions & 6 deletions docs/pages/access-controls/guides/dual-authz.mdx
Original file line number Diff line number Diff line change
@@ -13,23 +13,59 @@ Here are the most common scenarios:
Let's set up Teleport's access requests to require approval of
two team members for a privileged role `dbadmin`.

<Admonition
<Notice
type="warning"
title="Version Warning"
>
This guide requires a commercial edition of Teleport. The open source
edition of Teleport only supports [Github](../../setup/admin/github-sso.mdx) as
edition of Teleport only supports [GitHub](../../setup/admin/github-sso.mdx) as
an SSO provider.
</Admonition>
</Notice>

<Admonition title="Note" type="tip">
The steps below describe how to use Teleport with Mattermost. You can also [integrate with many other providers](../../enterprise/workflow/index.mdx).
</Admonition>

## Prerequisites

- Installed [Teleport Enterprise](../../enterprise/introduction.mdx) or [Teleport Cloud](../../cloud/introduction.mdx) >= (=teleport.version=)
- [Tctl enterprise admin tool](https://goteleport.com/teleport/download) >= (=teleport.version=)
<Tabs>
<TabItem
scope={["enterprise"]} label="Enterprise">

- A running Teleport cluster. For details on how to set this up, see our Enterprise
[Getting Started](/docs/enterprise/getting-started) guide.

- The `tctl` admin tool and `tsh` client tool version >= (=teleport.version=),
which you can download by visiting the
[customer portal](https://dashboard.gravitational.com/web/login).

```code
$ tctl version
# Teleport v(=teleport.version=) go(=teleport.golang=)
$ tsh version
# Teleport v(=teleport.version=) go(=teleport.golang=)
```

</TabItem>
<TabItem scope={["cloud"]}
label="Teleport Cloud">

- A Teleport Cloud account. If you do not have one, visit the
[sign up page](https://goteleport.com/signup/) to begin your free trial.

- The `tctl` admin tool and `tsh` client tool version >= (=teleport.version=).
To download these tools, visit the [Downloads](/docs/cloud/downloads) page.

```code
$ tctl version
# Teleport v(=teleport.version=) go(=teleport.golang=)
$ tsh version
# Teleport v(=teleport.version=) go(=teleport.golang=)
```

</TabItem>
</Tabs>
- Mattermost installed.

<Admonition
3 changes: 1 addition & 2 deletions docs/pages/access-controls/guides/impersonation.mdx
Original file line number Diff line number Diff line change
@@ -15,8 +15,7 @@ non-interactive CI/CD user Jenkins and a security scanner.

## Prerequisites

- Installed [Teleport](../getting-started.mdx) or [Teleport Cloud](../../cloud/introduction.mdx) >= (=teleport.version=)
- [Tctl admin tool](https://goteleport.com/teleport/download) >= (=teleport.version=)
(!docs/pages/includes/edition-prereqs-tabs.mdx!)

(!docs/pages/includes/tctl.mdx!)

3 changes: 1 addition & 2 deletions docs/pages/access-controls/guides/locking.mdx
Original file line number Diff line number Diff line change
@@ -36,8 +36,7 @@ A lock can target the following objects or attributes:

## Prerequisites

- Installed [Teleport](../getting-started.mdx) >= (=teleport.version=) or [Teleport Cloud](../../cloud/introduction.mdx)
- [Tctl admin tool](https://goteleport.com/teleport/download) >= (=teleport.version=)
(!docs/pages/includes/edition-prereqs-tabs.mdx!)

(!docs/pages/includes/tctl.mdx!)

5 changes: 4 additions & 1 deletion docs/pages/access-controls/guides/per-session-mfa.mdx
Original file line number Diff line number Diff line change
@@ -42,13 +42,16 @@ their on-disk Teleport certificates.

## Prerequisites

- Installed [Teleport](../getting-started.mdx) or [Teleport Cloud](../../cloud/introduction.mdx) >= (=teleport.version=)
(!docs/pages/includes/edition-prereqs-tabs.mdx!)

- [WebAuthn configured](webauthn.mdx) on this cluster
- Second factor hardware device, such as YubiKey or SoloKey
- A Web browser with [WebAuthn support](
https://developers.yubico.com/WebAuthn/WebAuthn_Browser_Support/) (if using
SSH from the Teleport Web UI)

(!docs/pages/includes/tctl.mdx!)

<Admonition type="note" title="Per-session MFA with FIPS">
Teleport FIPS builds disable local users. To configure WebAuthn in order to use
per-session MFA with FIPS builds, provide the following in your `teleport.yaml`:
3 changes: 1 addition & 2 deletions docs/pages/access-controls/guides/role-templates.mdx
Original file line number Diff line number Diff line change
@@ -19,8 +19,7 @@ Let's explore how Teleport's role templates provide a way to describe these and

## Prerequisites

- Installed [Teleport](../getting-started.mdx) or [Teleport Cloud](../../cloud/introduction.mdx) >= (=teleport.version=)
- [Tctl admin tool](https://goteleport.com/teleport/download) >= (=teleport.version=)
(!docs/pages/includes/edition-prereqs-tabs.mdx!)

(!docs/pages/includes/tctl.mdx!)

5 changes: 4 additions & 1 deletion docs/pages/access-controls/guides/u2f.mdx
Original file line number Diff line number Diff line change
@@ -18,10 +18,13 @@ into individual SSH nodes or Kubernetes clusters (`tsh ssh` and `kubectl`).

## Prerequisites

- Installed [Teleport](../getting-started.mdx) or [Teleport Cloud](../../cloud/introduction.mdx) >= (=teleport.version=)
(!docs/pages/includes/edition-prereqs-tabs.mdx!)

- U2F hardware device, such as Yubikey or Solokey
- Web browser that [supports U2F](https://caniuse.com/u2f)

(!docs/pages/includes/tctl.mdx!)

## Enable U2F support

By default U2F is disabled. To enable U2F support, edit the Teleport
6 changes: 2 additions & 4 deletions docs/pages/access-controls/guides/webauthn.mdx
Original file line number Diff line number Diff line change
@@ -16,10 +16,8 @@ and Web UI), as well as biometric authenticators like Touch ID and Windows Hello

## Prerequisites

- Installed [Teleport](../getting-started.mdx) or [Teleport Cloud](
../../cloud/introduction.mdx) >= (=teleport.version=)
- [Tctl admin tool](https://goteleport.com/teleport/download) >=
(=teleport.version=).
(!docs/pages/includes/edition-prereqs-tabs.mdx!)

- WebAuthn hardware device, such as YubiKey or SoloKey
- A Web browser with [WebAuthn support](
https://developers.yubico.com/WebAuthn/WebAuthn_Browser_Support/)
62 changes: 62 additions & 0 deletions docs/pages/includes/edition-prereqs-tabs.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
{/*
TODO: Since we can't control the directory level of the page that uses this
partial, and it is currently not possible to include absolute paths to MDX
files in partials, this partial uses relative URL paths instead.
*/}
<Tabs>
<TabItem scope={["oss"]} label="Open Source">

- A running Teleport cluster. For details on how to set this up, see one of our
[Getting Started](/docs/getting-started) guides.

- The `tctl` admin tool and `tsh` client tool version >= (=teleport.version=).

```code
$ tctl version
# Teleport v(=teleport.version=) go(=teleport.golang=)
$ tsh version
# Teleport v(=teleport.version=) go(=teleport.golang=)
```

See [Installation](/docs/installation.mdx) for details.

</TabItem>
<TabItem
scope={["enterprise"]} label="Enterprise">

- A running Teleport cluster. For details on how to set this up, see our Enterprise
[Getting Started](/docs/enterprise/getting-started) guide.

- The `tctl` admin tool and `tsh` client tool version >= (=teleport.version=),
which you can download by visiting the
[customer portal](https://dashboard.gravitational.com/web/login).

```code
$ tctl version
# Teleport v(=teleport.version=) go(=teleport.golang=)
$ tsh version
# Teleport v(=teleport.version=) go(=teleport.golang=)
```

</TabItem>
<TabItem scope={["cloud"]}
label="Teleport Cloud">

- A Teleport Cloud account. If you do not have one, visit the
[sign up page](https://goteleport.com/signup/) to begin your free trial.

- The `tctl` admin tool and `tsh` client tool version >= (=cloud.version=).
To download these tools, visit the [Downloads](/docs/cloud/downloads) page.

```code
$ tctl version
# Teleport v(=cloud.version=) go(=teleport.golang=)
$ tsh version
# Teleport v(=cloud.version=) go(=teleport.golang=)
```

</TabItem>
</Tabs>
62 changes: 1 addition & 61 deletions docs/pages/kubernetes-access/getting-started/agent.mdx
Original file line number Diff line number Diff line change
@@ -5,70 +5,10 @@ description: Connecting a Kubernetes cluster to Teleport

## Prerequisites

<Tabs>
<TabItem scope={["oss"]} label="Open Source">

- A running Teleport cluster. For details on how to set this up, see one of our
[Getting Started](../../getting-started.mdx) guides.
(!docs/pages/includes/edition-prereqs-tabs.mdx!)

- The `jq` tool to process `JSON` output. This is available via common package managers.

- The `tctl` admin tool version >= (=teleport.version=).

```code
$ tctl version
# Teleport v(=teleport.version=) go(=teleport.golang=)
```

See [Installation](../../installation.mdx) for details.

(!docs/pages/includes/tctl.mdx!)

</TabItem>
<TabItem
scope={["enterprise"]} label="Enterprise">

- A running Teleport cluster. For details on how to set this up, see one of our
[Getting Started](../../getting-started.mdx) guides.

- The `jq` tool to process `JSON` output. This is available via common package managers.

- The `tctl` admin tool version >= (=teleport.version=), which you can download
by visiting the
[customer portal](https://dashboard.gravitational.com/web/login).

```code
$ tctl version
# Teleport Enterprise v(=teleport.version=) go(=teleport.golang=)
```

(!docs/pages/includes/tctl.mdx!)

</TabItem>
<TabItem scope={["cloud"]}
label="Teleport Cloud">

- A Teleport Cloud account. If you do not have one, visit the
[sign up page](https://goteleport.com/signup/) to begin your free trial.

- The `jq` tool to process `JSON` output. This is available via common package
managers.

- The `tctl` admin tool version >= (=cloud.version=).

```code
$ tctl version
# Teleport v(=cloud.version=) go(=teleport.golang=)
```

See [Installation](../../installation.mdx) for details.

(!docs/pages/includes/tctl.mdx!)

</TabItem>
</Tabs>


(!docs/pages/includes/kubernetes-access/helm-k8s.mdx!)

(!docs/pages/includes/tctl.mdx!)
56 changes: 2 additions & 54 deletions docs/pages/kubernetes-access/guides/multiple-clusters.mdx
Original file line number Diff line number Diff line change
@@ -7,73 +7,21 @@ This guide will show you how to use Teleport as an access plane for multiple Kub

## Prerequisites

<Tabs>
<TabItem scope={["oss"]} label="Open Source">

- A Teleport cluster running on Kubernetes, version >=
v(=kubernetes.major_version=).(=kubernetes.minor_version=).0. We will assume
that you have followed the
[Kubernetes with SSO](../getting-started/cluster.mdx) guide
- The `jq` tool to process `JSON` output. This is available via common package managers
- An additional Kubernetes cluster version >=
v(=kubernetes.major_version=).(=kubernetes.minor_version=).0
- Helm >= (=helm.version=)

(!docs/pages/includes/helm.mdx!)


</TabItem>
<TabItem
scope={["enterprise"]} label="Enterprise">

- A Teleport cluster running on Kubernetes, version >=
v(=kubernetes.major_version=).(=kubernetes.minor_version=).0. We will assume
that you have followed the
[Kubernetes with SSO](../getting-started/cluster.mdx) guide
- The `jq` tool to process `JSON` output. This is available via common package managers
- An additional Kubernetes cluster version >=
v(=kubernetes.major_version=).(=kubernetes.minor_version=).0
- Helm >= (=helm.version=)

(!docs/pages/includes/helm.mdx!)


</TabItem>
<TabItem scope={["cloud"]}
label="Teleport Cloud">

- A Teleport Cloud account. If you do not have one, visit the
[sign up page](https://goteleport.com/signup/) to begin your free trial
(!docs/pages/includes/edition-prereqs-tabs.mdx!)

- The Teleport Kubernetes Service running in a Kubernetes cluster, version >=
v(=kubernetes.major_version=).(=kubernetes.minor_version=).0. We will assume
that you have already followed
[Connect a Kubernetes Cluster to Teleport](../getting-started/agent.mdx)

- The `jq` tool to process `JSON` output. This is available via common package
managers

- The `tctl` admin tool version >= (=teleport.version=).

```code
$ tctl version
# Teleport v(=teleport.version=) go(=teleport.golang=)
```

See [Installation](../../installation.mdx) for details.

(!docs/pages/includes/tctl.mdx!)

- An additional Kubernetes cluster version >=
v(=kubernetes.major_version=).(=kubernetes.minor_version=).0

- Helm >= (=helm.version=)

(!docs/pages/includes/helm.mdx!)


</TabItem>
</Tabs>
(!docs/pages/includes/tctl.mdx!)

## Connecting clusters

Loading

0 comments on commit 07914f7

Please sign in to comment.