Files
TSYSDevStack/Toolbox/docs/documentation/QWEN.md
2025-11-11 21:00:37 -06:00

2.5 KiB

TSYS Group Development Stack - Toolboxes - DocsAndDiagrams

Overview

This project implements a Docker-based document production workhorse as specified in the PRD.md. The container image tsysdevstack-toolboxes-docs provides a comprehensive set of tools for document generation, including pandoc, mdbook, typst, marp, markwhen, kroki cli, quarto, bibtool, vale, and more.

Components Created

Dockerfile

  • Production-ready image based on Debian stable
  • Uses tsysdevstack user for all runtime operations
  • Implements multi-stage build with security best practices
  • Uses mise to manage language runtimes (Python, Node.js, Rust)
  • Installs all required tools using version-pinned packages

Scripts

  • build.sh: Builds the Docker image using Docker Buildx for multi-platform support
  • run.sh: Simplifies running the container with customizable options
  • test.sh: Comprehensive test suite to verify all tools are properly installed
  • validate.sh: Validates files using hadolint, shellcheck, and yamllint

Configuration Files

  • docker-compose.yml: Simplifies container orchestration
  • devcontainer.json: Enables development container support in VS Code

Quality Assurance & Compliance

Hadolint Compliance

All Dockerfile issues have been resolved to achieve 100% compliance:

  • Fixed: Pin versions in apt-get install commands
  • Fixed: Added --no-install-recommends to apt-get commands
  • Fixed: Set SHELL option -o pipefail before RUN with pipes
  • Fixed: Consolidated consecutive RUN instructions to address DL3059
  • Verified: No warnings or errors from hadolint

Shellcheck Compliance

All shell scripts have been validated to achieve 100% compliance:

  • run.sh: No issues detected
  • build.sh: Addressed SC2086 (word splitting) with appropriate handling
  • test.sh: No issues detected
  • validate.sh: No issues detected
  • Verified: All scripts pass shellcheck validation

Yamllint Compliance

The docker-compose.yml file has been validated to achieve 100% compliance:

  • Fixed: Added document start marker (---)
  • Fixed: Removed trailing spaces
  • Fixed: Ensured newline at end of file
  • Verified: No warnings or errors from yamllint

Validation Process

All validation tools are used via Docker images as specified:

  • hadolint/hadolint for Dockerfile validation
  • koalaman/shellcheck:stable for shell script validation
  • cytopia/yamllint:latest for YAML validation

The validation process is performed automatically during development to ensure continuous compliance with best practices.