Skip to content

Remove or implement the documented production-TLS local path #114

Description

@conradbzura

Description

The README's "Production (TLS/X.509)" section documents a workflow in which every step is missing from the repository:

  • make mongodb-prod — no such Makefile target
  • make api-prod — no such Makefile target
  • make certs — listed in the Makefile targets table; no such target
  • ./certs/generate-certs.sh — not in the repo

The section describes the script's outputs in detail (certs/ca/ca.pem, certs/server/mongodb-server-bundle.pem, certs/clients/cfdb-api-bundle.pem, certs/clients/cfdb-materializer-bundle.pem) and instructs the reader to run ./certs/generate-certs.sh --help for full usage, so it reads as a working feature rather than a plan.

This is distinct from the worker mTLS material, which does exist and works: make worker-certs and certs/generate-worker-certs.sh are real and documented separately under "Worker mTLS". The overlap in naming makes the missing path easy to mistake for the present one.

Expected Behavior

Either the documented commands exist and work, or the section does not claim they do. Anyone following the README to stand up a TLS-enabled local MongoDB should not discover four missing artifacts one at a time.

Root Cause

Not yet investigated — most likely the client-cert tooling was removed or never landed while the documentation for it stayed. Two ways out, and the choice is a judgement call rather than obvious:

  • Implement certs/generate-certs.sh plus the certs, mongodb-prod and api-prod targets, mirroring the shape of the working generate-worker-certs.sh.
  • Cut the section and the make certs table row, pointing production TLS at the deployed stacks (cloudformation/database.yml provisions DocumentDB with TLS) rather than at a local re-creation of it.

Worth deciding deliberately: the deployed environments do not use this path, so the question is whether local X.509 development is something the project wants to support at all.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions