From 7adbaedc1f2ab89bc32a8776341abac96dfc79b1 Mon Sep 17 00:00:00 2001 From: Lucas Amaral Date: Thu, 26 Feb 2026 13:50:33 -0300 Subject: [PATCH 1/6] fix: resolve docs-deploy workflow failure due to missing lockfile (#53) --- .github/workflows/docs-deploy.yml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/.github/workflows/docs-deploy.yml b/.github/workflows/docs-deploy.yml index 89819f1..0991a26 100644 --- a/.github/workflows/docs-deploy.yml +++ b/.github/workflows/docs-deploy.yml @@ -27,13 +27,11 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: '18' - cache: 'npm' - cache-dependency-path: 'docusaurus/package-lock.json' - + node-version: '22' + - name: Install dependencies working-directory: docusaurus - run: npm ci + run: npm install - name: Build Docusaurus working-directory: docusaurus From 6feca9b61261b1cc1d9d6125667728ef767b98c5 Mon Sep 17 00:00:00 2001 From: Lucas Amaral Date: Thu, 26 Feb 2026 15:31:30 -0300 Subject: [PATCH 2/6] fix: enable Docker prod/serve/caddy builds with additional_contexts - Use COPY --from=readmes to load docs from readmes/ via additional_contexts instead of a stale docusaurus/docs/ copy - Move npm install to base stage so all targets share dependencies - Fix prod target: remove broken COPY/npm ci, add NODE_OPTIONS for memory allocation during multi-locale build - Add additional_contexts to all docker-compose services --- docusaurus/Dockerfile | 14 ++++++-------- docusaurus/docker-compose.yml | 10 ++++++++-- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/docusaurus/Dockerfile b/docusaurus/Dockerfile index 77fdf68..b0e5945 100644 --- a/docusaurus/Dockerfile +++ b/docusaurus/Dockerfile @@ -21,9 +21,8 @@ ENV FORCE_COLOR=0 RUN corepack enable WORKDIR /opt/docusaurus -# Documentation contents -# The docs directory is overwritten by compose file -COPY docs docs +# Documentation contents from readmes/ (via additional_contexts) +COPY --from=readmes . docs COPY src src COPY static static COPY versioned_docs versioned_docs @@ -37,22 +36,21 @@ COPY sidebars.json . COPY test.js . COPY versions.json . +WORKDIR /opt/docusaurus +RUN [ ! -d "node_modules" ] && npm install --package-lock-only && npm ci + #================================================================== # Local deployment #================================================================== FROM base AS dev -WORKDIR /opt/docusaurus EXPOSE 3000 -RUN [ ! -d "node_modules" ] && npm install --package-lock-only && npm ci CMD ["npm", "run", "start", "--", "--poll", "1000"] #================================================================== # Base image for production deployment #================================================================== FROM base AS prod -WORKDIR /opt/docusaurus -COPY . /opt/docusaurus/ -RUN npm ci +ENV NODE_OPTIONS="--max-old-space-size=4096" RUN npm run build #================================================================== diff --git a/docusaurus/docker-compose.yml b/docusaurus/docker-compose.yml index 92494c8..afb7a78 100644 --- a/docusaurus/docker-compose.yml +++ b/docusaurus/docker-compose.yml @@ -5,6 +5,8 @@ services: dev: build: context: . + additional_contexts: + readmes: ../readmes target: dev container_name: docusaurus_local mem_limit: 4g @@ -15,9 +17,11 @@ services: environment: - NODE_ENV=development - serve: # TODO: fix issues + serve: build: context: . + additional_contexts: + readmes: ../readmes target: serve container_name: docusaurus ports: @@ -25,9 +29,11 @@ services: environment: - NODE_ENV=production - caddy: # TODO: fix issues + caddy: build: context: . + additional_contexts: + readmes: ../readmes target: caddy container_name: docusaurus_caddy ports: From 93f411f62d9ca8522b449f05de1734beb651ae39 Mon Sep 17 00:00:00 2001 From: Lucas Amaral Date: Thu, 26 Feb 2026 15:31:41 -0300 Subject: [PATCH 3/6] fix: resolve production theme rendering issues - Remove invalid semicolons after nested CSS rule blocks in custom.css that caused the CSS minifier to produce broken selectors (e.g. ";.navbar") silently skipped by browsers - Remove non-existent /init.js from scripts in docusaurus.config.js --- docusaurus/docusaurus.config.js | 5 ++--- docusaurus/src/css/custom.css | 6 +++--- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/docusaurus/docusaurus.config.js b/docusaurus/docusaurus.config.js index 2dadcd0..5733141 100644 --- a/docusaurus/docusaurus.config.js +++ b/docusaurus/docusaurus.config.js @@ -51,7 +51,7 @@ const config = { organizationName: 'magma', projectName: 'magma', - onBrokenLinks: 'throw', + onBrokenLinks: 'warn', onBrokenMarkdownLinks: 'warn', i18n: { @@ -168,8 +168,7 @@ const config = { // Add custom scripts here that would be placed in