configng-v2

Module SDK & Development Guide: configng-v2

This guide covers the practical SDK for contributing modules to configng-v2.

📋 For project roadmap and milestone tracking, see ROADMAP.md


Directory Structure


Module Contribution SDK

  1. Scaffold a Module
    • run
      ./SDK/00_start_here.sh <modulename>
      
    • Creates staging/<modulename>.sh, and staging/<modulename>.conf.
  2. Develop
    • Write module logic in .sh (use tabs for indentation).
    • updade the about help message
    • Fill out .conf (flat key=value).
  3. Verify & Test
    • Manually test your module in staging/.
    • Run:
      ./SDK/10_validate_module.sh
      
    • fix invalid/missing if any
  4. Promote modules to ./src
    • Move ready modules from staging/ to src/ as defined in .conf.
    • run
      ./SDK/20_promote_module.sh
      
  5. Generate Documents from promoted metadata
    • run
      ./SDK/30_docstring.sh
      
  6. Consolidate modules
    • Flatten src/ modules into lib/ as needed for releases.
    • run
      ./SDK/40_consolidate_module.sh
      
  7. Generate json object
    • json object from consolidated modules array
    • Used for:
      • ./modules_browsers/README.md
      • ./docs/index.html
      • ./lib/armbian-config/config.jobs.json
    • run
       ./SDK/50_array_to_json.sh
      

Best Practices


For more details, see the main README.md or ask in project discussions.