Skip to content

docs: convert alerts to use GitHub Flavored Markdown (GFM) #16850

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

Merged
merged 14 commits into from
Mar 10, 2025
Prev Previous commit
Next Next commit
edit blockquotes
  • Loading branch information
EdwardAngert committed Mar 7, 2025
commit af0fdd872b25f466d3692d2b18decd9333ae9fa8
8 changes: 3 additions & 5 deletions docs/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -117,9 +117,7 @@ This mode is useful for testing HA or validating more complex setups.

### Deploying a PR

> You need to be a member or collaborator of the of
> [coder](https://github.com/coder) GitHub organization to be able to deploy a
> PR.
You need to be a member or collaborator of the [coder](https://github.com/coder) GitHub organization to be able to deploy a PR.

You can test your changes by creating a PR deployment. There are two ways to do
this:
Expand Down Expand Up @@ -257,8 +255,7 @@ Our frontend guide can be found [here](./contributing/frontend.md).

## Reviews

> The following information has been borrowed from
> [Go's review philosophy](https://go.dev/doc/contribute#reviews).
The following information has been borrowed from [Go's review philosophy](https://go.dev/doc/contribute#reviews).

Coder values thorough reviews. For each review comment that you receive, please
"close" it by implementing the suggestion or providing an explanation on why the
Expand Down Expand Up @@ -346,6 +343,7 @@ Breaking changes can be triggered in two ways:

### Security

> [!IMPORTANT]
> If you find a vulnerability, **DO NOT FILE AN ISSUE**. Instead, send an email
> to <security@coder.com>.

Expand Down
5 changes: 2 additions & 3 deletions docs/admin/infrastructure/validated-architectures/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,8 @@ cloud/on-premise computing, containerization, and the Coder platform.
| Reference architectures for up to 3,000 users | An approval of your architecture; the CVA solely provides recommendations and guidelines |
| Best practices for building a Coder deployment | Recommendations for every possible deployment scenario |

> For higher level design principles and architectural best practices, see
> Coder's
> [Well-Architected Framework](https://coder.com/blog/coder-well-architected-framework).
For higher level design principles and architectural best practices, see Coder's
[Well-Architected Framework](https://coder.com/blog/coder-well-architected-framework).

## General concepts

Expand Down
8 changes: 4 additions & 4 deletions docs/admin/integrations/opentofu.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,17 @@

<!-- Keeping this in as a placeholder for supporting OpenTofu. We should fix support for custom terraform binaries ASAP. -->

> ⚠️ This guide is a work in progress. We do not officially support using custom
> [!IMPORTANT]
> This guide is a work in progress. We do not officially support using custom
> Terraform binaries in your Coder deployment. To track progress on the work,
> see this related [GitHub Issue](https://github.com/coder/coder/issues/12009).

Coder deployments support any custom Terraform binary, including
[OpenTofu](https://opentofu.org/docs/) - an open source alternative to
Terraform.

> You can read more about OpenTofu and Hashicorp's licensing in our
> [blog post](https://coder.com/blog/hashicorp-license) on the Terraform
> licensing changes.
You can read more about OpenTofu and Hashicorp's licensing in our
[blog post](https://coder.com/blog/hashicorp-license) on the Terraform licensing changes.

## Using a custom Terraform binary

Expand Down
3 changes: 1 addition & 2 deletions docs/admin/licensing/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,7 @@ features, you can [request a trial](https://coder.com/trial) or

<!-- markdown-link-check-disable -->

> If you are an existing customer, you can learn more our new Premium plan in
> the [Coder v2.16 blog post](https://coder.com/blog/release-recap-2-16-0)
You can learn more about Coder Premium in the [Coder v2.16 blog post](https://coder.com/blog/release-recap-2-16-0)

<!-- markdown-link-check-enable -->

Expand Down
2 changes: 1 addition & 1 deletion docs/admin/monitoring/health-check.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ If there is an issue, you may see one of the following errors reported:
[`url.Parse`](https://pkg.go.dev/net/url#Parse). Example:
`https://dev.coder.com/`.

> **Tip:** You can check this [here](https://go.dev/play/p/CabcJZyTwt9).
You can use [the Go playground](https://go.dev/play/p/CabcJZyTwt9) for additional testing.

### EACS03

Expand Down
9 changes: 4 additions & 5 deletions docs/admin/monitoring/notifications/slack.md
Original file line number Diff line number Diff line change
Expand Up @@ -181,12 +181,11 @@ To build the server to receive webhooks and interact with Slack:
Slack requires the bot to acknowledge when a user clicks on a URL action button.
This is handled by setting up interactivity.

1. Under "Interactivity & Shortcuts" in your Slack app settings, set the Request
URL to match the public URL of your web server's endpoint.
Under "Interactivity & Shortcuts" in your Slack app settings, set the Request
URL to match the public URL of your web server's endpoint.

> Notice: You can use any public endpoint that accepts and responds to POST
> requests with HTTP 200. For temporary testing, you can set it to
> `https://httpbin.org/status/200`.
You can use any public endpoint that accepts and responds to POST requests with HTTP 200.
For temporary testing, you can set it to `https://httpbin.org/status/200`.

Once this is set, Slack will send interaction payloads to your server, which
must respond appropriately.
Expand Down
36 changes: 19 additions & 17 deletions docs/admin/networking/port-forwarding.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,17 +48,17 @@ For more examples, see `coder port-forward --help`.

## Dashboard

> To enable port forwarding via the dashboard, Coder must be configured with a
> [wildcard access URL](../../admin/setup/index.md#wildcard-access-url). If an
> access URL is not specified, Coder will create
> [a publicly accessible URL](../../admin/setup/index.md#tunnel) to reverse
> proxy the deployment, and port forwarding will work.
>
> There is a
> [DNS limitation](https://datatracker.ietf.org/doc/html/rfc1035#section-2.3.1)
> where each segment of hostnames must not exceed 63 characters. If your app
> name, agent name, workspace name and username exceed 63 characters in the
> hostname, port forwarding via the dashboard will not work.
To enable port forwarding via the dashboard, Coder must be configured with a
[wildcard access URL](../../admin/setup/index.md#wildcard-access-url). If an
access URL is not specified, Coder will create
[a publicly accessible URL](../../admin/setup/index.md#tunnel) to reverse
proxy the deployment, and port forwarding will work.

There is a
[DNS limitation](https://datatracker.ietf.org/doc/html/rfc1035#section-2.3.1)
where each segment of hostnames must not exceed 63 characters. If your app
name, agent name, workspace name and username exceed 63 characters in the
hostname, port forwarding via the dashboard will not work.

### From an coder_app resource

Expand Down Expand Up @@ -176,12 +176,14 @@ must include credentials (set `credentials: "include"` if using `fetch`) or the
requests cannot be authenticated and you will see an error resembling the
following:

> Access to fetch at
> '<https://coder.example.com/api/v2/applications/auth-redirect>' from origin
> '<https://8000--dev--user--apps.coder.example.com>' has been blocked by CORS
> policy: No 'Access-Control-Allow-Origin' header is present on the requested
> resource. If an opaque response serves your needs, set the request's mode to
> 'no-cors' to fetch the resource with CORS disabled.
```text
Access to fetch at
'<https://coder.example.com/api/v2/applications/auth-redirect>' from origin
'<https://8000--dev--user--apps.coder.example.com>' has been blocked by CORS
policy: No 'Access-Control-Allow-Origin' header is present on the requested
resource. If an opaque response serves your needs, set the request's mode to
'no-cors' to fetch the resource with CORS disabled.
```

#### Headers

Expand Down
6 changes: 3 additions & 3 deletions docs/admin/networking/workspace-proxies.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,10 +104,10 @@ CODER_TLS_KEY_FILE="<key_file_location>"

### Running on Kubernetes

Make a `values-wsproxy.yaml` with the workspace proxy configuration:
Make a `values-wsproxy.yaml` with the workspace proxy configuration.

> Notice the `workspaceProxy` configuration which is `false` by default in the
> coder Helm chart.
Notice the `workspaceProxy` configuration which is `false` by default in the
Coder Helm chart:

```yaml
coder:
Expand Down
9 changes: 4 additions & 5 deletions docs/admin/provisioners.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,10 +104,9 @@ tags.

## Global PSK (Not Recommended)

> Global pre-shared keys (PSK) make it difficult to rotate keys or isolate
> provisioners.
>
> We do not recommend using global PSK.
We do not recommend using global PSK.

Global pre-shared keys (PSK) make it difficult to rotate keys or isolate provisioners.

A deployment-wide PSK can be used to authenticate any provisioner. To use a
global PSK, set a
Expand Down Expand Up @@ -158,7 +157,7 @@ coder templates push on-prem-chicago \

This can also be done in the UI when building a template:

> ![template tags](../images/admin/provisioner-tags.png)
![template tags](../images/admin/provisioner-tags.png)

Alternatively, a template can target a provisioner via
[workspace tags](https://github.com/coder/coder/tree/main/examples/workspace-tags)
Expand Down
6 changes: 4 additions & 2 deletions docs/admin/security/0001_user_apikeys_invalidation.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,8 @@ failed to check whether the API key corresponds to a deleted user.

## Indications of Compromise

> 💡 Automated remediation steps in the upgrade purge all affected API keys.
> [!TIP]
> Automated remediation steps in the upgrade purge all affected API keys.
> Either perform the following query before upgrade or run it on a backup of
> your database from before the upgrade.

Expand Down Expand Up @@ -81,7 +82,8 @@ Otherwise, the following information will be reported:
- User API key ID
- Time the affected API key was last used

> 💡 If your license includes the
> [!TIP]
> If your license includes the
> [Audit Logs](https://coder.com/docs/admin/audit-logs#filtering-logs) feature,
> you can then query all actions performed by the above users by using the
> filter `email:$USER_EMAIL`.
30 changes: 16 additions & 14 deletions docs/admin/security/database-encryption.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,20 +26,22 @@ The following database fields are currently encrypted:

Additional database fields may be encrypted in the future.

> Implementation notes: each encrypted database column `$C` has a corresponding
> `$C_key_id` column. This column is used to determine which encryption key was
> used to encrypt the data. This allows Coder to rotate encryption keys without
> invalidating existing tokens, and provides referential integrity for encrypted
> data.
>
> The `$C_key_id` column stores the first 7 bytes of the SHA-256 hash of the
> encryption key used to encrypt the data.
>
> Encryption keys in use are stored in `dbcrypt_keys`. This table stores a
> record of all encryption keys that have been used to encrypt data. Active keys
> have a null `revoked_key_id` column, and revoked keys have a non-null
> `revoked_key_id` column. You cannot revoke a key until you have rotated all
> values using that key to a new key.
### Implementation notes

Each encrypted database column `$C` has a corresponding
`$C_key_id` column. This column is used to determine which encryption key was
used to encrypt the data. This allows Coder to rotate encryption keys without
invalidating existing tokens, and provides referential integrity for encrypted
data.

The `$C_key_id` column stores the first 7 bytes of the SHA-256 hash of the
encryption key used to encrypt the data.

Encryption keys in use are stored in `dbcrypt_keys`. This table stores a
record of all encryption keys that have been used to encrypt data. Active keys
have a null `revoked_key_id` column, and revoked keys have a non-null
`revoked_key_id` column. You cannot revoke a key until you have rotated all
values using that key to a new key.

## Enabling encryption

Expand Down
1 change: 1 addition & 0 deletions docs/admin/security/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ For other security tips, visit our guide to

## Security Advisories

> [!IMPORTANT]
> If you discover a vulnerability in Coder, please do not hesitate to report it
> to us by following the instructions
> [here](https://github.com/coder/coder/blob/main/SECURITY.md).
Expand Down
4 changes: 2 additions & 2 deletions docs/admin/setup/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,7 @@ full list of the options, run `coder server --help` or see our
external URL that users and workspaces use to connect to Coder (e.g.
<https://coder.example.com>). This should not be localhost.

> Access URL should be an external IP address or domain with DNS records
> pointing to Coder.
Access URL should be an external IP address or domain with DNS records pointing to Coder.

### Tunnel

Expand Down Expand Up @@ -108,6 +107,7 @@ deployment information. Use `CODER_PG_CONNECTION_URL` to set the database that
Coder connects to. If unset, PostgreSQL binaries will be downloaded from Maven
(<https://repo1.maven.org/maven2>) and store all data in the config root.

> [!NOTE]
> Postgres 13 is the minimum supported version.

If you are using the built-in PostgreSQL deployment and need to use `psql` (aka
Expand Down
Loading