Zum Inhalt springen

Umgebungsvariablen

Das Dokumentationsthema liest Umgebungsvariablen zur Build-Zeit aus config.ts und benutzerdefinierten Komponenten. Inhalts-Repositorys setzen diese in ihren GitHub Actions-Workflows, um jede Website anzupassen, ohne die Konfiguration zu ändern.

VariableStandardZweck
DOCS_TITLEDocumentationSeitentitel, der in der Kopfzeile und im Browser-Tab angezeigt wird
DOCS_SITEhttps://f5-sales-demo.github.ioKanonische Basis-URL für die bereitgestellte Website
DOCS_BASE/URL-Basispfad (z. B. /my-repo/ für Projektseiten)
DOCS_DESCRIPTION(leere Zeichenkette)Website-Beschreibung für Metadaten und das llms.txt-Plugin
DOCS_HOMEhttps://f5-sales-demo.github.io/docs/URL der Startseite, die über den Website-Titel verlinkt wird
GITHUB_REPOSITORY(leere Zeichenkette)Wird verwendet, um den GitHub-Social-Link und Bearbeitungslinks zu erstellen
LLMS_OPTIONAL_LINKS[]JSON-Array mit zusätzlichen Links für das llms.txt-Plugin
config.ts
const title = options.title || process.env.DOCS_TITLE || 'Documentation';

Wird an die Starlight-Option title und das Plugin starlight-llms-txt übergeben. Erscheint in der Seitenkopfzeile und im HTML-Tag <title>.

config.ts
const site = options.site || process.env.DOCS_SITE || 'https://f5-sales-demo.github.io';

Setzt die Astro-Eigenschaft site auf oberster Ebene. Wird für kanonische URLs, die Sitemap-Generierung und Open-Graph-Metadaten verwendet.

config.ts
const base = options.base || process.env.DOCS_BASE || '/';

Setzt die Astro-Eigenschaft base auf oberster Ebene. Erforderlich bei der Bereitstellung in einem Unterverzeichnis (z. B. https://example.github.io/my-repo/).

config.ts
const description = options.description || process.env.DOCS_DESCRIPTION || '';

Wird als Website-Beschreibung an das Plugin starlight-llms-txt übergeben. Wird in der generierten Datei llms.txt verwendet.

components/SiteTitle.astro
const docsHome = process.env.DOCS_HOME || 'https://f5-sales-demo.github.io/docs/';

Wird von der benutzerdefinierten Komponente SiteTitle.astro gelesen. Verknüpft den Website-Titel in der Kopfzeile mit dieser URL, sodass Benutzer zu einer zentralen Dokumentations-Startseite zurücknavigieren können. Nützlich, wenn mehrere Inhalts-Repositorys dasselbe Dokumentationsthema verwenden und ein einheitlicher „Home”-Link auf allen Websites gewünscht wird.

config.ts
const githubRepository = options.githubRepository || process.env.GITHUB_REPOSITORY || '';

Wird verwendet, um das GitHub-Social-Symbol in der Seitenkopfzeile und die Basis-URL für Bearbeitungslinks zu generieren. GitHub Actions setzt diese Variable automatisch (z. B. owner/repo).

config.ts
const llmsOptionalLinks = options.llmsOptionalLinks
|| (process.env.LLMS_OPTIONAL_LINKS ? JSON.parse(process.env.LLMS_OPTIONAL_LINKS) : []);

Ein JSON-kodiertes Array von { title, url }-Objekten, das an das Plugin starlight-llms-txt übergeben wird. Diese erscheinen als zusätzliche Links in der generierten Datei llms.txt.

Beispielwert:

[{"title": "API Reference", "url": "https://api.example.com/docs"}]

Inhalts-Repositorys übergeben diese Variablen über ihren Workflow:

jobs:
docs:
uses: f5-sales-demo/docs-control/.github/workflows/github-pages-deploy.yml@main
with:
docs_title: "My Project Docs"
docs_site: "https://example.github.io"
docs_base: "/my-project/"
docs_home: "https://example.github.io/home/"

Die Variable GITHUB_REPOSITORY wird vom GitHub Actions-Runner automatisch bereitgestellt und muss nicht manuell gesetzt werden.