From a2c90e2de4784aafd8412eefc1b6bb93e1fe61a6 Mon Sep 17 00:00:00 2001 From: SoftFever Date: Sat, 3 Jan 2026 17:52:19 +0800 Subject: [PATCH] deploy doxygen doc to internals.orcaslicer.com --- .doxygen | 6 ++--- .github/workflows/doxygen-docs.yml | 41 ++++++++++++++++++++++++++++++ .gitignore | 1 + 3 files changed, 45 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/doxygen-docs.yml diff --git a/.doxygen b/.doxygen index fb8ae5f045..8d9f2471f6 100644 --- a/.doxygen +++ b/.doxygen @@ -48,7 +48,7 @@ PROJECT_NAME = OrcaSlicer # could be handy for archiving the generated documentation or if some version # control system is used. -PROJECT_NUMBER = 1.6.3 +PROJECT_NUMBER = latest # Using the PROJECT_BRIEF tag one can provide an optional one line description # for a project that appears at the top of each page and should give viewer a @@ -68,7 +68,7 @@ PROJECT_LOGO = ./resources/images/OrcaSlicer_32px.png # entered, it will be relative to the location where doxygen was started. If # left blank the current directory will be used. -OUTPUT_DIRECTORY = ../ +OUTPUT_DIRECTORY = . # If the CREATE_SUBDIRS tag is set to YES then doxygen will create up to 4096 # sub-directories (in 2 levels) under the output directory of each output format @@ -1286,7 +1286,7 @@ GENERATE_HTML = YES # The default directory is: html. # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_OUTPUT = OrcaSlicer_Dev_Document +HTML_OUTPUT = internal_docs # The HTML_FILE_EXTENSION tag can be used to specify the file extension for each # generated HTML page (for example: .htm, .php, .asp). diff --git a/.github/workflows/doxygen-docs.yml b/.github/workflows/doxygen-docs.yml new file mode 100644 index 0000000000..ad48aab77d --- /dev/null +++ b/.github/workflows/doxygen-docs.yml @@ -0,0 +1,41 @@ +name: Generate Doxygen Documentation + +on: + schedule: + - cron: '0 0 * * 1' # Every Monday at midnight UTC + workflow_dispatch: # Manual trigger + +concurrency: + group: ${{ github.workflow }} + cancel-in-progress: true + +jobs: + build-and-deploy: + name: Build and Deploy Docs + runs-on: ubuntu-latest + # Only run on main branch of the main repository + if: github.repository == 'OrcaSlicer/OrcaSlicer' && github.ref == 'refs/heads/main' + steps: + - name: Checkout repository + uses: actions/checkout@v6 + + - name: Install Doxygen and Graphviz + run: | + sudo apt-get update + sudo apt-get install -y doxygen graphviz + + - name: Generate documentation + run: | + doxygen .doxygen + # Verify documentation was generated + if [ ! -f "internal_docs/index.html" ]; then + echo "Error: Documentation generation failed - index.html not found" + exit 1 + fi + + - name: Deploy to Cloudflare Pages + uses: cloudflare/wrangler-action@v3 + with: + apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} + accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} + command: pages deploy internal_docs --project-name=orcaslicer-internals diff --git a/.gitignore b/.gitignore index 09abcc8dee..5b369a47fe 100644 --- a/.gitignore +++ b/.gitignore @@ -42,3 +42,4 @@ deps_src/build/ test.js /.cache/ .clangd +internal_docs/