Skip to content

Commit ad4c254

Browse files
authored
add linter command for checking broken links (#415)
1 parent ee2a182 commit ad4c254

File tree

19 files changed

+28
-25
lines changed

19 files changed

+28
-25
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ All commands are run from the root of the project, from a terminal:
5050
| `npm run dev` | Starts local dev server at `localhost:4321` |
5151
| `npm run build` | Build your production site to `./dist/` |
5252
| `npm run preview` | Preview your build locally, before deploying |
53+
| `npm run lint:links` | Validate internal links in documentation |
5354
| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |
5455
| `npm run astro -- --help` | Get help using the Astro CLI |
5556

astro.config.mjs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -194,8 +194,9 @@ export default defineConfig({
194194
leftSidebarEnabled: false,
195195
}),
196196
starlightLinksValidator({
197-
errorOnRelativeLinks: false,
198-
errorOnLocalLinks: false,
197+
errorOnRelativeLinks: true,
198+
errorOnLocalLinks: false, // Allow localhost links in tutorials (they're instructional)
199+
errorOnInvalidHashes: true,
199200
}),
200201
starlightUtils({
201202
multiSidebar: {

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@
77
"start": "astro dev",
88
"build": "astro build",
99
"preview": "astro preview",
10-
"astro": "astro"
10+
"astro": "astro",
11+
"lint:links": "astro build"
1112
},
1213
"dependencies": {
1314
"@astrojs/markdoc": "^0.15.10",

src/content/docs/aws/capabilities/security-testing/iam-policy-enforcement.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,4 +124,4 @@ If the IAM policies are not correctly enforced, you will get an unsuccessful res
124124

125125
## Feature coverage
126126

127-
The feature coverage is documented in the [IAM coverage documentation]().
127+
The feature coverage is documented in the [IAM coverage documentation](/aws/capabilities/security-testing/iam-coverage/).

src/content/docs/aws/services/cloudformation.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ The Resource Browser allows you to perform the following actions:
140140
The following code snippets and sample applications provide practical examples of how to use CloudFormation in LocalStack for various use cases:
141141

142142
- [Serverless Container-based APIs with Amazon ECS & API Gateway](https://github.com/localstack/serverless-api-ecs-apigateway-sample)
143-
- [Deploying containers on ECS clusters using ECR and Fargate]()
143+
- [Deploying containers on ECS clusters using ECR and Fargate](/aws/tutorials/ecs-ecr-container-app/)
144144
- [Messaging Processing application with SQS, DynamoDB, and Fargate](https://github.com/localstack/sqs-fargate-ddb-cdk-go)
145145

146146
## Feature coverage

src/content/docs/aws/services/dynamodbstreams.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ The stream records are written to a DynamoDB stream, which is an ordered flow of
1313
DynamoDB Streams records data in near-real time, enabling you to develop workflows that process these streams and respond based on their contents.
1414

1515
LocalStack supports DynamoDB Streams, allowing you to create and manage streams in a local environment.
16-
The supported APIs are available on our [DynamoDB Streams coverage page](), which provides information on the extent of DynamoDB Streams integration with LocalStack.
16+
The supported APIs are available on our [API coverage section](#api-coverage), which provides information on the extent of DynamoDB Streams integration with LocalStack.
1717

1818
## Getting started
1919

src/content/docs/aws/services/elasticache.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ awslocal elasticache describe-cache-clusters --show-cache-node-info --query "Cac
4949
}
5050
```
5151

52-
The cache cluster uses a random port of the [external service port range]().
52+
The cache cluster uses a random port of the [external service port range](/aws/capabilities/networking/external-port-range/).
5353
Use this port number to connect to the Redis instance like so:
5454

5555
```bash

src/content/docs/aws/services/elb.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ http(s)://localhost.localstack.cloud:4566/_aws/elb/example-lb/test/path
174174

175175
The following code snippets and sample applications provide practical examples of how to use ELB in LocalStack for various use cases:
176176

177-
- [Setting up Elastic Load Balancing (ELB) Application Load Balancers using LocalStack, deployed via the Serverless framework]()
177+
- [Setting up Elastic Load Balancing (ELB) Application Load Balancers using LocalStack, deployed via the Serverless framework](/aws/tutorials/elb-load-balancing/)
178178

179179
## Current Limitations
180180

src/content/docs/aws/services/es.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import FeatureCoverage from "../../../../components/feature-coverage/FeatureCove
99
## Introduction
1010

1111
The Elasticsearch Service in LocalStack lets you create one or more single-node Elasticsearch/OpenSearch cluster that behaves like the [Amazon Elasticsearch Service](https://aws.amazon.com/opensearch-service/the-elk-stack/what-is-elasticsearch/).
12-
This service is, like its AWS counterpart, heavily linked with the [OpenSearch Service](../opensearch).
12+
This service is, like its AWS counterpart, heavily linked with the [OpenSearch Service](/aws/services/opensearch/).
1313
Any cluster created with the Elasticsearch Service will show up in the OpenSearch Service and vice versa.
1414

1515
## Creating an Elasticsearch cluster
@@ -149,7 +149,7 @@ There are three configurable strategies that govern how domain endpoints are cre
149149
| - | - | - |
150150
| `domain` | `<domain-name>.<region>.es.localhost.localstack.cloud:4566` | This is the default strategy that uses the `localhost.localstack.cloud` domain to route to your localhost |
151151
| `path` | `localhost:4566/es/<region>/<domain-name>` | An alternative that can be useful if you cannot resolve LocalStack's localhost domain |
152-
| `port` | `localhost:<port-from-range>` | Exposes the cluster(s) directly with ports from the [external service port range]()|
152+
| `port` | `localhost:<port-from-range>` | Exposes the cluster(s) directly with ports from the [external service port range](/aws/capabilities/networking/external-port-range/)|
153153
| `off` | | *Deprecated*. This value now reverts to the `port` setting, using a port from the given range instead of `4571` |
154154

155155
Regardless of the service from which the clusters were created, the domain of the cluster always corresponds to the engine type (OpenSearch or Elasticsearch) of the cluster.
@@ -204,7 +204,7 @@ localstack@machine % tree -L 4 volume/state
204204

205205
Since LocalStack 1.4.0, the OpenSearch and ElasticSearch services support "Advanced Security Options".
206206
This feature is currently only supported for OpenSearch domains (which can also be created by the elasticsearch service).
207-
More info can be found on [the OpenSearch Service docs page](../opensearch#advanced-security-options).
207+
More info can be found on [the OpenSearch Service docs page](/aws/services/opensearch/#advanced-security-options).
208208

209209
## Custom Elasticsearch backends
210210

src/content/docs/aws/services/glue.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ Once the crawler has finished running and is back in `READY` state, the Glue tab
297297

298298
The Glue Schema Registry allows you to centrally discover, control, and evolve data stream schemas.
299299
With the Schema Registry, you can manage and enforce schemas and schema compatibilities in your streaming applications.
300-
It integrates nicely with [Managed Streaming for Kafka (MSK)](../managed-streaming-for-kafka).
300+
It integrates nicely with [Managed Streaming for Kafka (MSK)](/aws/services/kafka/).
301301

302302
:::note
303303
Currently, LocalStack supports the AVRO dataformat for the Glue Schema Registry.

0 commit comments

Comments
 (0)