[#2528] Add YAML configuration file wizard#2557
Draft
ashmitahaldar wants to merge 11 commits intoreposense:masterfrom
Draft
[#2528] Add YAML configuration file wizard#2557ashmitahaldar wants to merge 11 commits intoreposense:masterfrom
ashmitahaldar wants to merge 11 commits intoreposense:masterfrom
Conversation
- Added App.vue as the main component for the wizard, integrating Bootstrap for styling and a stepper for navigation. - Created individual components for each step: RepoStep, AuthorStep, GroupStep, ReportStep, and ReviewStep. - Implemented a reactive store to manage the wizard's state and configuration data. - Developed a backend API to validate repository locations and generate configuration files in CSV and YAML formats. - Added functionality to dynamically add and remove repositories, authors, and groups within the wizard. - Included validation for required fields in each step to ensure proper configuration. - Created tests for the ConfigFileWriter to verify correct CSV and YAML generation.
- Added ReviewStep component for reviewing configuration before generation. - Created WizardStep component to standardize step layout and navigation. - Introduced index.html and main.ts for the new configuration wizard entry point. - Developed store.ts to manage the state of the configuration wizard. - Updated Vite configuration to include the new config-wizard entry. - Removed legacy wizard components and their associated files. - Enhanced ConfigWizardServer to handle quit requests gracefully.
- Added new API endpoint `/api/validate-config` for parsing config via RepoSense parser. - Updated `/api/validate-glob` to validate glob pattern syntax. - Implemented TagChipInput component for reusable multi-value input fields. - Enhanced validation feedback for glob patterns and email addresses in GroupsStep and ReposStep components. - Introduced loading states for YAML preview and validation processes. - Improved user experience with inline validation messages and success screens. - Updated ReviewStep to handle tier 3 validation and provide user feedback. - ConfigFileWriter now omits null fields when writing YAML. - ConfigWizardServer handles new validation endpoints and error escaping for JSON responses.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #2528
Proposed commit message
Other information
The wizard opens at http://localhost:9000/config-wizard and walks users through four steps:
1. Report Settings (title)
2. Repos & Branches (repo URL, per-branch config, authors)
3. Groups (per-repo file grouping)
4. Review & Generate (YAML preview, write to generated-configs/)
Backend changes:
Frontend changes (frontend/config-wizard/):
@JsonProperty annotations (author-git-host-id, author-emails, author-display-name, author-git-author-name)