From 4e002f7c38aa4b7742bfec59609d2183f7c0fc5c Mon Sep 17 00:00:00 2001 From: Greg Kostin Date: Tue, 21 Apr 2026 07:12:33 -0400 Subject: [PATCH 01/11] Upgrade and refactor --- .env.example | 24 + .github/workflows/branch-scratch.yml | 24 - .github/workflows/build-apache-image.yml | 8 +- .github/workflows/build-apache-uid-image.yml | 8 +- .github/workflows/build-db-image.yml | 8 +- .github/workflows/build-db-uid-image.yml | 8 +- .github/workflows/build-dspace-images.yml | 12 +- .github/workflows/build-dspace-uid-images.yml | 12 +- .github/workflows/build-express-image.yml | 8 +- .github/workflows/build-source-image.yml | 8 +- .github/workflows/ci.yml | 97 ++ .../workflows/delete-old-workflow-runs.yml | 6 +- .gitignore | 1 + AGENTS.md | 65 ++ DONE.md | 13 + Dockerfile | 18 +- Makefile | 84 ++ README.md | 157 ++- TODO.md | 3 + backend.dockerfile | 48 +- backend/config/demo.dspace.cfg.cpt | Bin 89361 -> 0 bytes .../config/demo.dspace.cfg.cpt.backupFeb10 | Bin 88113 -> 0 bytes backend/config/production.dspace.cfg.cpt | Bin 88113 -> 0 bytes backend/config/staging.dspace.cfg.cpt | Bin 88113 -> 0 bytes backend/config/workshop.dspace.cfg.cpt | Bin 88113 -> 0 bytes backend/local.cfg | 25 + backend/logs/dspace.log.2023-11-01 | 1000 ----------------- docker-compose.yml | 117 +- dotpy/README.md | 82 ++ dotpy/calc_widths.py | 113 ++ dotpy/check_tables.py | 94 ++ dspace-uid/README.md | 14 +- dspace-uid/solr.dockerfile | 9 + dspace/README.md | 8 +- dspace/backend.dockerfile | 41 +- dspace/frontend.dockerfile | 4 +- dspace/solr.dockerfile | 2 +- frontend.dockerfile | 4 +- solr.dockerfile | 2 +- tests/smoke.sh | 240 ++++ tests/wait-for-stack.sh | 51 + 41 files changed, 1227 insertions(+), 1191 deletions(-) create mode 100644 .env.example delete mode 100644 .github/workflows/branch-scratch.yml create mode 100644 .github/workflows/ci.yml create mode 100644 AGENTS.md create mode 100644 DONE.md create mode 100644 Makefile create mode 100644 TODO.md delete mode 100644 backend/config/demo.dspace.cfg.cpt delete mode 100644 backend/config/demo.dspace.cfg.cpt.backupFeb10 delete mode 100644 backend/config/production.dspace.cfg.cpt delete mode 100644 backend/config/staging.dspace.cfg.cpt delete mode 100644 backend/config/workshop.dspace.cfg.cpt create mode 100644 backend/local.cfg delete mode 100644 backend/logs/dspace.log.2023-11-01 create mode 100644 dotpy/README.md create mode 100644 dotpy/calc_widths.py create mode 100644 dotpy/check_tables.py create mode 100755 tests/smoke.sh create mode 100755 tests/wait-for-stack.sh diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..4c5a420 --- /dev/null +++ b/.env.example @@ -0,0 +1,24 @@ +# Example .env file for dspace-containerization +# Copy to .env and adjust as needed. +# +# GITHUB_BRANCH: branch name in the mlibrary forks of DSpace and dspace-angular +# used to build the shared source image (Dockerfile). +# NOTE: this variable is only used locally (Makefile / docker build). In GitHub +# Actions CI the same value is stored as SOURCE_BRANCH to avoid the reserved +# GITHUB_* prefix, then forwarded as --build-arg GITHUB_BRANCH=${SOURCE_BRANCH}. +# DSPACE_VERSION: version tag suffix used by DSpace Docker Hub images (e.g. 7.6 → dspace-7.6). +# Target version: 7.6.6 (Dec 2025). See deepblue-466/AGENTS.md. +# JDK_VERSION: Java version for the backend Tomcat image (17 recommended; 11 also supported). +# DSPACE_UI_HOST: hostname the Angular SSR server binds to AND uses in server-side URLs. +# Use 0.0.0.0 for Docker local dev (Node.js 18+ resolves 'localhost' to ::1 which breaks +# Docker port-mapping). Set to the public hostname for staging/production deployments. +# DSPACE_REST_HOST: hostname the Angular SSR server uses to reach the backend REST API. +# Use 'backend' (Docker service name) for local dev so the SSR server (running inside the +# frontend container) can reach the backend over Docker internal DNS. +# Browser-side Angular re-uses the dspaceServer URL from the HAL root at runtime. +GITHUB_BRANCH=umich +DSPACE_VERSION=7.6 +JDK_VERSION=17 +DSPACE_UI_HOST=0.0.0.0 +DSPACE_REST_HOST=backend + diff --git a/.github/workflows/branch-scratch.yml b/.github/workflows/branch-scratch.yml deleted file mode 100644 index c404edc..0000000 --- a/.github/workflows/branch-scratch.yml +++ /dev/null @@ -1,24 +0,0 @@ -#saved so that I can have a workflow to try out in a branch -name: Scratch - -on: - workflow_dispatch: - inputs: - tag: - default: 'latest-default-tag' - description: tag - required: true - -jobs: - get-short-tag: - id: get-short-tag - runs-on: ubuntu-latest - steps: - - name: save short tag to environment - run: echo "short_tag=$(echo ${{ github.event.inputs.tag }} | head -c 8 )" >> $GITHUB_ENV - - name: echo env var - run: echo "${{ env.short_tag }}" - - name: arch - run: ARCH=$(arch | sed s/aarch64/arm64/ | sed s/x86_64/amd64/); echo $ARCH - - name: env - run: env diff --git a/.github/workflows/build-apache-image.yml b/.github/workflows/build-apache-image.yml index 1633934..1497188 100644 --- a/.github/workflows/build-apache-image.yml +++ b/.github/workflows/build-apache-image.yml @@ -12,20 +12,20 @@ jobs: if: github.repository == 'mlibrary/dspace-containerization' steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v6.0.2 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v4.0.0 - name: Login to GitHub Container Registry - uses: docker/login-action@v1 + uses: docker/login-action@v4.1.0 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push dspace-apache image - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v7.1.0 with: context: . push: true diff --git a/.github/workflows/build-apache-uid-image.yml b/.github/workflows/build-apache-uid-image.yml index 37491f1..46ebcb3 100644 --- a/.github/workflows/build-apache-uid-image.yml +++ b/.github/workflows/build-apache-uid-image.yml @@ -20,20 +20,20 @@ jobs: if: github.repository == 'mlibrary/dspace-containerization' steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v6.0.2 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v4.0.0 - name: Login to GitHub Container Registry - uses: docker/login-action@v1 + uses: docker/login-action@v4.1.0 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push dspace-apache:uid image - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v7.1.0 with: context: . push: true diff --git a/.github/workflows/build-db-image.yml b/.github/workflows/build-db-image.yml index dd8f392..69e0838 100644 --- a/.github/workflows/build-db-image.yml +++ b/.github/workflows/build-db-image.yml @@ -21,20 +21,20 @@ jobs: if: github.repository == 'mlibrary/dspace-containerization' steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v6.0.2 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v4.0.0 - name: Login to GitHub Container Registry - uses: docker/login-action@v1 + uses: docker/login-action@v4.1.0 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push dspace-db image - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v7.1.0 with: context: . push: true diff --git a/.github/workflows/build-db-uid-image.yml b/.github/workflows/build-db-uid-image.yml index 54f1dbb..70a70d0 100644 --- a/.github/workflows/build-db-uid-image.yml +++ b/.github/workflows/build-db-uid-image.yml @@ -29,20 +29,20 @@ jobs: if: github.repository == 'mlibrary/dspace-containerization' steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v6.0.2 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v4.0.0 - name: Login to GitHub Container Registry - uses: docker/login-action@v1 + uses: docker/login-action@v4.1.0 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push dspace-db:uid image - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v7.1.0 with: context: . push: true diff --git a/.github/workflows/build-dspace-images.yml b/.github/workflows/build-dspace-images.yml index 16f1e83..6743394 100644 --- a/.github/workflows/build-dspace-images.yml +++ b/.github/workflows/build-dspace-images.yml @@ -30,20 +30,20 @@ jobs: if: github.repository == 'mlibrary/dspace-containerization' steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v6.0.2 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v4.0.0 - name: Login to GitHub Container Registry - uses: docker/login-action@v1 + uses: docker/login-action@v4.1.0 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push dspace-solr image - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v7.1.0 with: context: . push: true @@ -53,7 +53,7 @@ jobs: SOURCE_IMAGE_TAG=${{ github.event.inputs.source_image_tag }} - name: Build and push dspace-backend image - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v7.1.0 with: context: . push: true @@ -64,7 +64,7 @@ jobs: SOURCE_IMAGE_TAG=${{ github.event.inputs.source_image_tag }} - name: Build and push dspace-frontend image - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v7.1.0 timeout-minutes: 20 with: context: . diff --git a/.github/workflows/build-dspace-uid-images.yml b/.github/workflows/build-dspace-uid-images.yml index ebf7695..8b2a18a 100644 --- a/.github/workflows/build-dspace-uid-images.yml +++ b/.github/workflows/build-dspace-uid-images.yml @@ -29,20 +29,20 @@ jobs: if: github.repository == 'mlibrary/dspace-containerization' steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v6.0.2 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v4.0.0 - name: Login to GitHub Container Registry - uses: docker/login-action@v1 + uses: docker/login-action@v4.1.0 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push dspace-solr:uid image - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v7.1.0 with: context: . push: true @@ -53,7 +53,7 @@ jobs: UID=${{ github.event.inputs.uid }} - name: Build and push dspace-backend:uid image - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v7.1.0 with: context: . push: true @@ -64,7 +64,7 @@ jobs: UID=${{ github.event.inputs.uid }} - name: Build and push dspace-frontend:uid image - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v7.1.0 with: context: . push: true diff --git a/.github/workflows/build-express-image.yml b/.github/workflows/build-express-image.yml index 4d4cff6..54f559a 100644 --- a/.github/workflows/build-express-image.yml +++ b/.github/workflows/build-express-image.yml @@ -12,20 +12,20 @@ jobs: if: github.repository == 'mlibrary/dspace-containerization' steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v6.0.2 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v4.0.0 - name: Login to GitHub Container Registry - uses: docker/login-action@v1 + uses: docker/login-action@v4.1.0 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push dspace-express image - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v7.1.0 with: context: . push: true diff --git a/.github/workflows/build-source-image.yml b/.github/workflows/build-source-image.yml index 0ebc1c0..6351379 100644 --- a/.github/workflows/build-source-image.yml +++ b/.github/workflows/build-source-image.yml @@ -21,20 +21,20 @@ jobs: if: github.repository == 'mlibrary/dspace-containerization' steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v6.0.2 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v4.0.0 - name: Login to GitHub Container Registry - uses: docker/login-action@v1 + uses: docker/login-action@v4.1.0 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push dspace-source image - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v7.1.0 with: context: . push: true diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..41c9f4a --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,97 @@ +--- +name: CI + +# Triggers: +# 1. Every push to any branch (gate check on all active work). +# 2. Pull-requests targeting the canonical branches. +# 3. Manual trigger with optional version overrides (workflow_dispatch). +# +# NOTE: env vars that start with GITHUB_ are reserved by the GitHub Actions +# runner and will cause the workflow to fail if set in an env: block. +# The source-branch variable is therefore named SOURCE_BRANCH, and is passed +# to `docker build` as --build-arg GITHUB_BRANCH=... so that the Dockerfile +# and Makefile need no changes. +# +# NOTE: docker/setup-buildx-action is intentionally NOT used here. +# That action switches to the `docker-container` Buildx driver, which runs +# builds in an isolated container that cannot see images stored in the local +# Docker daemon. As a result `docker compose build` fails to resolve +# `dspace-containerization-source` (a local-only base image) and tries to +# pull it from Docker Hub, which does not exist. The default `docker` driver +# (used when no setup-buildx-action step is present) shares the daemon image +# store, so the source image built in step 1 is immediately available to +# `docker compose build` in step 2. +on: + push: + pull_request: + branches: ["umich", "main"] + workflow_dispatch: + inputs: + dspace_version: + description: "DSpace Version (e.g. 7.6)" + required: false + default: "7.6" + jdk_version: + description: "JDK Version (17 recommended)" + required: false + default: "17" + source_branch: + description: "Source branch in mlibrary forks" + required: false + default: "umich" + +jobs: + smoke-test: + name: Smoke tests – DSpace ${{ github.event.inputs.dspace_version || '7.6' }} + runs-on: ubuntu-latest + # Only run for the canonical repository; avoids wasting runner minutes on forks. + if: github.repository == 'mlibrary/dspace-containerization' + + env: + # SOURCE_BRANCH replaces the former GITHUB_BRANCH (reserved prefix). + SOURCE_BRANCH: ${{ github.event.inputs.source_branch || 'umich' }} + DSPACE_VERSION: ${{ github.event.inputs.dspace_version || '7.6' }} + JDK_VERSION: ${{ github.event.inputs.jdk_version || '17' }} + BACKEND_URL: http://localhost:8080 + SOLR_URL: http://localhost:8983 + FRONTEND_URL: http://localhost:4000 + MAX_WAIT: "900" + + steps: + - name: Checkout + uses: actions/checkout@v6.0.2 + + + # ── Build ────────────────────────────────────────────────────────────── + # The source image MUST be built before `docker compose build` because + # backend/solr/frontend dockerfiles reference `dspace-containerization-source` + # with a FROM instruction. Docker cannot pull this local-only image from + # Docker Hub and will otherwise fail with "pull access denied". + - name: Build shared source image + run: | + docker build -t dspace-containerization-source \ + --build-arg GITHUB_BRANCH=${SOURCE_BRANCH} \ + . + + - name: Build compose service images + run: | + docker compose build \ + --build-arg DSPACE_VERSION=${DSPACE_VERSION} \ + --build-arg JDK_VERSION=${JDK_VERSION} + + # ── Start ────────────────────────────────────────────────────────────── + - name: Start core services + run: docker compose up -d + + # ── Wait ─────────────────────────────────────────────────────────────── + - name: Wait for stack to be ready + run: bash tests/wait-for-stack.sh + + # ── Test ─────────────────────────────────────────────────────────────── + - name: Run smoke tests + run: bash tests/smoke.sh + + # ── Debug (always runs, even on failure) ─────────────────────────────── + - name: Dump service logs on failure + if: failure() + run: docker compose logs --no-color diff --git a/.github/workflows/delete-old-workflow-runs.yml b/.github/workflows/delete-old-workflow-runs.yml index 4c39b31..d3533cb 100644 --- a/.github/workflows/delete-old-workflow-runs.yml +++ b/.github/workflows/delete-old-workflow-runs.yml @@ -39,14 +39,16 @@ on: - success dry_run: description: 'Only log actions, do not perform any delete operations.' - required: false + required: true + type: boolean + default: true jobs: del_runs: runs-on: ubuntu-latest steps: - name: Delete workflow runs - uses: Mattraks/delete-workflow-runs@v2 + uses: Mattraks/delete-workflow-runs@v2.1.0 with: token: ${{ github.token }} repository: ${{ github.repository }} diff --git a/.gitignore b/.gitignore index e43b0f9..be47843 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ .DS_Store +.env diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..1b4005b --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,65 @@ +# Agent Rules + +> **Read this file at the start of every new agent session, before taking any action.** +> These rules apply to all AI coding agents (GitHub Copilot, Claude, Cursor, etc.) working in this repository. + +## File Access + +- **Stay within the project directory**: Only read, write, or search files that are under the project root directory. Do not access files outside the project directory unless the developer **explicitly** requests it. + - When a developer does request access to an outside file, read **only that specific file** — do not browse, list, or search the surrounding directory or any parent directories. + - Never speculatively explore paths outside the project root. + +## Command-Line Tool Usage + +- **Disable interactive paging**: When running commands that may invoke a pager (e.g., `git`, `less`, `man`, `kubectl`, etc.), always suppress paging so the command returns immediately and its output is captured. For example: + - Use `git --no-pager ` for git commands. + - Append `| cat` to commands that might page output (e.g., `kubectl ... | cat`). + - Set `GIT_PAGER=cat` or `PAGER=cat` in the environment when needed. + - Never rely on interactive input; all commands must run non-interactively and return their full output. + +## Task Tracking (TODO.md / DONE.md) + +- **TODO.md** is the active task list, maintained by the agent. Organise work as **tasks** with **subtasks**: + ``` + ## Task Title + Short description of the overall goal. + + - [ ] Subtask one + - [ ] Subtask two + - [ ] Verify the current state of the project achieves the task goal + - [ ] Verify with the developer that the task is complete + ``` +- **Check off subtasks** (`- [x]`) as they are completed. Keep the task in `TODO.md` until **all** subtasks — including the final developer-verification step — are checked off. +- **Every task must end with a developer-verification subtask** as its final item: + `- [ ] Verify with the developer that the task is complete` + When this subtask is reached, ask the developer: *"Are there any additional subtasks needed before this task is complete?"* Add any new subtasks before the verification step, then check them off before archiving. +- **Only when all subtasks are done**, move the whole task to `DONE.md`: + 1. **Remove** the task block from `TODO.md`. + 2. **Prepend** it to `DONE.md` (insert after the `# DONE` heading, before any existing entries) with a timestamp and a brief summary. This keeps `DONE.md` in **reverse chronological order** (newest entry first). +- Example entry in `DONE.md`: + ``` + ## 2026-04-21T14:32:00 — Added AGENTS.md paging rule + Added the first rule to AGENTS.md requiring all CLI commands to suppress + interactive paging so output is captured without waiting for user input. + ``` +- Never leave a completed task in `TODO.md`; always archive it to `DONE.md`. + +## Python Utility Scripts (`dotpy/`) + +- **Use existing scripts** in `dotpy/` before writing ad-hoc Python one-liners. See [`dotpy/README.md`](dotpy/README.md) for the full list and usage instructions. +- **Save reusable scripts** to `dotpy/` rather than running them once and discarding them: + - Add a `#!/usr/bin/env python3` shebang and a module-level docstring with a **Usage** section. + - Accept a file path as the first positional argument and fall back to stdin. + - Add an entry to `dotpy/README.md` following the existing format. + +## Markdown Formatting + +- **Format tables correctly**: Every column in a Markdown table must be padded so that all cells in that column (header, separator, and every data row) are the same width. The separator row must use dashes (`-`) at least as wide as the widest cell in each column. Mismatched widths cause IDE warnings ("Table is not correctly formatted"). + - Determine the widest cell in each column (considering the rendered source text, not the display text of links). + - Pad every shorter cell with trailing spaces to match that width. + - Use the same number of dashes in the separator row as the column width. + - **The data rows — not just the header — define the required column width.** The header and separator must be padded/extended to match the widest data cell, not the other way around. + - To compute the exact separator, run: `python3 dotpy/calc_widths.py ` — it prints the maximum between-pipe width per column and the ready-to-paste separator row for every table in the file. + - To validate alignment after editing, run: `python3 dotpy/check_tables.py ` — exits `0` if all tables are consistent, `1` with error details if not. + - If a table requires very long lines (e.g., > 120 characters per row), prefer using a shorter link display text or a bullet-list format instead of a wide table. + diff --git a/DONE.md b/DONE.md new file mode 100644 index 0000000..3c48283 --- /dev/null +++ b/DONE.md @@ -0,0 +1,13 @@ +# DONE + +## 2026-04-21T00:00:00 — Guidelines for Coding Agents +Established `AGENTS.md` and ensured all developer-facing documentation directs +coding agents to read and follow those guidelines at the start of every session. + +- [x] Create `AGENTS.md` with CLI paging, task-tracking, and Markdown formatting rules +- [x] Add "For AI Coding Agents" section to `README.md` pointing to `AGENTS.md` +- [x] Update `AGENTS.md`: prepend `DONE.md` entries to keep list in reverse chronological order +- [x] Update `AGENTS.md`: use task/subtask structure; move a task to `DONE.md` only when all subtasks are complete +- [x] Verify the current state of the project accomplishes the task goal +- [x] Verify with the developer that the task is complete + diff --git a/Dockerfile b/Dockerfile index 559b2c8..2aa25e3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,22 +1,14 @@ -FROM ubuntu:20.04 +FROM ubuntu:22.04 ARG GITHUB_BRANCH=umich RUN apt-get update && \ - apt-get -y install --no-install-recommends \ + apt-get -y -o Acquire::Retries=3 install --no-install-recommends \ ca-certificates \ - git \ - wget \ - unzip + git ENV GITHUB_BRANCH=${GITHUB_BRANCH} -RUN wget -q https://github.com/mlibrary/dspace/archive/refs/heads/${GITHUB_BRANCH}.zip && \ - unzip -q /${GITHUB_BRANCH}.zip -d / && \ - rm -rf /${GITHUB_BRANCH}.zip && \ - mv /DSpace-${GITHUB_BRANCH} /DSpace +RUN git clone --depth 1 --branch ${GITHUB_BRANCH} https://github.com/mlibrary/dspace.git /DSpace -RUN wget -q https://github.com/mlibrary/dspace-angular/archive/refs/heads/${GITHUB_BRANCH}.zip && \ - unzip -q /${GITHUB_BRANCH}.zip -d / && \ - rm -rf /${GITHUB_BRANCH}.zip && \ - mv /dspace-angular-${GITHUB_BRANCH} /dspace-angular +RUN git clone --depth 1 --branch ${GITHUB_BRANCH} https://github.com/mlibrary/dspace-angular.git /dspace-angular diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..2f74a47 --- /dev/null +++ b/Makefile @@ -0,0 +1,84 @@ +.PHONY: build ensure-source up up-all down clean rebuild logs wait test help + +## Default target +.DEFAULT_GOAL := help + +## Build the shared source image and all compose service images. +## Run this on first setup and whenever the source branch changes. +## +## The GITHUB_BRANCH shell variable selects which mlibrary fork branch to clone +## inside the source image (default: umich). Override at the command line: +## GITHUB_BRANCH=my-branch make build +## +## In GitHub Actions CI the same value is carried by SOURCE_BRANCH (because the +## Actions runner reserves all GITHUB_* env var names) and forwarded to Docker +## as --build-arg GITHUB_BRANCH=${SOURCE_BRANCH}. The Dockerfile is unchanged. +build: + docker build -t dspace-containerization-source \ + --build-arg GITHUB_BRANCH=$${GITHUB_BRANCH:-umich} . + docker compose build + +## Build the source image only when it is not already present locally. +## Called automatically by 'up' so you can never accidentally start with a missing source image. +ensure-source: + @docker image inspect dspace-containerization-source:latest > /dev/null 2>&1 \ + && echo "Source image already exists – skipping build." \ + || (echo "Source image not found – building now..." && \ + docker build -t dspace-containerization-source \ + --build-arg GITHUB_BRANCH=$${GITHUB_BRANCH:-umich} .) + +## Start the core services (db, solr, backend, frontend) in the background. +## Builds the source image first if it is not already present. +up: ensure-source + docker compose up -d + +## Start core + all optional services (apache, express). +up-all: + docker compose --profile optional up -d + +## Stop and remove containers (volumes are preserved). +down: + docker compose down + +## Stop and remove containers AND all named volumes (full clean – destroys data). +clean: + docker compose down -v --rmi local + docker rmi -f dspace-containerization-source 2>/dev/null || true + +## Rebuild all images from scratch and restart core services. +rebuild: clean build up + +## Show logs for all running services (Ctrl-C to exit). +logs: + docker compose logs -f + +## Wait for all core services to be healthy (backend, solr, frontend). +## Polls every 5 s; times out after MAX_WAIT seconds (default 300). +wait: + @bash tests/wait-for-stack.sh + +## Run the smoke-test suite against the running local stack. +## Ensures the source image exists, starts the stack, waits for readiness, then runs tests. +test: up wait + @bash tests/smoke.sh + +## Show this help message. +help: + @echo "" + @echo "dspace-containerization – local dev Makefile" + @echo "" + @echo "Usage: make " + @echo "" + @echo " build Build source image + all compose service images" + @echo " ensure-source Build source image only if not already present" + @echo " up Start core services (db, solr, backend, frontend)" + @echo " up-all Start core + optional services (apache, express)" + @echo " down Stop containers (volumes preserved)" + @echo " clean Stop containers and delete volumes + images" + @echo " rebuild Full clean, build, and up" + @echo " logs Tail logs for all services" + @echo " wait Wait for all services to be healthy" + @echo " test Ensure source, start stack, wait, run smoke tests" + @echo " help Show this message" + @echo "" + diff --git a/README.md b/README.md index cb860bf..028a99d 100644 --- a/README.md +++ b/README.md @@ -1,47 +1,152 @@ # dspace-containerization -University of Michigan Library containerization of [DSpace](https://dspace.lyrasis.org/) +Containerization and deployment infrastructure for [Deep Blue Documents](https://deepblue.lib.umich.edu/), the University of Michigan Library's institutional repository, built on [DSpace 7+](https://dspace.lyrasis.org/). + +## For AI Coding Agents + +> **If you are an AI coding agent (GitHub Copilot, Claude, Cursor, or similar), read [`AGENTS.md`](AGENTS.md) before taking any action in this repository.** +> It contains mandatory guidelines for CLI usage, task tracking, and Markdown formatting that apply to every agent session. + ## Overview -A source image is created by pulling source code from the library's forks of DSpace: https://github.com/mlibrary/dspace-angular and https://github.com/mlibrary/DSpace. The source image is then used to create the frontend, backend, and solr images. These images, along with a database image, are then configured and deployed to create an instance of the DSpace application. +This repository is the source of truth for building and deploying **Deep Blue Documents** — U-M Library's DSpace-based institutional repository. It produces Docker images from the library's own forks of DSpace ([`mlibrary/DSpace`](https://github.com/mlibrary/DSpace)) and the Angular frontend ([`mlibrary/dspace-angular`](https://github.com/mlibrary/dspace-angular)), layering U-M-specific configuration and tooling on top of upstream DSpace. + +A shared **source image** is built first by cloning those forks. It is then consumed by the `frontend`, `backend`, and `solr` service images. Together with a `db` image, these form a complete DSpace stack that can be run locally via Docker Compose or deployed remotely to Kubernetes / OpenShift. + +There are two deployment contexts: +- **Local** — Docker Desktop; images built with `docker compose build`, deployed with `docker compose up -d`. +- **Remote** — Kubernetes/OpenShift cluster; images built by GitHub Actions, stored in GitHub Packages, and deployed by applying the YAML manifests in [`dspace/`](dspace) (Kubernetes) or [`dspace-uid/`](dspace-uid) (OpenShift). + +It is recommended to get the stack running locally via Docker Compose before attempting a remote deployment. -Essentially there are two, for lack of a better word, contexts: local and remote. Local will be used to refer to your local development environment, or more specifically, Docker Desktop. Remote will be used to refer a Kubernetes cluster. The primary differences between these two contexts being how images are built, where they are stored, and how they are deployed. Local images are built via the `docker compose build` command, stored locally in Docker Desktop, and deployed via `docker compose up -d` command. Remote images are built via GitHub Actions, stored remotely in GitHub Packages, and deployed to [Kubernetes](https://github.com/mlibrary/dspace-containerization/blob/main/dspace) ([OpenShift](https://github.com/mlibrary/dspace-containerization/blob/main/dspace-uid)) typically using `kubectl` (`oc`) to apply the appropriate deployment yaml files. +## For other institutions + +> While this repository is configured for the University of Michigan's **Deep Blue Documents** service, it is designed to serve as a **reference architecture** for how to containerize and orchestrate a heavily customized DSpace 7+ environment using Docker Compose, Kubernetes, and OpenShift. +> +> **What is reusable:** the multi-stage Dockerfile patterns, `docker-compose.yml` service structure, Makefile workflow, smoke-test suite (`tests/`), and GitHub Actions CI pipeline (`.github/workflows/ci.yml`) are general-purpose and straightforward to adapt. +> +> **What is U-M-specific:** the source forks (`mlibrary/DSpace`, `mlibrary/dspace-angular`), the `GITHUB_BRANCH=umich` default, backend scripts in `backend/bin/`, and `backend/local.cfg`. +> +> To adapt this for your own institution, point `GITHUB_BRANCH` (or a fork of your own) at your customized DSpace source and replace `backend/local.cfg` with your own overrides. Note that `backend/local.cfg` is only copied into images built by the root `backend.dockerfile` (local dev and `ci.yml`); the `dspace/backend.dockerfile` used to build published production/staging images does **not** copy it — configuration for those environments is supplied at runtime via environment variables or mounted Kubernetes Secrets. -It is recommend that you first get an instance of DSpace running locally via `docker compose` prior to attempting to get an instance of DSpace running remotely in Kubernetes. ## Building and running locally -### login +### Quick Start +1. (Optional) Copy `.env.example` to `.env` and adjust build arguments as needed. +2. Build the shared **source image** (required once, and whenever the source branch changes): + ```shell + docker build -t dspace-containerization-source . + ``` + > The `frontend`, `backend`, and `solr` images depend on this image at build time. + > Use `make build` (see [Makefile](Makefile)) to build source + all compose services in one step. +3. Build the compose service images: + ```shell + docker compose build + ``` +4. Start the core services: + ```shell + docker compose up -d + ``` + > `db` and `solr` include healthchecks; `backend` will not start until both are healthy. + +### Optional Services +The `apache` and `express` services are not started by default. To include them: ```shell -docker login +docker compose --profile optional up -d ``` -### build +Or start a single optional service: ```shell -docker compose build +docker compose --profile optional up -d apache +docker compose --profile optional up -d express +``` + +### Service URLs +| URL | Container | Comments | +|-----------------------------------------|-----------|------------------------------------------------------------------------------| +| http://localhost:4000/ | frontend | Angular GUI (SSR app shell; Angular router handles `/home` etc. client-side) | +| jdbc:postgresql://localhost:5432/dspace | db | PostgreSQL (user: dspace, password: dspace) | +| http://localhost:8080/server | backend | Server API | +| http://localhost:8983/solr | solr | Solr GUI | +| http://localhost:8888/ | apache | Apache Web Server – optional (CGI stats scripts) | +| http://localhost:3000/metrics | express | Prometheus metrics endpoint – optional | + +### Build Arguments +Build arguments are read from `.env` (copy from `.env.example`): +``` +GITHUB_BRANCH=umich +DSPACE_VERSION=7.6 +JDK_VERSION=17 +DSPACE_UI_HOST=0.0.0.0 +DSPACE_REST_HOST=backend ``` -NOTES: +- `GITHUB_BRANCH` — branch in the mlibrary forks used to build the source image. +- `DSPACE_VERSION` — version suffix for DSpace Docker Hub images (e.g. `7.6` → image tag `dspace-7.6`). Use `7.6` here; the current upstream DSpace patch release targeted by this configuration is **7.6.0**. +- `JDK_VERSION` — Java version for the backend Tomcat image (must be `17`; JDK11 is no longer supported). The build uses `eclipse-temurin` images — the official successor to the deprecated `openjdk` Docker Hub images. +- `DSPACE_UI_HOST` — hostname the Angular SSR server binds to. Use `0.0.0.0` for local Docker development (Node.js 18+ resolves `localhost` to `::1`, breaking Docker port-mapping). Set to the public hostname for staging/production. +- `DSPACE_REST_HOST` — hostname the Angular SSR server (inside the frontend container) uses to reach the backend REST API over Docker's internal DNS. Use `backend` (the Docker service name) for local development. The browser-side Angular client re-uses the `dspaceServer` URL from the HAL root at runtime. -Build uses `umich` by default. To build with `issue-working`, use "--build-arg GITHUB_BRANCH=issue-working" +`docker-compose.yml` passes `DSPACE_VERSION` and `JDK_VERSION` automatically to the relevant service builds via `build.args`. -Build uses `dspace-7.6` by default. To build with 7_x, use "--build-arg DSPACE_VERSION=7_x" +### Notes +- Debugging ports (e.g., 8009, 9876) are not exposed by default. Add them to `docker-compose.yml` if needed. +- The `backend` service uses `depends_on` with `condition: service_healthy` for `db` and `solr`, and the `frontend` service waits for `backend` to be healthy, ensuring correct startup ordering without manual delays. +- Use `make` targets (see [Makefile](Makefile)) for common workflows: `make build`, `make up`, `make down`, `make clean`. +- **`backend/local.cfg`** disables OIDC authentication for local dev and supplies placeholder values for `ip.bioIPsRange1` / `ip.bioIPsRange2`. `OidcAuthenticationBean` is still instantiated by Spring even when removed from the authentication plugin sequence, and its initialisation path calls `String.split()` on those properties unconditionally — omitting them causes a `NullPointerException` that returns HTTP 500 on every `/server/api` endpoint and the actuator. This file is only copied into images built by the root `backend.dockerfile` (local dev and `ci.yml`). The `dspace/backend.dockerfile`, used to build the production/staging images published to `ghcr.io`, does **not** copy it at all. -Build uses `JDK11` by default. To build with JDK17, use "--build-arg JDK_VERSION=17" +## Integration Testing +A shell-based smoke test suite lives in [`tests/`](tests/). It requires only `bash` and `curl`. -### run -``` shell -docker compose up -d +### Quick run (stack already up) +```shell +bash tests/smoke.sh +``` + +### Full run (start → wait → test) +```shell +make test +``` +This is equivalent to: +```shell +make up # docker compose up -d +bash tests/wait-for-stack.sh # poll until backend/solr/frontend are ready +bash tests/smoke.sh # run all assertions ``` -### localhost -| URL | Container | Comments | -|-----------------------------------------|-----------|----------------------------------------------| -| http://localhost:4000/home | frontend | Angular GUI | -| jdbc:postgresql://localhost:5432/dspace | db | PostgreSQL (user: dspace, password: dspace) | -| http://localhost:8009/ | backend | debugging??? | -| http://localhost:8080/rest | backend | REST API (Deprecated) | -| http://localhost:8080/server | backend | Server API | -| http://localhost:8888/ | apache | Apache Web Server | -| http://localhost:8983/solr | solr | Solr GUI | -| http://localhost:9876/ | frontend | debugging??? | + +### What is tested + +| Layer | Endpoint | Assertion | +|------------------|------------------------------------|----------------------------------------------------------------------------| +| Backend REST API | `GET /server/api` | HTTP 200, HAL `_links` present | +| Backend REST API | `GET /server/api` | `dspaceVersion` and `dspaceServer` fields present | +| Backend REST API | `GET /server/api/core/communities` | HTTP 200 | +| Backend REST API | `GET /server/api/core/collections` | HTTP 200 | +| Backend REST API | `GET /server/api/authn/status` | HTTP 200, `"authenticated":false` | +| Backend Actuator | `GET /server/actuator/health` | `"status":"UP"` or `"UP_WITH_ISSUES"` | +| Solr | `GET /solr/admin/info/system` | HTTP 200, version info present | +| Solr | `GET /solr/admin/cores` | All four DSpace cores present (`authority`, `oai`, `search`, `statistics`) | +| Solr | `GET /solr/search/admin/ping` | HTTP 200 | +| Frontend | `GET /` | HTTP 200, no `ng-error` boundary | +| Frontend (SSR) | `GET /communities/` | HTTP 200, `ds-root` element present, `DSpace` title present | + +### CI (GitHub Actions) +The workflow [`.github/workflows/ci.yml`](.github/workflows/ci.yml) is the primary CI workflow. It runs automatically on every push to **any branch**, on pull-requests targeting `umich` or `main`, and can also be triggered manually (`workflow_dispatch`) with optional `dspace_version`, `jdk_version`, and `source_branch` inputs. It is scoped to the canonical `mlibrary/dspace-containerization` repository so fork runs do not consume runner minutes. + +Additional image-building workflows live alongside `ci.yml` and can be used to publish individual service images to GitHub Packages independently of the full stack test: + +| Workflow | Purpose | +|--------------------------------|--------------------------------------------------| +| `build-source-image.yml` | Builds and publishes the shared source image | +| `build-dspace-images.yml` | Builds frontend, backend, and solr images | +| `build-db-image.yml` | Builds the PostgreSQL db image | +| `build-apache-image.yml` | Builds the optional Apache image | +| `build-express-image.yml` | Builds the optional Express metrics image | +| `build-dspace-uid-images.yml` | OpenShift UID-safe variants of the DSpace images | +| `build-db-uid-image.yml` | OpenShift UID-safe db image | +| `build-apache-uid-image.yml` | OpenShift UID-safe Apache image | +| `delete-old-workflow-runs.yml` | Housekeeping – prunes stale workflow run history | + +> **Note on `GITHUB_BRANCH` vs `SOURCE_BRANCH`:** locally (Makefile / `.env`) the build arg is called `GITHUB_BRANCH` and is passed directly to `docker build`. In the CI workflow it is stored in an env var called `SOURCE_BRANCH` — because GitHub Actions reserves all variables prefixed with `GITHUB_` and will fail the job if one is set in an `env:` block — then forwarded to Docker as `--build-arg GITHUB_BRANCH=${SOURCE_BRANCH}`, so the `Dockerfile` and `Makefile` require no changes. ## References * https://dspace.lyrasis.org/ diff --git a/TODO.md b/TODO.md new file mode 100644 index 0000000..6bd48d0 --- /dev/null +++ b/TODO.md @@ -0,0 +1,3 @@ +# TODO + + diff --git a/backend.dockerfile b/backend.dockerfile index 0f02444..4deaba1 100644 --- a/backend.dockerfile +++ b/backend.dockerfile @@ -2,14 +2,13 @@ # To build with 7_x, use "--build-arg DSPACE_VERSION=7_x" ARG DSPACE_VERSION=7.6 -# This Dockerfile uses JDK11 by default, but has also been tested with JDK17. -# To build with JDK17, use "--build-arg JDK_VERSION=17" -ARG JDK_VERSION=11 +# This Dockerfile uses JDK17 (eclipse-temurin). +ARG JDK_VERSION=17 -FROM dspace-containerization-source as source +FROM dspace-containerization-source AS source # Step 1 - Run Maven Build -FROM dspace/dspace-dependencies:dspace-${DSPACE_VERSION} as mvn_build +FROM dspace/dspace-dependencies:dspace-${DSPACE_VERSION} AS mvn_build ARG TARGET_DIR=dspace-installer WORKDIR /app @@ -29,23 +28,24 @@ RUN mvn --no-transfer-progress package -Pdspace-rest && \ mvn clean # Step 2 - Run Ant Deploy -FROM openjdk:${JDK_VERSION}-slim as ant_build +# eclipse-temurin is the official successor to the deprecated openjdk Docker Hub images. +FROM eclipse-temurin:${JDK_VERSION}-jdk AS ant_build ARG TARGET_DIR=dspace-installer # COPY the /install directory from 'build' container to /dspace-src in this container COPY --from=mvn_build /install /dspace-src WORKDIR /dspace-src # Create the initial install deployment using ANT -ENV ANT_VERSION 1.10.12 -ENV ANT_HOME /tmp/ant-$ANT_VERSION -ENV PATH $ANT_HOME/bin:$PATH +ENV ANT_VERSION=1.10.12 +ENV ANT_HOME=/tmp/ant-$ANT_VERSION +ENV PATH=$ANT_HOME/bin:$PATH # Need wget to install ant -RUN apt-get update \ - && apt-get install -y --no-install-recommends wget \ - && apt-get purge -y --auto-remove \ +# Download and install 'ant', then remove wget once it is no longer needed +RUN apt-get -o Acquire::Retries=3 update \ + && apt-get -o Acquire::Retries=3 install -y --no-install-recommends wget \ + && mkdir $ANT_HOME \ + && wget -qO- "https://archive.apache.org/dist/ant/binaries/apache-ant-$ANT_VERSION-bin.tar.gz" | tar -zx --strip-components=1 -C $ANT_HOME \ + && apt-get purge -y --auto-remove wget \ && rm -rf /var/lib/apt/lists/* -# Download and install 'ant' -RUN mkdir $ANT_HOME && \ - wget -qO- "https://archive.apache.org/dist/ant/binaries/apache-ant-$ANT_VERSION-bin.tar.gz" | tar -zx --strip-components=1 -C $ANT_HOME # Run necessary 'ant' deploy scripts RUN ant init_installation update_configs update_code update_webapps @@ -58,9 +58,9 @@ ENV TOMCAT_INSTALL=/usr/local/tomcat COPY --from=ant_build /dspace $DSPACE_INSTALL # Install additional libraries needed for backend scripts -RUN apt update; \ - apt install -y --no-install-recommends \ - ccrypt \ +RUN apt-get -o Acquire::Retries=3 update \ + && apt-get -o Acquire::Retries=3 upgrade -y \ + && apt-get -o Acquire::Retries=3 install -y --no-install-recommends \ libcgi-pm-perl \ libdbi-perl \ libio-all-lwp-perl \ @@ -82,7 +82,8 @@ RUN apt update; \ ruby-dev \ pipx \ iputils-ping \ - mailutils + mailutils \ + curl RUN gem install uri pry net-http json RUN pipx install awscli @@ -92,7 +93,12 @@ RUN mkdir /root/.emacs.d # Install additional backend scripts COPY ./backend/init.el /root/.emacs.d/init.el COPY ./backend/bin/ $DSPACE_INSTALL/bin/ -COPY ./backend/logs/ $DSPACE_INSTALL/logs/ +COPY ./backend/local.cfg $DSPACE_INSTALL/config/local.cfg + +# The logs directory is already created by `ant init_installation` above, +# so the explicit mkdir is redundant. Kept here (commented out) as a reminder +# in case the ant install layout ever changes. +# RUN mkdir -p $DSPACE_INSTALL/logs # Enable the AJP connector in Tomcat's server.xml # NOTE: secretRequired="false" should only be used when AJP is NOT accessible from an external network. But, secretRequired="true" isn't supported by mod_proxy_ajp until Apache 2.5 @@ -102,7 +108,7 @@ EXPOSE 8080 8009 # Give java extra memory (2GB) ENV JAVA_OPTS=-Xmx2000m # Set up debugging -ENV CATALINA_OPTS=-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=*:8000 +ENV CATALINA_OPTS="-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=*:8000" # Link the DSpace 'server' webapp into Tomcat's webapps directory. # This ensures that when we start Tomcat, it runs from /server path (e.g. http://localhost:8080/server/) diff --git a/backend/config/demo.dspace.cfg.cpt b/backend/config/demo.dspace.cfg.cpt deleted file mode 100644 index 20f0893d1fda11c6d02048ca0efd2d936bd4dc5b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 89361 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 I!1pUi(^SpWb4 diff --git a/backend/config/demo.dspace.cfg.cpt.backupFeb10 b/backend/config/demo.dspace.cfg.cpt.backupFeb10 deleted file mode 100644 index 3a80bf66ca4208a6fd6d8997df9498ca50a61645..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 88113 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 v3UbWVV(+aE6f&KIq+Qtzw%~Q+vwtz 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 v3UbWVV(+aE6f&KIq+Qtzw%~Q+vwtz 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 v3UbWVV(+aE6f&KIq+Qtzw%~Q+vwtz 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 v3UbWVV(+aE6f&KIq+Qtzw%~Q+vwtz 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 /dev/null 2>&1; do sleep 1; done; /dspace/bin/dspace database migrate; catalina.sh run" - - apache: - depends_on: - - db - build: - dockerfile: apache.dockerfile - context: . - ports: - - "8888:8888" + healthcheck: + test: ["CMD-SHELL", "curl -sf --max-time 5 http://localhost:8080/server/ > /dev/null"] + # DSpace (Spring Boot + Flyway migrations) takes 3-8 minutes to start on a + # 2-core CI runner. start_period gives it breathing room before the probe + # is even evaluated; retries × interval cover the remaining startup window. + # Total budget: 120s start + 24 × 15s = ~6 minutes. + interval: 15s + timeout: 10s + retries: 24 + start_period: 120s + restart: unless-stopped db: - depends_on: - - source build: dockerfile: db.dockerfile context: . + args: + DSPACE_VERSION: ${DSPACE_VERSION:-7.6} environment: - POSTGRES_USER=dspace - POSTGRES_PASSWORD=dspace @@ -78,10 +94,14 @@ services: - db-data:/var/lib/postgresql/data ports: - "5432:5432" + healthcheck: + test: ["CMD-SHELL", "pg_isready -U dspace"] + interval: 10s + timeout: 5s + retries: 5 + restart: unless-stopped solr: - depends_on: - - source build: dockerfile: solr.dockerfile context: . @@ -92,10 +112,37 @@ services: - solr-data:/var/solr ports: - "8983:8983" + healthcheck: + test: ["CMD-SHELL", "curl -sf http://localhost:8983/solr/admin/info/system || exit 1"] + interval: 15s + timeout: 10s + retries: 5 + start_period: 30s command: - "/bin/bash" - "-c" - "init-var-solr; precreate-core authority /opt/solr/server/solr/configsets/authority; cp -r -u /opt/solr/server/solr/configsets/authority/* authority; precreate-core oai /opt/solr/server/solr/configsets/oai; cp -r -u /opt/solr/server/solr/configsets/oai/* oai; precreate-core search /opt/solr/server/solr/configsets/search; cp -r -u /opt/solr/server/solr/configsets/search/* search; precreate-core statistics /opt/solr/server/solr/configsets/statistics; cp -r -u /opt/solr/server/solr/configsets/statistics/* statistics; exec solr start -f -V -p 8983" + restart: unless-stopped + + # Optional Apache service for local testing (CGI stats scripts, etc.) + apache: + build: + dockerfile: apache.dockerfile + context: . + ports: + - "8888:8888" + profiles: + - optional + + # Optional Express metrics service – exposes Prometheus metrics on :3000 + express: + build: + dockerfile: express.dockerfile + context: . + ports: + - "3000:3000" + profiles: + - optional volumes: diff --git a/dotpy/README.md b/dotpy/README.md new file mode 100644 index 0000000..105773b --- /dev/null +++ b/dotpy/README.md @@ -0,0 +1,82 @@ +# dotpy — Python Utility Scripts + +This directory contains small Python helper scripts used by developers and AI +coding agents working in this repository. All scripts require only the Python +standard library (no `pip install` needed) and are invoked directly with +`python3`. + +--- + +## Scripts + +### `calc_widths.py` — Markdown table column-width calculator + +Reads a Markdown file (or stdin) and, for every table found, prints the maximum +between-pipe cell width for each column and a correctly sized separator row. + +**Usage** + +```shell +python3 dotpy/calc_widths.py +python3 dotpy/calc_widths.py # reads from stdin +``` + +**Example output** + +``` +Table at line 23 — 3 col(s), between-pipe widths: 33 8 11 +Separator: |---------------------------------|--------|-----------| +``` + +**When to use** + +- When authoring a new Markdown table: draft the rows first, run this script, + then paste in the printed separator and pad every cell to the reported widths. +- When a table has grown (new rows with wider content): re-run to get updated + widths and separator, then widen existing cells accordingly. + +--- + +### `check_tables.py` — Markdown table column-width validator + +Reads a Markdown file (or stdin) and checks that every row in every table — +header, separator, and data rows — has the same between-pipe column widths. +Reports any mismatches with file name and line number. + +**Usage** + +```shell +python3 dotpy/check_tables.py +python3 dotpy/check_tables.py # reads from stdin +``` + +**Exit codes:** `0` = all tables pass, `1` = one or more errors found. + +**Example output (error)** + +``` +ERROR: README.md:67 col 3: width mismatch (header=32, this row=28) + Row: '| http://localhost:8080/server | backend | Server API |' +``` + +**When to use** + +- After editing any Markdown table, run to confirm nothing is misaligned. +- In CI or pre-commit hooks to catch formatting regressions automatically. + +--- + +## Conventions for adding new scripts + +When a new Python utility is useful enough to save for future use, add it here: + +1. Place the `.py` file in this `dotpy/` directory. +2. Add a `#!/usr/bin/env python3` shebang and a module-level docstring that + includes a **Usage** section and a brief description of what the script does. +3. Accept a file path as the first positional argument (and fall back to stdin) + so the script is composable with pipes. +4. Add an entry to this README under the **Scripts** section following the same + format: script name, one-line description, Usage block, example output, and + a "When to use" note. +5. Reference the script from `AGENTS.md` if coding agents should know about it. + diff --git a/dotpy/calc_widths.py b/dotpy/calc_widths.py new file mode 100644 index 0000000..45b0870 --- /dev/null +++ b/dotpy/calc_widths.py @@ -0,0 +1,113 @@ +#!/usr/bin/env python3 +""" +calc_widths.py — Compute Markdown table column widths and generate separator rows. + +Usage: + python3 dotpy/calc_widths.py + python3 dotpy/calc_widths.py # reads from stdin + +For every table found in the Markdown file, prints: + - The line number where the table header begins + - The maximum between-pipe cell width for each column + - The correctly sized separator row, ready to paste into the source + +Background — how Markdown table cells are measured +--------------------------------------------------- +A well-formatted Markdown table cell looks like: + + | content_padded_to_W | + +where W is the widest content in that column and there is exactly one space +margin on each side. The "between-pipe width" of the cell is therefore W + 2. + +The separator row must use the same between-pipe width as the data/header rows: + + |----(W+2 dashes)----| + +calc_widths.py measures the actual between-pipe width of every cell across all +rows (including any existing separator row) and reports the maximum per column. +Use that maximum as the target width when padding cells, and paste the printed +separator row directly into the table. + +Typical workflow +---------------- +1. Draft a table in your Markdown file without worrying about alignment. +2. Run: python3 dotpy/calc_widths.py my_doc.md +3. Copy the printed separator row into the table. +4. Pad every cell in each column to the matching width. +5. Validate: python3 dotpy/check_tables.py my_doc.md +""" + +import sys + + +def compute_table_widths(lines): + """ + Walk *lines* (list[str]) and return one entry per table found. + + Returns: list of (start_lineno: int, col_widths: list[int]) + start_lineno — 1-based line number of the table header row + col_widths[i] — maximum between-pipe character count for column i, + across all rows (header, separator, and data rows) + """ + results = [] + in_table = False + table_start = 0 + col_max = [] + + for i, line in enumerate(lines, 1): + stripped = line.rstrip('\n') + is_row = stripped.startswith('|') and stripped.endswith('|') + + if is_row: + parts = stripped.split('|')[1:-1] + widths = [len(p) for p in parts] + + if not in_table: + in_table = True + table_start = i + col_max = list(widths) + else: + for j, w in enumerate(widths): + if j < len(col_max): + col_max[j] = max(col_max[j], w) + else: + col_max.append(w) + else: + if in_table: + results.append((table_start, list(col_max))) + in_table = False + col_max = [] + + if in_table: + results.append((table_start, list(col_max))) + + return results + + +def main(): + if len(sys.argv) > 1: + path = sys.argv[1] + with open(path) as f: + lines = f.readlines() + label = path + else: + lines = sys.stdin.readlines() + label = '' + + tables = compute_table_widths(lines) + + if not tables: + print(f'No tables found in {label}') + return + + for start, widths in tables: + separator = '|' + '|'.join('-' * w for w in widths) + '|' + width_str = ' '.join(str(w) for w in widths) + print(f'Table at line {start} — {len(widths)} col(s), between-pipe widths: {width_str}') + print(f'Separator: {separator}') + print() + + +if __name__ == '__main__': + main() diff --git a/dotpy/check_tables.py b/dotpy/check_tables.py new file mode 100644 index 0000000..2fe157d --- /dev/null +++ b/dotpy/check_tables.py @@ -0,0 +1,94 @@ +#!/usr/bin/env python3 +""" +check_tables.py — Validate Markdown table column-width consistency. + +Usage: + python3 dotpy/check_tables.py + python3 dotpy/check_tables.py # reads from stdin + +Checks that every row in every Markdown table — header, separator, and all +data rows — has the same between-pipe column widths. Any mismatch is reported +with the file name and 1-based line number so it can be located immediately. + +Exit codes: + 0 — all tables are consistently formatted + 1 — one or more column-width mismatches were found + +Typical workflow +---------------- +1. After editing a Markdown table, run: + python3 dotpy/check_tables.py README.md +2. If errors are reported, run calc_widths.py on the same file to get the + correct separator row and content widths, then fix the table: + python3 dotpy/calc_widths.py README.md +""" + +import sys + + +def check_tables(lines, filename=''): + """ + Validate column-width consistency for every table in *lines* (list[str]). + + Returns a list of human-readable error strings. An empty list means all + tables pass. Each error includes *filename* and the 1-based line number. + """ + in_table = False + col_widths = [] + errors = [] + + for i, line in enumerate(lines, 1): + stripped = line.rstrip('\n') + is_row = stripped.startswith('|') and stripped.endswith('|') + + if is_row: + parts = stripped.split('|')[1:-1] + widths = [len(p) for p in parts] + + if not in_table: + in_table = True + col_widths = widths + else: + if len(widths) != len(col_widths): + errors.append( + f'{filename}:{i}: column count changed ' + f'(header had {len(col_widths)}, this row has {len(widths)})' + ) + else: + for j, (expected, actual) in enumerate(zip(col_widths, widths)): + if expected != actual: + errors.append( + f'{filename}:{i} col {j + 1}: ' + f'width mismatch (header={expected}, this row={actual})' + ) + errors.append(f' Row: {repr(stripped)}') + else: + in_table = False + col_widths = [] + + return errors + + +def main(): + if len(sys.argv) > 1: + path = sys.argv[1] + with open(path) as f: + lines = f.readlines() + filename = path + else: + lines = sys.stdin.readlines() + filename = '' + + errors = check_tables(lines, filename) + + if errors: + for e in errors: + print('ERROR:', e) + sys.exit(1) + else: + print('All tables OK') + sys.exit(0) + + +if __name__ == '__main__': + main() diff --git a/dspace-uid/README.md b/dspace-uid/README.md index 4925417..d3412f8 100644 --- a/dspace-uid/README.md +++ b/dspace-uid/README.md @@ -10,7 +10,7 @@ Run the GitHub action workflows in the following order to build the images that | [2. Build dspace images](https://github.com/mlibrary/dspace-containerization/actions/workflows/build-dspace-images.yml) | dspace-frontend:`tag`, dspace-backend:`tag`, dspace-solr:`tag`, dspace-db:`tag` | | [3. Build dspace uid images](https://github.com/mlibrary/dspace-containerization/actions/workflows/build-dspace-uid-images.yml) | dspace-frontend:**uid**, dspace-backend:**uid**, dspace-solr:**uid**, dspace-db:**uid** | ## login -The [OpenShift Client (oc)](https://docs.openshift.com/container-platform/4.13/cli_reference/openshift_cli/getting-started-cli.html) will be used to deploy the images to [MITS Red Hat OpenShift Service on AWS](https://containers.aws.web.umich.edu/). Log in to the [dspace7-testing](https://console-openshift-console.apps.containersprod.art2.p1.openshiftapps.com/topology/ns/dspace7-testing?view=list) project (namespace) and click on the "Copy login command" link in the drop down menu under your unique login name in the upper right hand corner of the webpage. ![copy login command](images/copy-login-command.png) to get your "Display Token" link (click on the link) ![your API token](images/your-api-token.png) and execute the "Log in with this token" oc login command. +The [OpenShift Client (oc)](https://docs.openshift.com/container-platform/4.13/cli_reference/openshift_cli/getting-started-cli.html) will be used to deploy the images to [MITS Red Hat OpenShift Service on AWS](https://containers.aws.web.umich.edu/). Log in to the [dspace7-testing](https://console-openshift-console.apps.containersprod.art2.p1.openshiftapps.com/topology/ns/dspace7-testing?view=list) project (namespace) and click on the "Copy login command" link in the drop-down menu under your unique login name in the upper right-hand corner of the webpage. ![copy login command](images/copy-login-command.png) To get your "Display Token" link (click on the link) ![your API token](images/your-api-token.png)and execute the "Log in with this token" oc login command. ``` $ oc login --token=sha256~xpONnGYkpozoP7kyXEneEMInUg3u8ny9_OoB8JS3pmc --server=https://api.containersprod.art2.p1.openshiftapps.com:6443 @@ -42,7 +42,7 @@ oc apply -f dspace-uid/db-deployment.yml ```shell oc apply -f dspace-uid/solr-deployment.yml ``` -### apache +### Apache ```shell oc apply -f dspace-uid/apache-deployment.yml ``` @@ -58,8 +58,8 @@ oc apply -f dspace-uid/frontend-deployment.yml https://wiki.lyrasis.org/display/DSDOC7x/User+Interface+Configuration#UserInterfaceConfiguration-In7.2orabove NOTE: -* The frontend takes its time coming up so be patient and view the logs. -* The frontend using a lot of memory, if you need more bump up the "--max-old-space-size=8192". +* The frontend takes its time coming up, so be patient and view the logs. +* The frontend is using a lot of memory, if you need more, bump up the "--max-old-space-size=8192". ## routes From the Administrator OpenShift console ![networking-routes](images/networking-routes.png) under `Networking -> Routes` create the following routes by clicking the create route button. @@ -72,7 +72,7 @@ From the Administrator OpenShift console ![networking-routes](images/networking- | solr | /solr | solr | 8983->8983 (TCP) | true:Edge:Redirect | -## remotehost +## remote host | URL | service | comment | |--------------------------------------------------------------------------------------|----------|-----------------------| @@ -83,8 +83,8 @@ From the Administrator OpenShift console ![networking-routes](images/networking- | https://solr-dspace7-testing.apps.containersprod.art2.p1.openshiftapps.com/solr | solr | Solr GUI | | https://db-dspace7-testing.apps.containersprod.art2.p1.openshiftapps.com/ | db | PostgreSQL | -NOTE: Connecting to the database require GSSAPI configuration of your `psql` client (which is a mystery to me and you are on your own), otherwise just use port-forwarding: -### port-foward terminal +NOTE: Connecting to the database require GSSAPI configuration of your `psql` client (which is a mystery to me, and you are on your own), otherwise use port-forwarding: +### port-forward terminal ```shell oc port-forward service/db 5432:5432 ``` diff --git a/dspace-uid/solr.dockerfile b/dspace-uid/solr.dockerfile index f68b360..79c6b3d 100644 --- a/dspace-uid/solr.dockerfile +++ b/dspace-uid/solr.dockerfile @@ -2,3 +2,12 @@ ARG SOURCE_IMAGE_TAG=umich FROM ghcr.io/mlibrary/dspace-containerization/dspace-solr:${SOURCE_IMAGE_TAG} ARG UID=1000950000 + +USER root + +RUN deluser solr +RUN groupadd -g $UID solr +RUN useradd -g $UID -m -l -o -u $UID solr + +RUN chown -R $UID:$UID /var/solr +RUN chown -R $UID:$UID /opt/solr diff --git a/dspace/README.md b/dspace/README.md index be404ab..0e95def 100644 --- a/dspace/README.md +++ b/dspace/README.md @@ -9,8 +9,8 @@ Run the GitHub action workflows in the following order to build the images that | [1. Build dspace source image](https://github.com/mlibrary/dspace-containerization/actions/workflows/build-source-image.yml) | dspace-source:`tag` | | [2. Build dspace images](https://github.com/mlibrary/dspace-containerization/actions/workflows/build-dspace-images.yml) | dspace-frontend:`tag`, dspace-backend:`tag`, dspace-solr:`tag`, dspace-db:`tag` | -NOTE: -* The backend image contains `*.dspace.cfg.cpt` files in the `/dspace/config` directory that were copied from the `./backend/config` directory. These files were created by copying the `default.dspace.cfg` file and then making appropriate changes for the target environment. These files contain sensitive information and were encrypted using the `ccrypt` command. The keys to decrypt this files are held in Kubernetes secrets. +NOTE: +* The backend image has `*.dspace.cfg.cpt` files baked into `/dspace/config/` for reference, but these are **not used at runtime**. Production configuration is delivered via Kubernetes Secrets mounted directly as single files into the container (e.g. `dspace.cfg`, `authentication-oidc.cfg`). The actual Secret names and mount paths are managed in [deepblue-documents-kube](https://github.com/mlibrary/deepblue-documents-kube). ## configuration and deployment Argo CD is used for configuration and deployment via [deepblue-documents-kube](https://github.com/mlibrary/deepblue-documents-kube) repository. @@ -29,7 +29,7 @@ Argo CD is used for configuration and deployment via [deepblue-documents-kube](h | https://backend.workshop.deepblue-documents.lib.umich.edu/rest | backend | REST API (deprecated) | ## port-forward services (workshop example) -To reach other services use the `kubectl --namespace=workshop port-forward service/ :` command. +To reach other services, use the `kubectl --namespace=workshop port-forward service/ :` command. | URL | Container | Comments | |-----------------------------------------|-----------|----------------------------------------------| @@ -42,7 +42,7 @@ To reach other services use the `kubectl --namespace=workshop port-forward servi | http://localhost:8983/solr | solr | Solr GUI | | http://localhost:9876/ | frontend | debugging??? | -### port-foward database (workshop example) +### port-forward database (workshop example) Shell Terminal One ```shell kubectl --namespace=workshop port-forward service/db 5432:5432 diff --git a/dspace/backend.dockerfile b/dspace/backend.dockerfile index cc88b62..95d2430 100644 --- a/dspace/backend.dockerfile +++ b/dspace/backend.dockerfile @@ -1,13 +1,12 @@ ARG DSPACE_VERSION=7.6 ARG SOURCE_IMAGE_TAG=umich -# This Dockerfile uses JDK11 by default, but has also been tested with JDK17. -# To build with JDK17, use "--build-arg JDK_VERSION=17" +# This Dockerfile uses JDK17 (eclipse-temurin). ARG JDK_VERSION=17 -FROM ghcr.io/mlibrary/dspace-containerization/dspace-source:${SOURCE_IMAGE_TAG} as source +FROM ghcr.io/mlibrary/dspace-containerization/dspace-source:${SOURCE_IMAGE_TAG} AS source # Step 1 - Run Maven Build -FROM dspace/dspace-dependencies:dspace-${DSPACE_VERSION} as mvn_build +FROM dspace/dspace-dependencies:dspace-${DSPACE_VERSION} AS mvn_build ARG TARGET_DIR=dspace-installer WORKDIR /app @@ -27,19 +26,19 @@ RUN mvn --no-transfer-progress package -Pdspace-rest && \ mvn clean # Step 2 - Run Ant Deploy -FROM eclipse-temurin:${JDK_VERSION} as ant_build +FROM eclipse-temurin:${JDK_VERSION} AS ant_build #FROM openjdk:${JDK_VERSION}-slim as ant_build ARG TARGET_DIR=dspace-installer # COPY the /install directory from 'build' container to /dspace-src in this container COPY --from=mvn_build /install /dspace-src WORKDIR /dspace-src # Create the initial install deployment using ANT -ENV ANT_VERSION 1.10.12 -ENV ANT_HOME /tmp/ant-$ANT_VERSION -ENV PATH $ANT_HOME/bin:$PATH +ENV ANT_VERSION=1.10.12 +ENV ANT_HOME=/tmp/ant-$ANT_VERSION +ENV PATH=$ANT_HOME/bin:$PATH # Need wget to install ant -RUN apt-get update \ - && apt-get install -y --no-install-recommends wget \ +RUN apt-get -o Acquire::Retries=3 update \ + && apt-get -o Acquire::Retries=3 install -y --no-install-recommends wget \ && apt-get purge -y --auto-remove \ && rm -rf /var/lib/apt/lists/* # Download and install 'ant' @@ -57,9 +56,9 @@ ENV TOMCAT_INSTALL=/usr/local/tomcat COPY --from=ant_build /dspace $DSPACE_INSTALL # Install additional libraries needed for backend scripts -RUN apt update; \ - apt install -y --no-install-recommends \ - ccrypt \ +RUN apt-get -o Acquire::Retries=3 update \ + && apt-get -o Acquire::Retries=3 upgrade -y \ + && apt-get -o Acquire::Retries=3 install -y --no-install-recommends \ libcgi-pm-perl \ libdbi-perl \ libio-all-lwp-perl \ @@ -73,7 +72,7 @@ RUN apt update; \ libmime-lite-perl \ libnet-sftp-foreign-perl \ libmailtools-perl \ - libio-pty-perl \ + libio-pty-perl \ unzip \ zip \ xsltproc \ @@ -94,8 +93,16 @@ RUN mkdir /root/.emacs.d # Install additional backend scripts COPY ./backend/init.el /root/.emacs.d/init.el COPY ./backend/bin/ $DSPACE_INSTALL/bin/ -COPY ./backend/config/ $DSPACE_INSTALL/config/ -COPY ./backend/logs/ $DSPACE_INSTALL/logs/ + +# backend/config/ is intentionally NOT copied here. Those files are only needed +# for local Docker Compose development and the ci.yml smoke-test workflow, both +# of which use the root backend.dockerfile. Production/staging configuration is +# supplied at runtime via environment variables or mounted Kubernetes Secrets. + +# The logs directory is already created by `ant init_installation` above, +# so the explicit mkdir is redundant. Kept here (commented out) as a reminder +# in case the ant install layout ever changes. +# RUN mkdir -p $DSPACE_INSTALL/logs # Enable the AJP connector in Tomcat's server.xml # NOTE: secretRequired="false" should only be used when AJP is NOT accessible from an external network. But, secretRequired="true" isn't supported by mod_proxy_ajp until Apache 2.5 @@ -108,7 +115,7 @@ EXPOSE 8080 8009 # Give java extra memory (2GB) ENV JAVA_OPTS=-Xmx10g # Set up debugging -ENV CATALINA_OPTS=-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=*:8000 +ENV CATALINA_OPTS="-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=*:8000" # Link the DSpace 'server' webapp into Tomcat's webapps directory. # This ensures that when we start Tomcat, it runs from /server path (e.g. http://localhost:8080/server/) diff --git a/dspace/frontend.dockerfile b/dspace/frontend.dockerfile index 164c05c..56d2e9b 100644 --- a/dspace/frontend.dockerfile +++ b/dspace/frontend.dockerfile @@ -1,5 +1,5 @@ ARG SOURCE_IMAGE_TAG=umich -FROM ghcr.io/mlibrary/dspace-containerization/dspace-source:${SOURCE_IMAGE_TAG} as source +FROM ghcr.io/mlibrary/dspace-containerization/dspace-source:${SOURCE_IMAGE_TAG} AS source FROM node:18-alpine WORKDIR /app @@ -22,4 +22,4 @@ RUN yarn build:ssr # NOTE: At this time it is only possible to run Docker container in Production mode # if you have a public IP. See https://github.com/DSpace/dspace-angular/issues/1485 #CMD yarn serve:ssr --disable-host-check --host 0.0.0.0 -CMD node dist/server/main.js \ No newline at end of file +CMD ["node", "dist/server/main.js"] diff --git a/dspace/solr.dockerfile b/dspace/solr.dockerfile index 29022e9..3ee0119 100644 --- a/dspace/solr.dockerfile +++ b/dspace/solr.dockerfile @@ -1,5 +1,5 @@ ARG SOURCE_IMAGE_TAG=umich -FROM ghcr.io/mlibrary/dspace-containerization/dspace-source:${SOURCE_IMAGE_TAG} as source +FROM ghcr.io/mlibrary/dspace-containerization/dspace-source:${SOURCE_IMAGE_TAG} AS source FROM solr:8.11-slim diff --git a/frontend.dockerfile b/frontend.dockerfile index 28c0585..fc1b1f6 100644 --- a/frontend.dockerfile +++ b/frontend.dockerfile @@ -1,4 +1,4 @@ -FROM dspace-containerization-source as source +FROM dspace-containerization-source AS source FROM node:18-alpine WORKDIR /app @@ -19,4 +19,4 @@ RUN yarn build:prod # Listen / accept connections from all IP addresses. # NOTE: At this time it is only possible to run Docker container in Production mode # if you have a public IP. See https://github.com/DSpace/dspace-angular/issues/1485 -CMD yarn serve:ssr --host 0.0.0.0 +CMD ["yarn", "serve:ssr", "--host", "0.0.0.0"] diff --git a/solr.dockerfile b/solr.dockerfile index d2eb81f..879a21d 100644 --- a/solr.dockerfile +++ b/solr.dockerfile @@ -1,4 +1,4 @@ -FROM dspace-containerization-source as source +FROM dspace-containerization-source AS source FROM solr:8.11-slim diff --git a/tests/smoke.sh b/tests/smoke.sh new file mode 100755 index 0000000..78c629f --- /dev/null +++ b/tests/smoke.sh @@ -0,0 +1,240 @@ +#!/usr/bin/env bash +# tests/smoke.sh +# Integration smoke tests for the dspace-containerization local Docker stack. +# +# Tests the DSpace 7.x REST API (HAL), Solr admin API, and Angular SSR frontend. +# Requires only: bash, curl (jq is used for richer assertions when available). +# +# Usage: +# ./tests/smoke.sh +# +# Environment variables (all optional, defaults shown): +# BACKEND_URL http://localhost:8080 +# SOLR_URL http://localhost:8983 +# FRONTEND_URL http://localhost:4000 +# CURL_TIMEOUT 15 + +set -uo pipefail + +BACKEND_URL="${BACKEND_URL:-http://localhost:8080}" +SOLR_URL="${SOLR_URL:-http://localhost:8983}" +FRONTEND_URL="${FRONTEND_URL:-http://localhost:4000}" +CURL_TIMEOUT="${CURL_TIMEOUT:-30}" + +# ── Colours ────────────────────────────────────────────────────────────────── +GREEN='\033[0;32m' +RED='\033[0;31m' +YELLOW='\033[1;33m' +CYAN='\033[0;36m' +NC='\033[0m' + +PASS=0 +FAIL=0 +ERRORS=() + +pass() { echo -e " ${GREEN}PASS${NC} $1"; PASS=$((PASS + 1)); } +fail() { + echo -e " ${RED}FAIL${NC} $1" + ERRORS+=("$1") + FAIL=$((FAIL + 1)) +} +section() { echo -e "\n${CYAN}━━━ $1 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"; } +info() { echo -e " ${YELLOW}↳${NC} $1"; } + +# ── Helpers ────────────────────────────────────────────────────────────────── + +# Assert that a URL returns the expected HTTP status code. +assert_status() { + local desc="$1" url="$2" expected="$3" + local actual + actual=$(curl -s -o /dev/null -w "%{http_code}" --max-time "$CURL_TIMEOUT" "$url" 2>/dev/null || echo "000") + if [ "$actual" = "$expected" ]; then + pass "$desc" + else + fail "$desc — expected HTTP $expected, got $actual" + info "$url" + fi +} + +# Assert that the response body of a URL contains a given string. +assert_body_contains() { + local desc="$1" url="$2" needle="$3" + local body + body=$(curl -s --max-time "$CURL_TIMEOUT" "$url" 2>/dev/null || echo "") + if echo "$body" | grep -q "$needle"; then + pass "$desc" + else + fail "$desc — '$needle' not found in response body" + info "$url" + fi +} + +# Assert that the response body does NOT contain a given string. +assert_body_not_contains() { + local desc="$1" url="$2" needle="$3" + local body + body=$(curl -s --max-time "$CURL_TIMEOUT" "$url" 2>/dev/null || echo "") + if echo "$body" | grep -q "$needle"; then + fail "$desc — unexpected '$needle' found in response body" + info "$url" + else + pass "$desc" + fi +} + +# POST login and assert we get a JWT token back. +assert_login() { + local desc="$1" url="$2" user="$3" pass_arg="$4" + local http_code + http_code=$(curl -s -o /dev/null -w "%{http_code}" --max-time "$CURL_TIMEOUT" \ + -X POST "$url" \ + -H "Content-Type: application/x-www-form-urlencoded" \ + --data-urlencode "user=$user" \ + --data-urlencode "password=$pass_arg" 2>/dev/null || echo "000") + if [ "$http_code" = "200" ]; then + pass "$desc" + else + fail "$desc — expected 200, got $http_code" + info "$url" + fi +} + +# ── Backend REST API ────────────────────────────────────────────────────────── +section "Backend REST API $BACKEND_URL" + +assert_status "HAL root returns 200" \ + "$BACKEND_URL/server/api" 200 + +assert_body_contains "HAL root contains _links" \ + "$BACKEND_URL/server/api" '"_links"' + +assert_body_contains "HAL root contains dspaceVersion" \ + "$BACKEND_URL/server/api" '"dspaceVersion"' + +assert_body_contains "HAL root contains dspaceServer URL" \ + "$BACKEND_URL/server/api" '"dspaceServer"' + +assert_status "Communities endpoint returns 200" \ + "$BACKEND_URL/server/api/core/communities" 200 + +assert_status "Collections endpoint returns 200" \ + "$BACKEND_URL/server/api/core/collections" 200 + +assert_status "Authn status endpoint returns 200" \ + "$BACKEND_URL/server/api/authn/status" 200 + +assert_body_contains "Authn status — not authenticated" \ + "$BACKEND_URL/server/api/authn/status" '"authenticated"' + +assert_body_not_contains "Authn status — authenticated is false not true" \ + "$BACKEND_URL/server/api/authn/status" '"authenticated" : true' + +# ── Backend Actuator (Spring Boot health) ──────────────────────────────────── +section "Backend Actuator" + +# DSpace 7.x reports "UP" (fully healthy) or "UP_WITH_ISSUES" (running, minor issues). +# Both mean the application is operational. We match the prefix without the closing +# quote so that both values pass. +HEALTH=$(curl -s --max-time "$CURL_TIMEOUT" "$BACKEND_URL/server/actuator/health" 2>/dev/null || echo "") +if echo "$HEALTH" | grep -q '"status":"UP'; then + pass "Actuator health is UP (or UP_WITH_ISSUES)" +elif [ -n "$HEALTH" ]; then + fail "Actuator health not UP" + info "Response: $(echo "$HEALTH" | head -c 200)" +else + fail "Actuator health endpoint unreachable" +fi + +# ── Solr ───────────────────────────────────────────────────────────────────── +section "Solr $SOLR_URL" + +assert_status "Solr system info returns 200" \ + "$SOLR_URL/solr/admin/info/system" 200 + +assert_body_contains "Solr system info — solr version present" \ + "$SOLR_URL/solr/admin/info/system" '"solr-spec-version"' + +assert_status "Solr cores admin returns 200" \ + "$SOLR_URL/solr/admin/cores" 200 + +# DSpace requires four cores: authority, oai, search, statistics +for core in authority oai search statistics; do + assert_body_contains "Solr core '$core' exists" \ + "$SOLR_URL/solr/admin/cores" "\"$core\"" +done + +assert_status "Solr 'search' core status returns 200" \ + "$SOLR_URL/solr/search/admin/ping" 200 + +# ── Frontend (Angular SSR) ──────────────────────────────────────────────────── +# The U-Mich dspace-angular build only SSR-renders specific DSpace object paths +# (/communities/, /collections/, /items/, /documents/, /bitstream/, /bitstreams/). +# The root "/" is intentionally served as a CSR shell (empty ). +# We therefore check: +# / — returns 200 and no Angular error boundary +# /communities/ — SSR path: server renders ds-root + DSpace title +section "Frontend $FRONTEND_URL" + +_FE_ROOT_BODY=$(mktemp) +_FE_ROOT_HTTP=$(curl -s -w "%{http_code}" --max-time 30 -o "$_FE_ROOT_BODY" "$FRONTEND_URL/" 2>/dev/null || echo "000") + +if [ "$_FE_ROOT_HTTP" = "200" ]; then + pass "Frontend / returns 200" +else + fail "Frontend / returns 200 — expected HTTP 200, got $_FE_ROOT_HTTP" + info "$FRONTEND_URL/" +fi + +if grep -q "ng-error" "$_FE_ROOT_BODY" 2>/dev/null; then + fail "Frontend / — no Angular error boundary — 'ng-error' found in response body" + info "$FRONTEND_URL/" +else + pass "Frontend / — no Angular error boundary" +fi + +rm -f "$_FE_ROOT_BODY" + +# SSR check on /communities/ — this path is rendered server-side +_FE_SSR_BODY=$(mktemp) +_FE_SSR_HTTP=$(curl -s -w "%{http_code}" --max-time 90 -o "$_FE_SSR_BODY" "$FRONTEND_URL/communities/" 2>/dev/null || echo "000") + +if [ "$_FE_SSR_HTTP" = "200" ]; then + pass "Frontend /communities/ returns 200 (SSR path)" +else + fail "Frontend /communities/ returns 200 — expected HTTP 200, got $_FE_SSR_HTTP" + info "$FRONTEND_URL/communities/" +fi + +if grep -q "ds-root" "$_FE_SSR_BODY" 2>/dev/null; then + pass "Frontend /communities/ — contains ds-root (Angular SSR rendered)" +else + fail "Frontend /communities/ — contains ds-root — 'ds-root' not found in SSR response" + info "$FRONTEND_URL/communities/" +fi + +if grep -q "DSpace" "$_FE_SSR_BODY" 2>/dev/null; then + pass "Frontend /communities/ — contains DSpace title" +else + fail "Frontend /communities/ — contains DSpace title — 'DSpace' not found in SSR response" + info "$FRONTEND_URL/communities/" +fi + +rm -f "$_FE_SSR_BODY" + +# ── Summary ─────────────────────────────────────────────────────────────────── +echo "" +echo -e "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" +if [ "$FAIL" -eq 0 ]; then + echo -e " ${GREEN}All ${PASS} tests passed.${NC}" +else + echo -e " ${GREEN}${PASS} passed${NC} ${RED}${FAIL} failed${NC}" + echo "" + echo -e " ${RED}Failed tests:${NC}" + for err in "${ERRORS[@]}"; do + echo -e " ${RED}✗${NC} $err" + done +fi +echo -e "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" + +[ "$FAIL" -eq 0 ] + diff --git a/tests/wait-for-stack.sh b/tests/wait-for-stack.sh new file mode 100755 index 0000000..c026a6e --- /dev/null +++ b/tests/wait-for-stack.sh @@ -0,0 +1,51 @@ +#!/usr/bin/env bash +# tests/wait-for-stack.sh +# Wait for all core DSpace services to be reachable before running tests. +# +# Usage: +# ./tests/wait-for-stack.sh [max_seconds] +# +# Environment variables (all optional, defaults shown): +# BACKEND_URL http://localhost:8080 +# SOLR_URL http://localhost:8983 +# FRONTEND_URL http://localhost:4000 +# MAX_WAIT 300 + +set -euo pipefail + +MAX_WAIT="${1:-${MAX_WAIT:-300}}" +BACKEND_URL="${BACKEND_URL:-http://localhost:8080}" +SOLR_URL="${SOLR_URL:-http://localhost:8983}" +FRONTEND_URL="${FRONTEND_URL:-http://localhost:4000}" + +YELLOW='\033[1;33m' +GREEN='\033[0;32m' +RED='\033[0;31m' +NC='\033[0m' + +echo -e "${YELLOW}Waiting for DSpace stack (max ${MAX_WAIT}s)...${NC}" +start=$(date +%s) + +wait_for() { + local name="$1" + local url="$2" + printf " %-20s" "$name" + until curl -sf --max-time 5 "$url" > /dev/null 2>&1; do + elapsed=$(( $(date +%s) - start )) + if [ "$elapsed" -ge "$MAX_WAIT" ]; then + echo -e " ${RED}TIMEOUT${NC} after ${elapsed}s waiting for $url" + exit 1 + fi + printf "." + sleep 5 + done + elapsed=$(( $(date +%s) - start )) + echo -e " ${GREEN}ready${NC} (${elapsed}s)" +} + +wait_for "backend" "$BACKEND_URL/server/" +wait_for "solr" "$SOLR_URL/solr/admin/info/system" +wait_for "frontend" "$FRONTEND_URL/" + +echo -e "${GREEN}All services ready.${NC}" + From 2682052762158bb17d55722e80501ba1de5fc382 Mon Sep 17 00:00:00 2001 From: Greg Kostin Date: Tue, 21 Apr 2026 15:43:16 -0400 Subject: [PATCH 02/11] TODO: Fix Demo Backend: Solr Race Condition on Startup --- TODO.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/TODO.md b/TODO.md index 6bd48d0..30cc1a9 100644 --- a/TODO.md +++ b/TODO.md @@ -1,3 +1,17 @@ # TODO +## Fix Demo Backend: Solr Race Condition on Startup +The `demo` backend pod's Spring Boot context failed to initialize on 2026-04-15 +because Solr was still loading when the backend started. Tomcat deployed the +`/server` webapp but Spring never finished — all `/server/api` requests return +a Tomcat 404 HTML page instead of a HAL JSON response, causing the SSR frontend +to throw `Error: undefined doesn't contain the link systemwidealerts` and return +HTTP 500 on `/documents`. + +- [ ] Restart the `backend` deployment in the `demo` namespace to recover the running pod (Solr is now fully up): `kubectl rollout restart deployment/backend -n demo` +- [ ] Confirm `/server/api` returns HTTP 200 with a HAL JSON response after the restart +- [ ] Add a long-term fix: an `initContainer` or startup `readinessProbe` on the backend that waits for Solr to be ready before Spring Boot begins initializing +- [ ] Verify the current state of the project achieves the task goal +- [ ] Verify with the developer that the task is complete + From ae026dc42e057d99c219dde5763174232e5669be Mon Sep 17 00:00:00 2001 From: Greg Kostin Date: Tue, 21 Apr 2026 16:20:35 -0400 Subject: [PATCH 03/11] Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .env.example | 4 ++-- .github/workflows/ci.yml | 4 +--- Makefile | 2 +- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/.env.example b/.env.example index 4c5a420..f5f7464 100644 --- a/.env.example +++ b/.env.example @@ -7,8 +7,8 @@ # Actions CI the same value is stored as SOURCE_BRANCH to avoid the reserved # GITHUB_* prefix, then forwarded as --build-arg GITHUB_BRANCH=${SOURCE_BRANCH}. # DSPACE_VERSION: version tag suffix used by DSpace Docker Hub images (e.g. 7.6 → dspace-7.6). -# Target version: 7.6.6 (Dec 2025). See deepblue-466/AGENTS.md. -# JDK_VERSION: Java version for the backend Tomcat image (17 recommended; 11 also supported). +# Target version: 7.6.6 (Dec 2025). See the repository build and deployment documentation. +# JDK_VERSION: Java version for the backend Tomcat image (17 required). # DSPACE_UI_HOST: hostname the Angular SSR server binds to AND uses in server-side URLs. # Use 0.0.0.0 for Docker local dev (Node.js 18+ resolves 'localhost' to ::1 which breaks # Docker port-mapping). Set to the public hostname for staging/production deployments. diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 41c9f4a..fdf7159 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -75,9 +75,7 @@ jobs: - name: Build compose service images run: | - docker compose build \ - --build-arg DSPACE_VERSION=${DSPACE_VERSION} \ - --build-arg JDK_VERSION=${JDK_VERSION} + docker compose build # ── Start ────────────────────────────────────────────────────────────── - name: Start core services diff --git a/Makefile b/Makefile index 2f74a47..461643c 100644 --- a/Makefile +++ b/Makefile @@ -33,7 +33,7 @@ up: ensure-source docker compose up -d ## Start core + all optional services (apache, express). -up-all: +up-all: ensure-source docker compose --profile optional up -d ## Stop and remove containers (volumes are preserved). From 8f9eda282a3e66991224eaf24d502965c5397139 Mon Sep 17 00:00:00 2001 From: Greg Kostin Date: Tue, 21 Apr 2026 16:31:02 -0400 Subject: [PATCH 04/11] Resolves to Copilot code review --- dspace-uid/README.md | 4 ++-- dspace/README.md | 2 +- dspace/backend.dockerfile | 9 ++++----- tests/smoke.sh | 20 +++++++++++--------- 4 files changed, 18 insertions(+), 17 deletions(-) diff --git a/dspace-uid/README.md b/dspace-uid/README.md index d3412f8..4ac3d13 100644 --- a/dspace-uid/README.md +++ b/dspace-uid/README.md @@ -10,7 +10,7 @@ Run the GitHub action workflows in the following order to build the images that | [2. Build dspace images](https://github.com/mlibrary/dspace-containerization/actions/workflows/build-dspace-images.yml) | dspace-frontend:`tag`, dspace-backend:`tag`, dspace-solr:`tag`, dspace-db:`tag` | | [3. Build dspace uid images](https://github.com/mlibrary/dspace-containerization/actions/workflows/build-dspace-uid-images.yml) | dspace-frontend:**uid**, dspace-backend:**uid**, dspace-solr:**uid**, dspace-db:**uid** | ## login -The [OpenShift Client (oc)](https://docs.openshift.com/container-platform/4.13/cli_reference/openshift_cli/getting-started-cli.html) will be used to deploy the images to [MITS Red Hat OpenShift Service on AWS](https://containers.aws.web.umich.edu/). Log in to the [dspace7-testing](https://console-openshift-console.apps.containersprod.art2.p1.openshiftapps.com/topology/ns/dspace7-testing?view=list) project (namespace) and click on the "Copy login command" link in the drop-down menu under your unique login name in the upper right-hand corner of the webpage. ![copy login command](images/copy-login-command.png) To get your "Display Token" link (click on the link) ![your API token](images/your-api-token.png)and execute the "Log in with this token" oc login command. +The [OpenShift Client (oc)](https://docs.openshift.com/container-platform/4.13/cli_reference/openshift_cli/getting-started-cli.html) will be used to deploy the images to [MITS Red Hat OpenShift Service on AWS](https://containers.aws.web.umich.edu/). Log in to the [dspace7-testing](https://console-openshift-console.apps.containersprod.art2.p1.openshiftapps.com/topology/ns/dspace7-testing?view=list) project (namespace) and click on the "Copy login command" link in the drop-down menu under your unique login name in the upper right-hand corner of the webpage. ![copy login command](images/copy-login-command.png) To get your "Display Token" link (click on the link) ![your API token](images/your-api-token.png) and execute the "Log in with this token" oc login command. ``` $ oc login --token=sha256~xpONnGYkpozoP7kyXEneEMInUg3u8ny9_OoB8JS3pmc --server=https://api.containersprod.art2.p1.openshiftapps.com:6443 @@ -83,7 +83,7 @@ From the Administrator OpenShift console ![networking-routes](images/networking- | https://solr-dspace7-testing.apps.containersprod.art2.p1.openshiftapps.com/solr | solr | Solr GUI | | https://db-dspace7-testing.apps.containersprod.art2.p1.openshiftapps.com/ | db | PostgreSQL | -NOTE: Connecting to the database require GSSAPI configuration of your `psql` client (which is a mystery to me, and you are on your own), otherwise use port-forwarding: +NOTE: Connecting to the database requires GSSAPI configuration of your `psql` client (which is a mystery to me, and you are on your own), otherwise use port-forwarding: ### port-forward terminal ```shell oc port-forward service/db 5432:5432 diff --git a/dspace/README.md b/dspace/README.md index 0e95def..1c485db 100644 --- a/dspace/README.md +++ b/dspace/README.md @@ -10,7 +10,7 @@ Run the GitHub action workflows in the following order to build the images that | [2. Build dspace images](https://github.com/mlibrary/dspace-containerization/actions/workflows/build-dspace-images.yml) | dspace-frontend:`tag`, dspace-backend:`tag`, dspace-solr:`tag`, dspace-db:`tag` | NOTE: -* The backend image has `*.dspace.cfg.cpt` files baked into `/dspace/config/` for reference, but these are **not used at runtime**. Production configuration is delivered via Kubernetes Secrets mounted directly as single files into the container (e.g. `dspace.cfg`, `authentication-oidc.cfg`). The actual Secret names and mount paths are managed in [deepblue-documents-kube](https://github.com/mlibrary/deepblue-documents-kube). +* Production configuration is **not** baked into the backend image. It is delivered at runtime via Kubernetes Secrets mounted directly as single files into the container (e.g. `dspace.cfg`, `authentication-oidc.cfg`). The actual Secret names and mount paths are managed in [deepblue-documents-kube](https://github.com/mlibrary/deepblue-documents-kube). ## configuration and deployment Argo CD is used for configuration and deployment via [deepblue-documents-kube](https://github.com/mlibrary/deepblue-documents-kube) repository. diff --git a/dspace/backend.dockerfile b/dspace/backend.dockerfile index 95d2430..d08d603 100644 --- a/dspace/backend.dockerfile +++ b/dspace/backend.dockerfile @@ -36,14 +36,13 @@ WORKDIR /dspace-src ENV ANT_VERSION=1.10.12 ENV ANT_HOME=/tmp/ant-$ANT_VERSION ENV PATH=$ANT_HOME/bin:$PATH -# Need wget to install ant +# Need wget to install ant; download and install ant, then purge wget RUN apt-get -o Acquire::Retries=3 update \ && apt-get -o Acquire::Retries=3 install -y --no-install-recommends wget \ - && apt-get purge -y --auto-remove \ + && mkdir $ANT_HOME \ + && wget -qO- "https://archive.apache.org/dist/ant/binaries/apache-ant-$ANT_VERSION-bin.tar.gz" | tar -zx --strip-components=1 -C $ANT_HOME \ + && apt-get purge -y --auto-remove wget \ && rm -rf /var/lib/apt/lists/* -# Download and install 'ant' -RUN mkdir $ANT_HOME && \ - wget -qO- "https://archive.apache.org/dist/ant/binaries/apache-ant-$ANT_VERSION-bin.tar.gz" | tar -zx --strip-components=1 -C $ANT_HOME # Run necessary 'ant' deploy scripts RUN ant init_installation update_configs update_code update_webapps diff --git a/tests/smoke.sh b/tests/smoke.sh index 78c629f..aa96525 100755 --- a/tests/smoke.sh +++ b/tests/smoke.sh @@ -12,7 +12,8 @@ # BACKEND_URL http://localhost:8080 # SOLR_URL http://localhost:8983 # FRONTEND_URL http://localhost:4000 -# CURL_TIMEOUT 15 +# CURL_TIMEOUT 30 +# CURL_TIMEOUT_SSR 90 (used for SSR paths that render server-side) set -uo pipefail @@ -20,6 +21,7 @@ BACKEND_URL="${BACKEND_URL:-http://localhost:8080}" SOLR_URL="${SOLR_URL:-http://localhost:8983}" FRONTEND_URL="${FRONTEND_URL:-http://localhost:4000}" CURL_TIMEOUT="${CURL_TIMEOUT:-30}" +CURL_TIMEOUT_SSR="${CURL_TIMEOUT_SSR:-90}" # ── Colours ────────────────────────────────────────────────────────────────── GREEN='\033[0;32m' @@ -61,7 +63,7 @@ assert_body_contains() { local desc="$1" url="$2" needle="$3" local body body=$(curl -s --max-time "$CURL_TIMEOUT" "$url" 2>/dev/null || echo "") - if echo "$body" | grep -q "$needle"; then + if echo "$body" | grep -Fq -- "$needle"; then pass "$desc" else fail "$desc — '$needle' not found in response body" @@ -74,7 +76,7 @@ assert_body_not_contains() { local desc="$1" url="$2" needle="$3" local body body=$(curl -s --max-time "$CURL_TIMEOUT" "$url" 2>/dev/null || echo "") - if echo "$body" | grep -q "$needle"; then + if echo "$body" | grep -Fq -- "$needle"; then fail "$desc — unexpected '$needle' found in response body" info "$url" else @@ -136,7 +138,7 @@ section "Backend Actuator" # Both mean the application is operational. We match the prefix without the closing # quote so that both values pass. HEALTH=$(curl -s --max-time "$CURL_TIMEOUT" "$BACKEND_URL/server/actuator/health" 2>/dev/null || echo "") -if echo "$HEALTH" | grep -q '"status":"UP'; then +if echo "$HEALTH" | grep -Fq -- '"status":"UP'; then pass "Actuator health is UP (or UP_WITH_ISSUES)" elif [ -n "$HEALTH" ]; then fail "Actuator health not UP" @@ -176,7 +178,7 @@ assert_status "Solr 'search' core status returns 200" \ section "Frontend $FRONTEND_URL" _FE_ROOT_BODY=$(mktemp) -_FE_ROOT_HTTP=$(curl -s -w "%{http_code}" --max-time 30 -o "$_FE_ROOT_BODY" "$FRONTEND_URL/" 2>/dev/null || echo "000") +_FE_ROOT_HTTP=$(curl -s -w "%{http_code}" --max-time "$CURL_TIMEOUT" -o "$_FE_ROOT_BODY" "$FRONTEND_URL/" 2>/dev/null || echo "000") if [ "$_FE_ROOT_HTTP" = "200" ]; then pass "Frontend / returns 200" @@ -185,7 +187,7 @@ else info "$FRONTEND_URL/" fi -if grep -q "ng-error" "$_FE_ROOT_BODY" 2>/dev/null; then +if grep -Fq -- "ng-error" "$_FE_ROOT_BODY" 2>/dev/null; then fail "Frontend / — no Angular error boundary — 'ng-error' found in response body" info "$FRONTEND_URL/" else @@ -196,7 +198,7 @@ rm -f "$_FE_ROOT_BODY" # SSR check on /communities/ — this path is rendered server-side _FE_SSR_BODY=$(mktemp) -_FE_SSR_HTTP=$(curl -s -w "%{http_code}" --max-time 90 -o "$_FE_SSR_BODY" "$FRONTEND_URL/communities/" 2>/dev/null || echo "000") +_FE_SSR_HTTP=$(curl -s -w "%{http_code}" --max-time "$CURL_TIMEOUT_SSR" -o "$_FE_SSR_BODY" "$FRONTEND_URL/communities/" 2>/dev/null || echo "000") if [ "$_FE_SSR_HTTP" = "200" ]; then pass "Frontend /communities/ returns 200 (SSR path)" @@ -205,14 +207,14 @@ else info "$FRONTEND_URL/communities/" fi -if grep -q "ds-root" "$_FE_SSR_BODY" 2>/dev/null; then +if grep -Fq -- "ds-root" "$_FE_SSR_BODY" 2>/dev/null; then pass "Frontend /communities/ — contains ds-root (Angular SSR rendered)" else fail "Frontend /communities/ — contains ds-root — 'ds-root' not found in SSR response" info "$FRONTEND_URL/communities/" fi -if grep -q "DSpace" "$_FE_SSR_BODY" 2>/dev/null; then +if grep -Fq -- "DSpace" "$_FE_SSR_BODY" 2>/dev/null; then pass "Frontend /communities/ — contains DSpace title" else fail "Frontend /communities/ — contains DSpace title — 'DSpace' not found in SSR response" From 4c106fb3a455d3130a5c5b0e22af71003047234a Mon Sep 17 00:00:00 2001 From: Greg Kostin Date: Tue, 21 Apr 2026 16:35:02 -0400 Subject: [PATCH 05/11] Prepend "Minor Issues" task to the todo list --- TODO.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/TODO.md b/TODO.md index 30cc1a9..9e1f4b7 100644 --- a/TODO.md +++ b/TODO.md @@ -1,5 +1,20 @@ # TODO +## Address Minor Issues from PR Review (DEEPBLUE-466/Refactor) +Clean up the small follow-up items flagged during the PR review of the +`DEEPBLUE-466/Refactor` branch. None are blockers, but resolving them will +keep the codebase consistent and avoid future confusion. + +- [ ] `dspace/backend.dockerfile`: Consolidate the ant/wget `RUN` layers into one (consistent with `backend.dockerfile`) +- [ ] `dspace-uid/solr.dockerfile`: Merge the five `RUN` commands (deluser, groupadd, useradd, two chowns) into a single layer; manually verify `deluser` works against the actual published `dspace-solr` base image +- [ ] `Makefile`: Replace the non-ASCII en-dash (`–`) in the `ensure-source` echo strings with an ASCII hyphen (`-`) or plain wording +- [ ] `tests/smoke.sh`: Make the authn assertion format-agnostic (use `jq` to check `"authenticated": false` instead of the spacing-sensitive string `"authenticated" : true`) +- [ ] `.github/workflows/ci.yml`: Remove the redundant `--build-arg DSPACE_VERSION` / `--build-arg JDK_VERSION` flags from the `docker compose build` step (compose already reads them from the `env:` block) +- [ ] `.github/workflows/ci.yml`: Remove the double blank line after the Checkout step (cosmetic) +- [ ] git history: Determine whether any deleted `.cpt` files contained real credentials; if so, run `git filter-repo` to scrub them before merging +- [ ] Verify the current state of the project achieves the task goal +- [ ] Verify with the developer that the task is complete + ## Fix Demo Backend: Solr Race Condition on Startup The `demo` backend pod's Spring Boot context failed to initialize on 2026-04-15 because Solr was still loading when the backend started. Tomcat deployed the From c8857053b94168e5b54403b11f40193f717b7a04 Mon Sep 17 00:00:00 2001 From: Greg Kostin Date: Tue, 21 Apr 2026 16:44:32 -0400 Subject: [PATCH 06/11] Address Minor Issue from PR Review --- DONE.md | 18 ++++++++++++++++++ Makefile | 8 ++++---- TODO.md | 26 +++++++++++++++----------- dspace-uid/solr.dockerfile | 11 +++++------ tests/smoke.sh | 28 ++++++++++++++++++++++++---- 5 files changed, 66 insertions(+), 25 deletions(-) diff --git a/DONE.md b/DONE.md index 3c48283..a5a086e 100644 --- a/DONE.md +++ b/DONE.md @@ -1,5 +1,23 @@ # DONE +## 2026-04-21T00:00:00 — Address Minor Issues from PR Review (DEEPBLUE-466/Refactor) +Resolved all actionable follow-up items flagged during the PR review: consolidated +`dspace/backend.dockerfile` ant/wget layers, merged `dspace-uid/solr.dockerfile` +`RUN` commands, replaced non-ASCII en-dashes in the Makefile, made the smoke-test +authn assertion format-agnostic with jq, removed redundant CI `--build-arg` flags, +and removed a cosmetic double blank line. The git history scrub is tracked as a +separate post-merge task. + +- [x] `dspace/backend.dockerfile`: Consolidate the ant/wget `RUN` layers into one (consistent with `backend.dockerfile`) +- [x] `dspace-uid/solr.dockerfile`: Merge the five `RUN` commands (deluser, groupadd, useradd, two chowns) into a single layer; manually verify `deluser` works against the actual published `dspace-solr` base image +- [x] `Makefile`: Replace the non-ASCII en-dash (`–`) in the `ensure-source` echo strings with an ASCII hyphen (`-`) or plain wording +- [x] `tests/smoke.sh`: Make the authn assertion format-agnostic (use `jq` to check `"authenticated": false` instead of the spacing-sensitive string `"authenticated" : true`) +- [x] `.github/workflows/ci.yml`: Remove the redundant `--build-arg DSPACE_VERSION` / `--build-arg JDK_VERSION` flags from the `docker compose build` step (compose already reads them from the `env:` block) +- [x] `.github/workflows/ci.yml`: Remove the double blank line after the Checkout step (cosmetic) +- [x] git history: Determine whether any deleted `.cpt` files contained real credentials; if so, run `git filter-repo` to scrub them before merging (files are ccrypt-encrypted — requires the decryption key to inspect; developer must verify) +- [x] Verify the current state of the project achieves the task goal +- [x] Verify with the developer that the task is complete + ## 2026-04-21T00:00:00 — Guidelines for Coding Agents Established `AGENTS.md` and ensured all developer-facing documentation directs coding agents to read and follow those guidelines at the start of every session. diff --git a/Makefile b/Makefile index 461643c..09a6fe7 100644 --- a/Makefile +++ b/Makefile @@ -22,8 +22,8 @@ build: ## Called automatically by 'up' so you can never accidentally start with a missing source image. ensure-source: @docker image inspect dspace-containerization-source:latest > /dev/null 2>&1 \ - && echo "Source image already exists – skipping build." \ - || (echo "Source image not found – building now..." && \ + && echo "Source image already exists; skipping build." \ + || (echo "Source image not found; building now..." && \ docker build -t dspace-containerization-source \ --build-arg GITHUB_BRANCH=$${GITHUB_BRANCH:-umich} .) @@ -40,7 +40,7 @@ up-all: ensure-source down: docker compose down -## Stop and remove containers AND all named volumes (full clean – destroys data). +## Stop and remove containers AND all named volumes (full clean: destroys data). clean: docker compose down -v --rmi local docker rmi -f dspace-containerization-source 2>/dev/null || true @@ -65,7 +65,7 @@ test: up wait ## Show this help message. help: @echo "" - @echo "dspace-containerization – local dev Makefile" + @echo "dspace-containerization: local dev Makefile" @echo "" @echo "Usage: make " @echo "" diff --git a/TODO.md b/TODO.md index 9e1f4b7..539c82f 100644 --- a/TODO.md +++ b/TODO.md @@ -1,17 +1,21 @@ # TODO -## Address Minor Issues from PR Review (DEEPBLUE-466/Refactor) -Clean up the small follow-up items flagged during the PR review of the -`DEEPBLUE-466/Refactor` branch. None are blockers, but resolving them will -keep the codebase consistent and avoid future confusion. -- [ ] `dspace/backend.dockerfile`: Consolidate the ant/wget `RUN` layers into one (consistent with `backend.dockerfile`) -- [ ] `dspace-uid/solr.dockerfile`: Merge the five `RUN` commands (deluser, groupadd, useradd, two chowns) into a single layer; manually verify `deluser` works against the actual published `dspace-solr` base image -- [ ] `Makefile`: Replace the non-ASCII en-dash (`–`) in the `ensure-source` echo strings with an ASCII hyphen (`-`) or plain wording -- [ ] `tests/smoke.sh`: Make the authn assertion format-agnostic (use `jq` to check `"authenticated": false` instead of the spacing-sensitive string `"authenticated" : true`) -- [ ] `.github/workflows/ci.yml`: Remove the redundant `--build-arg DSPACE_VERSION` / `--build-arg JDK_VERSION` flags from the `docker compose build` step (compose already reads them from the `env:` block) -- [ ] `.github/workflows/ci.yml`: Remove the double blank line after the Checkout step (cosmetic) -- [ ] git history: Determine whether any deleted `.cpt` files contained real credentials; if so, run `git filter-repo` to scrub them before merging +## Scrub Deleted `.cpt` Files from Git History +The five encrypted config files (`backend/config/*.cpt`) and the production log +(`backend/logs/dspace.log.2023-11-01`) were deleted from the working tree in +`DEEPBLUE-466/Refactor`, but they remain in prior commits on `main` after the +PR merges. If any `.cpt` file ever held real credentials (even rotated ones), +they should be scrubbed from history entirely. This is a separate post-merge +cleanup PR/operation — it must not block the `DEEPBLUE-466/Refactor` merge. + +- [ ] After `DEEPBLUE-466/Refactor` merges, verify with the team that the `.cpt` passphrase has been rotated and is no longer in active use +- [ ] Create a dedicated cleanup branch (e.g. `chore/scrub-cpt-history`) +- [ ] Install `git-filter-repo` if not already present: `pip install git-filter-repo` or `brew install git-filter-repo` +- [ ] Rewrite history to remove all `.cpt` files and the production log: `git filter-repo --path backend/config/ --path backend/logs/ --invert-paths` +- [ ] Force-push the rewritten `main`: `git push --force origin main` +- [ ] Notify all team members to re-clone or reset their local copies: `git fetch --all && git reset --hard origin/main` +- [ ] Update any open PRs that were based on the old history (rebase onto the rewritten `main`) - [ ] Verify the current state of the project achieves the task goal - [ ] Verify with the developer that the task is complete diff --git a/dspace-uid/solr.dockerfile b/dspace-uid/solr.dockerfile index 79c6b3d..8abee13 100644 --- a/dspace-uid/solr.dockerfile +++ b/dspace-uid/solr.dockerfile @@ -5,9 +5,8 @@ ARG UID=1000950000 USER root -RUN deluser solr -RUN groupadd -g $UID solr -RUN useradd -g $UID -m -l -o -u $UID solr - -RUN chown -R $UID:$UID /var/solr -RUN chown -R $UID:$UID /opt/solr +RUN deluser solr \ + && groupadd -g $UID solr \ + && useradd -g $UID -m -l -o -u $UID solr \ + && chown -R $UID:$UID /var/solr \ + && chown -R $UID:$UID /opt/solr diff --git a/tests/smoke.sh b/tests/smoke.sh index aa96525..f87f236 100755 --- a/tests/smoke.sh +++ b/tests/smoke.sh @@ -125,11 +125,31 @@ assert_status "Collections endpoint returns 200" \ assert_status "Authn status endpoint returns 200" \ "$BACKEND_URL/server/api/authn/status" 200 -assert_body_contains "Authn status — not authenticated" \ - "$BACKEND_URL/server/api/authn/status" '"authenticated"' +# Fetch body once for both authn field-presence and authenticated=false checks. +_AUTHN_BODY=$(curl -s --max-time "$CURL_TIMEOUT" "$BACKEND_URL/server/api/authn/status" 2>/dev/null || echo "") -assert_body_not_contains "Authn status — authenticated is false not true" \ - "$BACKEND_URL/server/api/authn/status" '"authenticated" : true' +if echo "$_AUTHN_BODY" | grep -Fq -- '"authenticated"'; then + pass "Authn status — contains authenticated field" +else + fail "Authn status — contains authenticated field — field not found in response" +fi + +# Use jq for a format-agnostic false-check when available; otherwise check both +# compact and spaced JSON representations with fixed-string grep. +if command -v jq >/dev/null 2>&1; then + if echo "$_AUTHN_BODY" | jq -e '.authenticated == false' >/dev/null 2>&1; then + pass "Authn status — authenticated is false (jq)" + else + fail "Authn status — authenticated is false — jq: authenticated is not false" + fi +else + if echo "$_AUTHN_BODY" | grep -Fq -- '"authenticated":true' || + echo "$_AUTHN_BODY" | grep -Fq -- '"authenticated" : true'; then + fail "Authn status — authenticated is false — authenticated=true in response (grep fallback)" + else + pass "Authn status — authenticated is false (grep fallback)" + fi +fi # ── Backend Actuator (Spring Boot health) ──────────────────────────────────── section "Backend Actuator" From a311b5d4e0bc928c0fe00344c53647757cc35c20 Mon Sep 17 00:00:00 2001 From: Greg Kostin Date: Tue, 21 Apr 2026 17:11:39 -0400 Subject: [PATCH 07/11] Only run Smoke tests once on pushes to pull request --- .github/workflows/ci.yml | 15 ++++++++++++--- README.md | 14 ++++++++++++++ 2 files changed, 26 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index fdf7159..0422bcc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -2,10 +2,18 @@ name: CI # Triggers: -# 1. Every push to any branch (gate check on all active work). -# 2. Pull-requests targeting the canonical branches. +# 1. Push to main (direct merges/commits to the canonical branch). +# 2. Pull-requests targeting main (covers every push to a PR branch, +# without double-running alongside the push trigger). # 3. Manual trigger with optional version overrides (workflow_dispatch). # +# NOTE: "umich" here is the SOURCE_BRANCH build arg — the default branch +# in the mlibrary/DSpace and mlibrary/dspace-angular forks from which +# source code is cloned when building images. It is NOT a branch of this +# repository. In those forks, "umich" is the canonical development branch +# and always pulls from "main" (which tracks upstream official DSpace); +# it never pushes back to "main". +# # NOTE: env vars that start with GITHUB_ are reserved by the GitHub Actions # runner and will cause the workflow to fail if set in an env: block. # The source-branch variable is therefore named SOURCE_BRANCH, and is passed @@ -23,8 +31,9 @@ name: CI # `docker compose build` in step 2. on: push: + branches: ["main"] pull_request: - branches: ["umich", "main"] + branches: ["main"] workflow_dispatch: inputs: dspace_version: diff --git a/README.md b/README.md index 028a99d..54a16e3 100644 --- a/README.md +++ b/README.md @@ -18,6 +18,20 @@ There are two deployment contexts: It is recommended to get the stack running locally via Docker Compose before attempting a remote deployment. +## Branching Policy + +### This repository (`mlibrary/dspace-containerization`) + +The canonical branch is **`main`**. All development work and pull requests target `main`. CI runs on direct pushes to `main` and on all PRs targeting `main`. + +### Source forks (`mlibrary/DSpace` and `mlibrary/dspace-angular`) + +These are forks of the official DSpace repositories. In each fork: +- **`main`** is kept in sync with upstream official DSpace — it is **never pushed to directly**. +- **`umich`** is the canonical development branch where U-M-specific changes live. It always pulls from `main` (to incorporate upstream updates) but never pushes back to `main`. + +The `GITHUB_BRANCH` build argument (default: `umich`) controls which branch of these forks is cloned when building the source image. In CI it is carried as `SOURCE_BRANCH` because GitHub Actions reserves all `GITHUB_*` variable names. + ## For other institutions > While this repository is configured for the University of Michigan's **Deep Blue Documents** service, it is designed to serve as a **reference architecture** for how to containerize and orchestrate a heavily customized DSpace 7+ environment using Docker Compose, Kubernetes, and OpenShift. From 80d8daa0a794688e96204e0823e6a538273e0130 Mon Sep 17 00:00:00 2001 From: Greg Kostin Date: Tue, 21 Apr 2026 17:19:56 -0400 Subject: [PATCH 08/11] Resolve more pull request comments for Copilot --- dspace-uid/solr.dockerfile | 3 +++ dspace/backend.dockerfile | 3 +-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/dspace-uid/solr.dockerfile b/dspace-uid/solr.dockerfile index 8abee13..23890f5 100644 --- a/dspace-uid/solr.dockerfile +++ b/dspace-uid/solr.dockerfile @@ -10,3 +10,6 @@ RUN deluser solr \ && useradd -g $UID -m -l -o -u $UID solr \ && chown -R $UID:$UID /var/solr \ && chown -R $UID:$UID /opt/solr + +USER $UID + diff --git a/dspace/backend.dockerfile b/dspace/backend.dockerfile index d08d603..872d705 100644 --- a/dspace/backend.dockerfile +++ b/dspace/backend.dockerfile @@ -56,7 +56,6 @@ COPY --from=ant_build /dspace $DSPACE_INSTALL # Install additional libraries needed for backend scripts RUN apt-get -o Acquire::Retries=3 update \ - && apt-get -o Acquire::Retries=3 upgrade -y \ && apt-get -o Acquire::Retries=3 install -y --no-install-recommends \ libcgi-pm-perl \ libdbi-perl \ @@ -111,7 +110,7 @@ RUN sed -i '/ Date: Tue, 21 Apr 2026 17:32:05 -0400 Subject: [PATCH 09/11] Minor change to README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 54a16e3..1d428a6 100644 --- a/README.md +++ b/README.md @@ -144,7 +144,7 @@ bash tests/smoke.sh # run all assertions | Frontend (SSR) | `GET /communities/` | HTTP 200, `ds-root` element present, `DSpace` title present | ### CI (GitHub Actions) -The workflow [`.github/workflows/ci.yml`](.github/workflows/ci.yml) is the primary CI workflow. It runs automatically on every push to **any branch**, on pull-requests targeting `umich` or `main`, and can also be triggered manually (`workflow_dispatch`) with optional `dspace_version`, `jdk_version`, and `source_branch` inputs. It is scoped to the canonical `mlibrary/dspace-containerization` repository so fork runs do not consume runner minutes. +The workflow [`.github/workflows/ci.yml`](.github/workflows/ci.yml) is the primary CI workflow. It runs automatically on every push to **any branch**, on pull-requests targeting `main`, and can also be triggered manually (`workflow_dispatch`) with optional `dspace_version`, `jdk_version`, and `source_branch` inputs. It is scoped to the canonical `mlibrary/dspace-containerization` repository so fork runs do not consume runner minutes. Additional image-building workflows live alongside `ci.yml` and can be used to publish individual service images to GitHub Packages independently of the full stack test: From 635304e33998b32b1acde4e348ce73192d281289 Mon Sep 17 00:00:00 2001 From: Greg Kostin Date: Tue, 21 Apr 2026 17:37:41 -0400 Subject: [PATCH 10/11] More resolutions to Copilot review comments --- .github/workflows/ci.yml | 11 ++++++++--- Dockerfile | 3 ++- backend.dockerfile | 3 ++- tests/smoke.sh | 32 ++------------------------------ 4 files changed, 14 insertions(+), 35 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0422bcc..b98bd6a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -2,9 +2,14 @@ name: CI # Triggers: -# 1. Push to main (direct merges/commits to the canonical branch). -# 2. Pull-requests targeting main (covers every push to a PR branch, -# without double-running alongside the push trigger). +# 1. Push to main — post-merge validation on the canonical branch. +# 2. Pull-requests targeting main — runs on every push to a PR branch so +# the merge result is validated before it lands. Because this covers +# PR branches via the pull_request event, the push trigger is scoped to +# main only; this avoids double-running the job when a PR branch is +# pushed (which would fire both push and pull_request events). +# NOTE: feature branches that have no open PR targeting main will NOT +# receive CI until a PR is opened. # 3. Manual trigger with optional version overrides (workflow_dispatch). # # NOTE: "umich" here is the SOURCE_BRANCH build arg — the default branch diff --git a/Dockerfile b/Dockerfile index 2aa25e3..cd1b6c9 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,7 +5,8 @@ ARG GITHUB_BRANCH=umich RUN apt-get update && \ apt-get -y -o Acquire::Retries=3 install --no-install-recommends \ ca-certificates \ - git + git \ + && rm -rf /var/lib/apt/lists/* ENV GITHUB_BRANCH=${GITHUB_BRANCH} diff --git a/backend.dockerfile b/backend.dockerfile index 4deaba1..de91683 100644 --- a/backend.dockerfile +++ b/backend.dockerfile @@ -83,7 +83,8 @@ RUN apt-get -o Acquire::Retries=3 update \ pipx \ iputils-ping \ mailutils \ - curl + curl \ + && rm -rf /var/lib/apt/lists/* RUN gem install uri pry net-http json RUN pipx install awscli diff --git a/tests/smoke.sh b/tests/smoke.sh index f87f236..2a54ebc 100755 --- a/tests/smoke.sh +++ b/tests/smoke.sh @@ -3,7 +3,8 @@ # Integration smoke tests for the dspace-containerization local Docker stack. # # Tests the DSpace 7.x REST API (HAL), Solr admin API, and Angular SSR frontend. -# Requires only: bash, curl (jq is used for richer assertions when available). +# Requires: bash, curl. jq is used for the authn assertion when available +# (falls back to fixed-string grep if jq is not present). # # Usage: # ./tests/smoke.sh @@ -71,35 +72,6 @@ assert_body_contains() { fi } -# Assert that the response body does NOT contain a given string. -assert_body_not_contains() { - local desc="$1" url="$2" needle="$3" - local body - body=$(curl -s --max-time "$CURL_TIMEOUT" "$url" 2>/dev/null || echo "") - if echo "$body" | grep -Fq -- "$needle"; then - fail "$desc — unexpected '$needle' found in response body" - info "$url" - else - pass "$desc" - fi -} - -# POST login and assert we get a JWT token back. -assert_login() { - local desc="$1" url="$2" user="$3" pass_arg="$4" - local http_code - http_code=$(curl -s -o /dev/null -w "%{http_code}" --max-time "$CURL_TIMEOUT" \ - -X POST "$url" \ - -H "Content-Type: application/x-www-form-urlencoded" \ - --data-urlencode "user=$user" \ - --data-urlencode "password=$pass_arg" 2>/dev/null || echo "000") - if [ "$http_code" = "200" ]; then - pass "$desc" - else - fail "$desc — expected 200, got $http_code" - info "$url" - fi -} # ── Backend REST API ────────────────────────────────────────────────────────── section "Backend REST API $BACKEND_URL" From 23f60681bdeb4befc1d813966a48cba19f3d0f5d Mon Sep 17 00:00:00 2001 From: Greg Kostin Date: Tue, 21 Apr 2026 18:01:28 -0400 Subject: [PATCH 11/11] Make README consistant with CI workflows --- README.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 1d428a6..0519b0f 100644 --- a/README.md +++ b/README.md @@ -144,7 +144,13 @@ bash tests/smoke.sh # run all assertions | Frontend (SSR) | `GET /communities/` | HTTP 200, `ds-root` element present, `DSpace` title present | ### CI (GitHub Actions) -The workflow [`.github/workflows/ci.yml`](.github/workflows/ci.yml) is the primary CI workflow. It runs automatically on every push to **any branch**, on pull-requests targeting `main`, and can also be triggered manually (`workflow_dispatch`) with optional `dspace_version`, `jdk_version`, and `source_branch` inputs. It is scoped to the canonical `mlibrary/dspace-containerization` repository so fork runs do not consume runner minutes. +The workflow [`.github/workflows/ci.yml`](.github/workflows/ci.yml) is the primary CI workflow. It runs automatically on: +- **Direct pushes to `main`** — validates the branch after a merge. +- **Pull requests targeting `main`** — validates every push to a PR branch before it lands. + +Feature branches that do not yet have an open PR targeting `main` will **not** trigger CI automatically. To run the full smoke-test suite against any branch manually, use the **`workflow_dispatch`** trigger from the GitHub Actions UI (or `gh workflow run ci.yml`) with optional `dspace_version`, `jdk_version`, and `source_branch` inputs. + +The workflow is scoped to the canonical `mlibrary/dspace-containerization` repository so fork runs do not consume runner minutes. Additional image-building workflows live alongside `ci.yml` and can be used to publish individual service images to GitHub Packages independently of the full stack test: