Skip to content

Commit 6932f5b

Browse files
committed
Merge branch 'main' into wca/introspection-foss-docs
2 parents da8fffa + a98ff08 commit 6932f5b

175 files changed

Lines changed: 1717 additions & 900 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.dockerignore

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
**/.dockerignore
2+
**/.env
3+
**/.git
4+
**/.gitignore
5+
**/.project
6+
**/.settings
7+
**/.toolstarget
8+
**/.vs
9+
**/.vscode
10+
**/.idea
11+
**/*.*proj.user
12+
**/*.dbmdl
13+
**/*.jfm
14+
**/azds.yaml
15+
**/bin
16+
**/node_modules
17+
**/npm-debug.log
18+
**/obj
19+
**/secrets.dev.yaml
20+
**/values.dev.yaml
21+
22+
**/.devcontainer
23+
**/.fleet
24+
**/.husky
25+
**/.run
26+
**/.space
27+
**/dist
28+
docker-compose*.yml
29+
Dockerfile*
30+
LICENSE
31+
LICENSE-CODE
32+
README.md
33+
redirect.conf

.github/workflows/link-checker.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,5 +37,5 @@ jobs:
3737
env:
3838
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
3939
with:
40-
args: "--no-progress --max-concurrency 8 --skip-missing --accept 200,429 --exclude-path root/llms.txt --exclude-path root/llms-full.txt --exclude-path root/llms-small.txt --exclude-loopback --require-https --exclude sample.duendesoftware.com --exclude docs.duendesoftware.com --exclude sitemap --exclude \"https://github.com/DuendeArchive/IdentityModel.AspNetCore/\" --root-dir \"$PWD/root\" root/**"
40+
args: "--no-progress --max-concurrency 8 --skip-missing --accept 200,429 --exclude-path root/_llms-txt --exclude-path root/llms.txt --exclude-path root/llms-full.txt --exclude-path root/llms-small.txt --exclude-loopback --require-https --exclude sample.duendesoftware.com --exclude sitemap --exclude \"https://github.com/DuendeArchive/IdentityModel.AspNetCore/\" --root-dir \"$PWD/root\" root/**"
4141
fail: true

Dockerfile

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
FROM node:22-alpine AS builder
2+
3+
EXPOSE 8080
4+
5+
WORKDIR /app
6+
COPY package.json package-lock.json ./
7+
RUN npm install --no-cache
8+
COPY . .
9+
RUN chmod +x build.sh
10+
11+
RUN ./build.sh
12+
13+
FROM nginx:stable-alpine AS final
14+
15+
ARG APPLICATION_VERSION
16+
COPY deployment/nginx.conf /etc/nginx/nginx.conf
17+
COPY deployment/default.conf /etc/nginx/conf.d/default.conf
18+
RUN sed -i "s|\$APPLICATION_VERSION|${APPLICATION_VERSION}|g" /etc/nginx/conf.d/default.conf
19+
COPY --from=builder --chown=nginx:nginx /app/root/redirect.conf /etc/nginx/extra/redirect.conf
20+
21+
RUN rm -rf /usr/share/nginx/html/*
22+
COPY --from=builder --chown=nginx:nginx /app/root/ /usr/share/nginx/html/
23+
RUN rm -rf /usr/share/nginx/html/redirect.conf
24+
25+
RUN mkdir -p /var/cache/nginx
26+
27+
RUN chown -R nginx:nginx /var/cache/nginx
28+
RUN touch /var/run/nginx.pid && \
29+
chown -R nginx:nginx /var/run/nginx.pid
30+
31+
USER nginx
32+
33+
WORKDIR /usr/share/nginx/html

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ Welcome to the documentation of all [Duende Software](https://duendesoftware.com
44

55
## Getting Started
66

7-
You will need Node 22+ installed on your operating system and in the PATH.
7+
You will need Node 22+ installed on your operating system and available in the PATH.
88

99
* Run `npm install` to restore all dependencies.
1010
* Use `npm run dev` to run the documentation site locally.
@@ -153,4 +153,4 @@ For all licensing information, refer to the relevant license files:
153153
* [LICENSE](LICENSE) - License for the documentation site content.
154154
* [LICENSE-CODE](LICENSE-CODE) - License for the code samples.
155155

156-
The Astro documentation engine is licensed under the [MIT license](https://github.com/withastro/astro/blob/main/LICENSE).
156+
The Astro documentation engine is licensed under the [MIT license](https://github.com/withastro/astro/blob/main/LICENSE).

astro.config.mjs

Lines changed: 53 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import * as fs from "node:fs";
1616
// https://github.com/withastro/astro/issues/9782
1717
import { duendeOpenGraphImage } from "./src/plugins/duende-og-image.js";
1818
import removeMarkdownExtensions from "./src/plugins/remove-markdown-extensions.js";
19+
import staticRedirects from "./src/plugins/static-redirects.js";
1920

2021
// https://astro.build/config
2122
export default defineConfig({
@@ -39,7 +40,57 @@ export default defineConfig({
3940
customCss: ["./src/styles/custom.css"],
4041
routeMiddleware: ["./src/plugins/search-topic-middleware.ts"],
4142
plugins: [
42-
starlightLlmsTxt(),
43+
starlightLlmsTxt({
44+
pageSeparator: "\n-----\n",
45+
customSets: [
46+
{
47+
label: "General Information",
48+
description:
49+
"General Information about Duende products, including license information, support options, security best practices and a glossary.",
50+
paths: ["general/**"],
51+
},
52+
{
53+
label: "IdentityServer",
54+
description: "Documentation for Duende IdentityServer",
55+
paths: ["identityserver/**"],
56+
},
57+
{
58+
label: "IdentityServer Quickstarts",
59+
description:
60+
"Step-by-step tutorials to get started with Duende IdentityServer",
61+
paths: ["identityserver/quickstarts/**"],
62+
},
63+
{
64+
label: "IdentityServer Sample Code",
65+
description: "Sample projects for Duende IdentityServer",
66+
paths: ["identityserver/samples/**"],
67+
},
68+
{
69+
label: "BFF Security Framework",
70+
description:
71+
"Documentation for Duende's Backend for Frontend (BFF) framework, used to secure browser-based frontends (e.g. SPAs with React, Vue, Angular, or Blazor applications) with ASP.NET Core backends",
72+
paths: ["bff/**"],
73+
},
74+
{
75+
label: "Access Token Management",
76+
description:
77+
"Documentation for Duende's open-source Access Token Management library which provides automatic access token management features for .NET worker and ASP.NET Core web applications",
78+
paths: ["accesstokenmanagement/**"],
79+
},
80+
{
81+
label: "IdentityModel",
82+
description:
83+
"Documentation for Duende's open-source IdentityModel library which provides an object model to interact with the endpoints defined in the various OAuth and OpenId Connect specifications",
84+
paths: ["accesstokenmanagement/**"],
85+
},
86+
{
87+
label: "IdentityModel.OidcClient",
88+
description:
89+
"Documentation for Duende's open-source IdentityModel.OidcClient library which can be used to build OIDC native clients with a variety of .NET UI tools",
90+
paths: ["identitymodel-oidcclient/**"],
91+
},
92+
],
93+
}),
4394
starlightHeadingBadges(),
4495
starlightAutoSidebar(),
4596
starlightGiscus({
@@ -174,6 +225,7 @@ export default defineConfig({
174225
redirectFrom({
175226
contentDir: "./src/content/docs",
176227
}),
228+
staticRedirects(),
177229
opengraphImages({
178230
options: {
179231
fonts: [

build.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
#!/bin/sh
12
set -e
23

34
npm install

deployment/default.conf

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
server {
2+
listen 8080;
3+
listen [::]:8080;
4+
server_name localhost;
5+
location / {
6+
root /usr/share/nginx/html;
7+
index index.html index.htm;
8+
add_header X-REVISION $APPLICATION_VERSION;
9+
}
10+
include /etc/nginx/extra/*.conf;
11+
12+
error_page 404 /404.html;
13+
location = /404.html {
14+
root /usr/share/nginx/html;
15+
}
16+
17+
error_page 500 502 503 504 /50x.html;
18+
location = /50x.html {
19+
root /usr/share/nginx/html;
20+
}
21+
}

deployment/nginx.conf

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
user nginx;
2+
worker_processes auto;
3+
4+
error_log /var/log/nginx/error.log notice;
5+
pid /var/run/nginx.pid;
6+
7+
8+
events {
9+
worker_connections 1024;
10+
}
11+
12+
13+
http {
14+
include /etc/nginx/mime.types;
15+
default_type application/octet-stream;
16+
17+
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
18+
'$status $body_bytes_sent "$http_referer" '
19+
'"$http_user_agent" "$http_x_forwarded_for"';
20+
21+
access_log /var/log/nginx/access.log main;
22+
23+
sendfile on;
24+
#tcp_nopush on;
25+
26+
keepalive_timeout 65;
27+
28+
gzip on;
29+
30+
include /etc/nginx/conf.d/*.conf;
31+
}

0 commit comments

Comments
 (0)