Skip to content

Execution Flow Overviews

Chase William edited this page Mar 7, 2023 · 1 revision

General Success Flow

  1. User provides a url to their github repository
  2. DotDocs clones the project to a temporary location
  3. DotDocs aggregates all .csproj files and determines if their are unrelated project structures
  4. If unrelated project structures exist, the user is prompted to choose which structure to document, otherwise the singularity is selected automatically
  5. Each .csproj file is checked to ensure documentation generation is enabled before build
  6. The root .csproj file receives the msbuild command with parameters to generate an ms binlog (this builds the project and all dependencies recursively)
  7. Upon build completion, the binlog is loaded into DotDocs for inspection
  8. Required assemblies are aggregated and loaded into a reflection only context for inspection using Microsoft's MetadataLoadContext
  9. DotDocs iterates through each local project assembly's types and records them
  10. DotDocs iterates through each non local project assembly and records types
  11. Corresponding written documentation is loaded for each type (local, non-local)
  12. New and existing information is applied to the Neo4j database instance
Clone this wiki locally