DoculaDevelopersDezvoltatori
API 0.8.0 · BuildVersiune produs 0.33.0
Documentation navigationNavigare documentație

ExamplesExemple · API 0.8.0

provision-document-type

Each example is a fixture directory validated at build time against the released contracts: a JSON contract, a declarative transform, a template, a curl sequence and the expected output. Guides embed these files verbatim so documentation cannot drift from validated fixtures.Fiecare exemplu este un director de fixture-uri validat la build față de contractele publicate: un contract JSON, o transformare declarativă, un șablon, o secvență curl și rezultatul așteptat. Ghidurile includ aceste fișiere textual, astfel încât documentația nu poate devia de fixture-urile validate.

Files in this fixtureFișierele acestui fixture

provision-document-type/fixture.json · 1189 bytes · sha256 c65456416448b693…
{
  "schema": "docula.example-fixture/v1",
  "slug": "provision-document-type",
  "guide": "/developers/guides/provision-document-type-via-api",
  "title": "Provision a document type via API",
  "summary": "A deploy-time wrapper around Docula's validated synthetic RCA provisioning sequence: contract, cases, canonical transformers, DOCX templates, ingestion model, versions, activations and releases, using a dedicated engineer service account.",
  "operations": ["login", "createIngestionModel", "createCanonicalTransformer", "createTemplate", "applyConfigurationDeployment"],
  "related": ["declarative-transform", "docx-template", "release-immutability"],
  "files": [
    {"path": "provision.sh", "purpose": "Runs the complete idempotent provisioning sequence against Docula using credentials read only from mode-0400 files.", "validate": {"kind": "shell"}},
    {"path": "provision-options.json", "purpose": "Non-secret local endpoint, fixed automation username and receipt location.", "validate": {"kind": "json"}},
    {"path": "lifecycle.json", "purpose": "The producer-before-consumer provisioning order and immutable lifecycle checkpoints.", "validate": {"kind": "json"}}
  ]
}
provision-document-type/lifecycle.json · 180 bytes · sha256 aa67c792d461983e…
{
  "order": ["contract", "cases", "transformers", "templates", "ingestion_model", "releases"],
  "protocol": ["validate", "version", "publish", "resolve"],
  "idempotent": true
}
provision-document-type/provision-options.json · 146 bytes · sha256 ee6fa99b5428d85c…
{
  "base_url": "http://127.0.0.1:18081",
  "service_username": "docula-automation",
  "receipt_file": "/tmp/docula-provision-rca-receipt.json"
}
provision-document-type/provision.sh · 635 bytes · sha256 62929c6a648bcd70…
#!/bin/sh
# Provision the repository's synthetic RCA document type from scratch.
# The complete request bodies are generated and checked by scripts/deploy-rca-demo.sh.
set -eu
REPO_ROOT=${DOCULA_SOURCE_ROOT:-$(CDPATH= cd -- "$(dirname "$0")/../../../.." && pwd)}
: "${DOCULA_USERNAME_FILE:?absolute mode-0400 file containing docula-automation}"
: "${DOCULA_PASSWORD_FILE:?absolute mode-0400 service-account password file}"
export DOCULA_BASE_URL=${DOCULA_BASE_URL:-http://127.0.0.1:18081}
export DOCULA_RECEIPT_FILE=${DOCULA_RECEIPT_FILE:-${TMPDIR:-/tmp}/docula-provision-rca-receipt.json}
exec "$REPO_ROOT/scripts/deploy-rca-demo.sh"