ci: reenable link checker & fix broken links (#15489)

Follow-up on #15484.
This commit is contained in:
Ethan
2024-11-13 16:04:10 +11:00
committed by GitHub
parent d6442db25a
commit fa69d1ca74
16 changed files with 47 additions and 32 deletions

View File

@ -1,9 +1,22 @@
dirs: dirs:
- docs - docs
excludedDirs:
# Downstream bug in linkspector means large markdown files fail to parse
# but these are autogenerated and shouldn't need checking
- docs/reference
# Older changelogs may contain broken links
- docs/changelogs
ignorePatterns: ignorePatterns:
- pattern: "://localhost" - pattern: "localhost"
- pattern: '://.*.?example\\.com' - pattern: "example.com"
- pattern: "github.com/<your_github_handle>"
- pattern: "mailto:" - pattern: "mailto:"
- pattern: "127.0.0.1"
- pattern: "0.0.0.0"
- pattern: "JFROG_URL"
- pattern: "coder.company.org"
# These real sites were blocking the linkspector action / GitHub runner IPs(?)
- pattern: "i.imgur.com"
- pattern: "code.visualstudio.com"
- pattern: "www.emacswiki.org"
aliveStatusCodes: aliveStatusCodes:
- 200 - 200

View File

@ -4,11 +4,11 @@ on:
schedule: schedule:
- cron: "0 9 * * 1" - cron: "0 9 * * 1"
workflow_dispatch: # allows to run manually for testing workflow_dispatch: # allows to run manually for testing
# pull_request: pull_request:
# branches: branches:
# - main - main
# paths: paths:
# - "docs/**" - "docs/**"
permissions: permissions:
contents: read contents: read
@ -33,6 +33,7 @@ jobs:
reporter: github-pr-review reporter: github-pr-review
config_file: ".github/.linkspector.yml" config_file: ".github/.linkspector.yml"
fail_on_error: "true" fail_on_error: "true"
filter_mode: "nofilter"
- name: Send Slack notification - name: Send Slack notification
if: failure() && github.event_name == 'schedule' if: failure() && github.event_name == 'schedule'

View File

@ -11,7 +11,7 @@ capabilities, allowing Coder to efficiently deploy, scale, and manage workspaces
across a distributed infrastructure. This ensures high availability, fault across a distributed infrastructure. This ensures high availability, fault
tolerance, and scalability for Coder deployments. Coder is deployed on this tolerance, and scalability for Coder deployments. Coder is deployed on this
cluster using the cluster using the
[Helm chart](../../install/kubernetes.md#install-coder-with-helm). [Helm chart](../../install/kubernetes.md#4-install-coder-with-helm).
## Methodology ## Methodology
@ -113,7 +113,7 @@ on the workload size to ensure deployment stability.
#### CPU and memory usage #### CPU and memory usage
Enabling Enabling
[agent stats collection](../../reference/cli/index.md#--prometheus-collect-agent-stats) [agent stats collection](../../reference/cli/server.md#--prometheus-collect-agent-stats)
(optional) may increase memory consumption. (optional) may increase memory consumption.
Enabling direct connections between users and workspace agents (apps or SSH Enabling direct connections between users and workspace agents (apps or SSH

View File

@ -14,7 +14,7 @@ or deployment, such as:
[`kubernetes_deployment`](https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/resources/deployment) [`kubernetes_deployment`](https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/resources/deployment)
Terraform resource, which requires the `coder` service account to have Terraform resource, which requires the `coder` service account to have
permission to create deployments. For example, if you use permission to create deployments. For example, if you use
[Helm](../../install/kubernetes.md#install-coder-with-helm) to install Coder, [Helm](../../install/kubernetes.md#4-install-coder-with-helm) to install Coder,
you should set `coder.serviceAccount.enableDeployments=true` in your you should set `coder.serviceAccount.enableDeployments=true` in your
`values.yaml` `values.yaml`

View File

@ -56,7 +56,7 @@ In order for clients to be able to establish direct connections:
communicate with each other using their locally assigned IP addresses, then a communicate with each other using their locally assigned IP addresses, then a
direct connection can be established immediately. Otherwise, the client and direct connection can be established immediately. Otherwise, the client and
agent will contact agent will contact
[the configured STUN servers](../../reference/cli/server.md#derp-server-stun-addresses) [the configured STUN servers](../../reference/cli/server.md#--derp-server-stun-addresses)
to try and determine which `ip:port` can be used to communicate with their to try and determine which `ip:port` can be used to communicate with their
counterpart. See [STUN and NAT](./stun.md) for more details on how this counterpart. See [STUN and NAT](./stun.md) for more details on how this
process works. process works.

View File

@ -4,7 +4,8 @@ Workspace proxies provide low-latency experiences for geo-distributed teams.
Coder's networking does a best effort to make direct connections to a workspace. Coder's networking does a best effort to make direct connections to a workspace.
In situations where this is not possible, such as connections via the web In situations where this is not possible, such as connections via the web
terminal and [web IDEs](../../user-guides/workspace-access/index.md#web-ides), terminal and
[web IDEs](../../user-guides/workspace-access/index.md#other-web-ides),
workspace proxies are able to reduce the amount of distance the network traffic workspace proxies are able to reduce the amount of distance the network traffic
needs to travel. needs to travel.

View File

@ -1,7 +1,7 @@
# External provisioners # External provisioners
By default, the Coder server runs By default, the Coder server runs
[built-in provisioner daemons](../reference/cli/server.md#provisioner-daemons), [built-in provisioner daemons](../reference/cli/server.md#--provisioner-daemons),
which execute `terraform` during workspace and template builds. However, there which execute `terraform` during workspace and template builds. However, there
are often benefits to running external provisioner daemons: are often benefits to running external provisioner daemons:
@ -235,17 +235,17 @@ This is illustrated in the below table:
Provisioners can broadly be categorized by scope: `organization` or `user`. The Provisioners can broadly be categorized by scope: `organization` or `user`. The
scope of a provisioner can be specified with scope of a provisioner can be specified with
[`-tag=scope=<scope>`](../reference/cli/provisioner_start.md#t---tag) when [`-tag=scope=<scope>`](../reference/cli/provisioner_start.md#-t---tag) when
starting the provisioner daemon. Only users with at least the starting the provisioner daemon. Only users with at least the
[Template Admin](./users/index.md#roles) role or higher may create [Template Admin](./users/index.md#roles) role or higher may create
organization-scoped provisioner daemons. organization-scoped provisioner daemons.
There are two exceptions: There are two exceptions:
- [Built-in provisioners](../reference/cli/server.md#provisioner-daemons) are - [Built-in provisioners](../reference/cli/server.md#--provisioner-daemons) are
always organization-scoped. always organization-scoped.
- External provisioners started using a - External provisioners started using a
[pre-shared key (PSK)](../reference/cli/provisioner_start.md#psk) are always [pre-shared key (PSK)](../reference/cli/provisioner_start.md#--psk) are always
organization-scoped. organization-scoped.
### Organization-Scoped Provisioners ### Organization-Scoped Provisioners
@ -369,7 +369,7 @@ docker run --rm -it \
As mentioned above, the Coder server will run built-in provisioners by default. As mentioned above, the Coder server will run built-in provisioners by default.
This can be disabled with a server-wide This can be disabled with a server-wide
[flag or environment variable](../reference/cli/server.md#provisioner-daemons). [flag or environment variable](../reference/cli/server.md#--provisioner-daemons).
```sh ```sh
coder server --provisioner-daemons=0 coder server --provisioner-daemons=0

View File

@ -7,7 +7,7 @@ preventing attackers with database access from using them to impersonate users.
## How it works ## How it works
Coder allows administrators to specify Coder allows administrators to specify
[external token encryption keys](../../reference/cli/server.md#external-token-encryption-keys). [external token encryption keys](../../reference/cli/server.md#--external-token-encryption-keys).
If configured, Coder will use these keys to encrypt external user tokens before If configured, Coder will use these keys to encrypt external user tokens before
storing them in the database. The encryption algorithm used is AES-256-GCM with storing them in the database. The encryption algorithm used is AES-256-GCM with
a 32-byte key length. a 32-byte key length.

View File

@ -145,7 +145,7 @@ You will then see your new template in the dashboard.
## From scratch (advanced) ## From scratch (advanced)
There may be cases where you want to create a template from scratch. You can use There may be cases where you want to create a template from scratch. You can use
[any Terraform provider](https://registry.terraform.com) with Coder to create [any Terraform provider](https://registry.terraform.io) with Coder to create
templates for additional clouds (e.g. Hetzner, Alibaba) or orchestrators templates for additional clouds (e.g. Hetzner, Alibaba) or orchestrators
(VMware, Proxmox) that we do not provide example templates for. (VMware, Proxmox) that we do not provide example templates for.

View File

@ -97,7 +97,7 @@ to set the default quiet hours to a time when most users are not expected to be
using Coder. using Coder.
Admins can force users to use the default quiet hours with the Admins can force users to use the default quiet hours with the
[CODER_ALLOW_CUSTOM_QUIET_HOURS](../../../reference/cli/server.md#allow-custom-quiet-hours) [CODER_ALLOW_CUSTOM_QUIET_HOURS](../../../reference/cli/server.md#--allow-custom-quiet-hours)
environment variable. Users will still be able to see the page, but will be environment variable. Users will still be able to see the page, but will be
unable to set a custom time or timezone. If users have already set a custom unable to set a custom time or timezone. If users have already set a custom
quiet hours schedule, it will be ignored and the default will be used instead. quiet hours schedule, it will be ignored and the default will be used instead.

View File

@ -326,9 +326,8 @@ the OIDC provider. See
> Depending on the OIDC provider, this claim may be named differently. Common > Depending on the OIDC provider, this claim may be named differently. Common
> ones include `groups`, `memberOf`, and `roles`. > ones include `groups`, `memberOf`, and `roles`.
Next configure the Coder server to read groups from the claim name with the Next configure the Coder server to read groups from the claim name with the OIDC
[OIDC organization field](../../reference/cli/server.md#--oidc-organization-field) organization field server flag:
server flag:
```sh ```sh
# as an environment variable # as an environment variable

View File

@ -137,7 +137,7 @@ provider_installation {
## Run offline via Docker ## Run offline via Docker
Follow our [docker-compose](./docker.md#run-coder-with-docker-compose) Follow our [docker-compose](./docker.md#install-coder-via-docker-compose)
documentation and modify the docker-compose file to specify your custom Coder documentation and modify the docker-compose file to specify your custom Coder
image. Additionally, you can add a volume mount to add providers to the image. Additionally, you can add a volume mount to add providers to the
filesystem mirror without re-building the image. filesystem mirror without re-building the image.

View File

@ -82,7 +82,7 @@ activity.
}" }"
``` ```
- [Manually send workspace activity](../reference/api/agents.md#submit-workspace-agent-stats): - [Manually send workspace activity](../reference/api/workspaces.md#extend-workspace-deadline-by-id):
Keep a workspace "active," even if there is not an open connection (e.g. for a Keep a workspace "active," even if there is not an open connection (e.g. for a
long-running machine learning job). long-running machine learning job).
@ -94,10 +94,10 @@ activity.
do do
if pgrep -f "my_training_script.py" > /dev/null if pgrep -f "my_training_script.py" > /dev/null
then then
curl -X POST "https://coder.example.com/api/v2/workspaceagents/me/report-stats" \ curl -X POST "https://coder.example.com/api/v2/workspaces/$WORKSPACE_ID/extend" \
-H "Coder-Session-Token: $CODER_AGENT_TOKEN" \ -H "Coder-Session-Token: $CODER_AGENT_TOKEN" \
-d '{ -d '{
"connection_count": 1 "deadline": "2019-08-24T14:15:22Z"
}' }'
# Sleep for 30 minutes (1800 seconds) if the job is running # Sleep for 30 minutes (1800 seconds) if the job is running

View File

@ -16,7 +16,7 @@ extension, authenticates with Coder, and connects to the workspace.
![Demo](https://github.com/coder/vscode-coder/raw/main/demo.gif?raw=true) ![Demo](https://github.com/coder/vscode-coder/raw/main/demo.gif?raw=true)
> The `VS Code Desktop` button can be hidden by enabling > The `VS Code Desktop` button can be hidden by enabling
> [Browser-only connections](../../admin/networking/index.md#browser-only-connections-enterprise). > [Browser-only connections](../../admin/networking/index.md#browser-only-connections-enterprise-premium).
### Manual Installation ### Manual Installation

View File

@ -76,6 +76,6 @@ guide.
## SSH Fallback ## SSH Fallback
If you prefer to run web IDEs in localhost, you can port forward using If you prefer to run web IDEs in localhost, you can port forward using
[SSH](../index.md#ssh) or the Coder CLI `port-forward` sub-command. Some web [SSH](./index.md#ssh) or the Coder CLI `port-forward` sub-command. Some web IDEs
IDEs may not support URL base path adjustment so port forwarding is the only may not support URL base path adjustment so port forwarding is the only
approach. approach.

View File

@ -112,7 +112,8 @@ To set a workspace's schedule, go to the workspace, then **Settings** >
![Scheduling UI](../images/schedule.png) ![Scheduling UI](../images/schedule.png)
Coder might also stop a workspace automatically if there is a Coder might also stop a workspace automatically if there is a
[template update](../admin/templates/index.md#Start/stop) available. [template update](../admin/templates/managing-templates/index.md#updating-templates)
available.
Learn more about [workspace lifecycle](./workspace-lifecycle.md) and our Learn more about [workspace lifecycle](./workspace-lifecycle.md) and our
[scheduling features](./workspace-scheduling.md). [scheduling features](./workspace-scheduling.md).