Code Generation and Documentation Tiles

This page documents tiles that provide automated code and documentation generation capabilities for NGSS projects.

Multi-Purpose File Generation

filegen-tile

Comprehensive file generation tile that provides multiple code and configuration generation capabilities through the ngss-filegen-maven-plugin.

Purpose

Central tile for generating various project artifacts including Skaffold configurations, Kustomize files, VV YAML, Backstage files, and more.

Features
  • Skaffold configuration generation for Kubernetes development

  • Kustomize file generation for Kubernetes deployments

  • VV YAML generation for vulnerability and version management

  • Backstage catalog and documentation generation

  • Security management README generation

  • Jenkinsfile generation for CI/CD pipelines

  • DIBR README generation

Plugin Configuration
  • Uses ngss-filegen-maven-plugin version 5.7.1 by default

  • Configurable plugin version via ngss-filegen-maven-plugin.version property

  • Executes during Maven process-resources phase

Key Capabilities
  • Skaffold Generation: Creates skaffold.yaml for local development workflows

  • Kustomize Generation: Builds Kubernetes deployment configurations

  • VV Automation: Generates vulnerability and version tracking files

  • Backstage Integration: Creates developer portal documentation

  • Security Documentation: Generates security management guidelines

  • CI/CD Integration: Creates Jenkins pipeline configurations

Usage
  • Essential for modern NGSS development workflows

  • Automatically generates required deployment and development files

  • Reduces manual configuration overhead

  • Ensures consistency across projects

Configuration Properties
  • ngss-filegen-maven-plugin.version: Plugin version (default: 5.7.1)

  • Additional generation-specific properties as needed

Specialized Documentation Generation

dibr-readme-generator-tile

Generates DIBR (Deployment Infrastructure Build Readme) documentation for deployment processes.

Purpose

Creates standardized deployment documentation based on project configuration and metadata.

Features
  • Automated DIBR README generation

  • Deployment instruction documentation

  • Configuration documentation

  • Build process documentation

Plugin Integration
  • Uses ngss-filegen-maven-plugin for generation

  • Executes during Maven package phase

  • Generates deployment-specific documentation

Usage
  • Essential for projects requiring deployment documentation

  • Maintains up-to-date deployment guides automatically

  • Reduces manual documentation overhead

fly_way-generator-tile

Generates Flyway database migration scripts and configurations.

Purpose

Automates the creation of database migration scripts using Flyway conventions and NGSS standards.

Features
  • Flyway migration script generation

  • Database schema version management

  • SQL migration file creation

  • Migration configuration automation

Plugin Integration
  • Uses ngss-filegen-maven-plugin for Flyway script generation

  • Integrates with database development workflows

  • Supports Flyway naming conventions

Usage
  • Essential for projects with database schema management

  • Automates migration script creation

  • Ensures consistent database versioning

Developer Experience and Documentation

backstage-tile

Backstage developer portal integration for service catalog and documentation management.

Purpose

Integrates services with Backstage developer portal by generating catalog files and managing documentation.

Features
  • Backstage catalog file generation and management

  • README documentation conversion (README.md → docs/index.md)

  • OpenAPI/Swagger documentation integration

  • Automatic documentation updates

Key Capabilities
  • Catalog Integration: Creates Backstage service catalog entries

  • Documentation Management: Handles developer portal documentation

  • OpenAPI Integration: Automatically includes OpenAPI documentation when swagger.json exists

  • File Management: Copies and manages Backstage-related files

Activation
  • Automatically activated when OpenAPI documentation (swagger.json) is present

  • Provides seamless integration with existing API documentation

Usage
  • Essential for services participating in developer portal ecosystem

  • Automates service catalog maintenance

  • Provides unified documentation experience

Integration Points
  • Works with OpenAPI/Swagger documentation

  • Integrates with existing README files

  • Supports continuous documentation updates

File Generation Selection Guide

Use filegen-tile when: - You need comprehensive project file generation - Working with Kubernetes/Skaffold development - Require multiple types of generated configurations - Want centralized file generation management

Use dibr-readme-generator-tile when: - You need specialized deployment documentation - Working with DIBR compliance requirements - Want automated deployment guides

Use fly_way-generator-tile when: - Managing database schemas with Flyway - Need automated migration script generation - Working with database version control

Use backstage-tile when: - Participating in Backstage developer portal - Need service catalog integration - Want automated documentation management

Integration with Development Workflow

These generation tiles integrate seamlessly with: - skaffold-tile: Uses generated Skaffold configurations - Container build tiles: Use generated deployment configurations - vv-automation-tile: Uses generated VV YAML files - CI/CD pipelines: Use generated Jenkinsfiles and configurations