diff --git a/.env.example b/.env.example index 5820d13..75f76dd 100644 --- a/.env.example +++ b/.env.example @@ -9,6 +9,7 @@ PROJECT_NAME=api-docs CLOUDFLARE_ANALYTICS_TOKEN=xxxxxxxxxxxxxxxxxxxxxxx OPENAPI_DOCS_BLOG_URL=http://${API_DOCS_DOMAIN}:${NGINX_HOST_HTTP_PORT}/blog/openapi.yaml +OPENAPI_DOCS_DAILY_TIPS_URL=http://${API_DOCS_DOMAIN}:${NGINX_HOST_HTTP_PORT}/daily-tips/openapi.yaml #----------------------------------------------------------- #----------------------- Runner --------------------------- diff --git a/docusaurus.config.ts b/docusaurus.config.ts index ff7acb7..5b0ca41 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -4,7 +4,7 @@ import type * as Preset from '@docusaurus/preset-classic'; import Navbar from "./src/configs/navbar"; import PrismConfig from "./src/configs/prism"; import type * as OpenApiPlugin from "docusaurus-plugin-openapi-docs"; -import { CSlantBlogConfig } from "./src/configs/openApiPlugins"; +import { CSlantBlogConfig, CSlantDailyTipsConfig } from "./src/configs/openApiPlugins"; require('dotenv').config(); // This runs in Node.js - Don't use client-side code here (browser APIs, JSX...) @@ -81,6 +81,7 @@ const config: Config = { docsPluginId: "classic", config: { blog: CSlantBlogConfig satisfies OpenApiPlugin.Options, + dailyTips: CSlantDailyTipsConfig satisfies OpenApiPlugin.Options, }, }, ], diff --git a/gitlab-ci.yml b/gitlab-ci.yml new file mode 100644 index 0000000..6b01acf --- /dev/null +++ b/gitlab-ci.yml @@ -0,0 +1,15 @@ +stages: + - build + +variables: + GIT_STRATEGY: none + +build: + stage: build + tags: + - csl2 + rules: + - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH + script: + - cd $API_DOCS_REPO_PATH + - ./runner.sh a diff --git a/src/configs/navbar.ts b/src/configs/navbar.ts index b8675eb..301dabe 100644 --- a/src/configs/navbar.ts +++ b/src/configs/navbar.ts @@ -17,6 +17,11 @@ const Navbar = { position: "left", to: "/docs/category/blog-api", }, + { + label: "Daily Tips API", + position: "left", + to: "/docs/category/daily-tips-api", + }, { href: 'https://github.com/cslant', diff --git a/src/configs/openApiPlugins.ts b/src/configs/openApiPlugins.ts index a961bec..ef9fcdc 100644 --- a/src/configs/openApiPlugins.ts +++ b/src/configs/openApiPlugins.ts @@ -5,3 +5,11 @@ export const CSlantBlogConfig = { groupPathsBy: "tag", }, }; + +export const CSlantDailyTipsConfig = { + outputDir: "docs/daily-tips", + specPath: `${process.env.OPENAPI_DOCS_DAILY_TIPS_URL}`, + sidebarOptions: { + groupPathsBy: "tag", + }, +}; diff --git a/src/configs/openApiSidebar.ts b/src/configs/openApiSidebar.ts index ab8a4ce..0d95222 100644 --- a/src/configs/openApiSidebar.ts +++ b/src/configs/openApiSidebar.ts @@ -13,6 +13,18 @@ export const OpenApiSidebar: SidebarsConfig = { slug: '/category/blog-api' }, items: require('../../docs/blog/sidebar.js') + }, + { + type: 'category', + label: 'Daily Tips', + link: { + type: 'generated-index', + title: 'Daily Tips API', + description: + 'CSlant Daily Tips API Documentation uses the OpenAPI Specification to provide a detailed reference for all available endpoints, request and response examples, and more.', + slug: '/category/daily-tips-api' + }, + items: require('../../docs/daily-tips/sidebar.js') } ] };