Skip to content

Comparison of generated JSON files vs. json-portal-dsc #195

@tomschr

Description

@tomschr

Project Version

0.16.0

Python Version

3.12, 3.13, 3.14

Operating System

Linux, macOS

Steps to Reproduce

  1. Run docbuild --env-config=env.devel.toml metadata 'sles/12-SP5/*'
  2. Compare the output with json-portal-dsc/sles/12-SP5.json

Expected Behavior

All keys are correct:

  • lang shows LL-CC format
  • acronym is solved (either in G or M)
  • descriptions shows the correct entries
  • categories contains the correct amount and the correct entries
  • format entries contains the correct path
  • dateModified contains a date, not an empty string

Actual Behavior

[Abbreviations: (M) = manually crafted by hand, (G) = generated]

  • productname: ✅

  • acronym: 🔴 In (G) it's SLES but (M) shows sles => (M) is correct, (G) is wrong.

  • version: ✅

  • lifecycle: ✅

  • descriptions: 🔴

    • 🔴 (G) contains more text in the description key.
    • ✅ The amount of languages
  • categories: 🔴

    • ❓ For other languages than English, default: false is missing in (M). Maybe we can remove that in (G), maybe it's not really needed.
    • 🔴 The title is different for ja-jp and zh-cn.
    • ✅ The rank key is correct.
    • ❓ The categoryId: "smart-docs" is there in (G) but not in (M)
  • documents 🔴 (the really important things):
    For the English "Live Kernel Patching Using kGraft" document:

    • 🔴 The language in (G) docs.[].lang: "en" is wrong. It should be en-us.
    • ❓ In (G), the docs.[].default key is missing.
    • 🔴 In (G) for format.html, the path is /sles/12-SP5/html/SLES-kgraft/ whereas in (M) it's /sles/12-SP5/html/SLES-kgraft/art-kgraft.html.
    • 🔴 In (G) for format.pdf, the path is /sles/12-SP5/pdf/SLES-kgraft_en.pdf whereas in (M) it's /sles/12-SP5/pdf/art-kgraft_en.pdf.
    • 🔴 In (G), the dateModified is empty
    • tasks
    • products
    • ❓ In (G), missing "category": "administration"
    • docTypes
    • isGate
    • rank

Additional Information

To simplify comparison, use Sushant's tool:

upython tools/audit_suite.py parity MANUALLY_JSON GENERATED-JSON

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions