Zum Hauptinhalt springen

CI/CD Automation

While azuma nori currently ships primarily via its robust Standalone Client, the core execution engine is built as a fully headless, automation-ready process. This architecture paves the way for seamless integration into modern continuous integration pipelines.

The Automation Roadmap

Future releases of azuma nori will expand official support for headless integration directly into developer workflows:

  • GitHub Apps & Actions: Automatically trigger compliance scans on pull requests to ensure new code meets TR-03161 requirements before merging.
  • GitLab CI: Native integrations for GitLab runner pipelines.
  • Azure DevOps: Seamless pipeline tasks for enterprise Azure environments.

Headless Execution Concepts

Under the hood, the azuma nori engine is already capable of running in headless mode. Understanding these concepts will prepare you for integrating nori into your automated pipelines.

JSON Logs and Telemetry

In a CI/CD environment, the engine can be instructed to output all logs in a structured JSON format (--output-format json). This allows log aggregators and CI parsers to programmatically track the analysis progress, identify errors instantly, and report back to the build server.

Environment Variable Overrides

To ensure that secrets and platform-specific configurations are never hardcoded into repositories, the engine fully supports environment variable resolution. For example, your deployment scripts can inject the AZUMA_API_KEY directly into the runtime, and the execution engine will securely apply it without manual intervention.

Exit Codes

Automated runs rely on standard exit codes:

  • 0: The analysis, wiki generation, or document indexing completed successfully and the final report/index was generated.
  • 1: A configuration error, runtime failure, critical exception, or failed pipeline step (such as a failed wiki indexing topic or failed document indexing run) halted execution. Build servers use these non-zero exit codes to pass or fail the pipeline stage accordingly.

Note: Headless execution relies on the same shared configuration schema, ensuring a uniform setup regardless of the environment.