-
Notifications
You must be signed in to change notification settings - Fork 13
Feature: Project creation wizard #460
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds an interactive project creation wizard to the Lagoon CLI using the charmbracelet/huh library for forms and prompts. The wizard provides a guided step-by-step process for creating projects with input validation and is feature-flagged behind the experimental configuration.
- Implements an interactive project creation wizard with step-by-step forms
- Adds input validation for project names, Git URLs, and organization quotas
- Generates equivalent CLI commands for reference and reuse after project creation
Reviewed Changes
Copilot reviewed 7 out of 8 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| internal/wizard/themes/ThemeLagoon.go | Defines custom Lagoon-branded theme for the wizard UI |
| internal/wizard/project/create.go | Main wizard logic with forms for project configuration and validation |
| internal/util/shared.go | Utility functions for validation and CLI command generation |
| go.mod | Adds charmbracelet dependencies for the wizard functionality |
| docs/commands/lagoon_add_project.md | Documents the new --interactive flag |
| cmd/root.go | Adds experimental flag checking |
| cmd/project.go | Integrates wizard into the add project command |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Implements an interactive project creation wizard, allowing users to create projects through a guided step-by-step process. The wizard is utilizing https://github.com/charmbracelet/huh for form structure & prompts.
Adds a new
--interactiveflag to thelagoon add projectcommand. It's currently feature flagged behind theexperimentalflag introduced in #462. Adds the wizard & theme-ing logic in theinternal/wizard/directory.The wizard gathers all mandatory fields for project creation, with the option to add additional fields. Input validation occurs for
projectName,gitUrl,quotas,deploytargetsetc. On success, the equivalent CLI command for the project creaton is generated & output for reference and re-use.Wizard Flow Screenshots