feat: refactor build command to support interactive and custom OS/arch selection#1175
feat: refactor build command to support interactive and custom OS/arch selection#1175
Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR refactors the build command to provide an interactive interface for selecting OS and architecture, while maintaining flexibility for manual specification via command-line arguments. The change removes hardcoded validation and delegates OS/architecture validation to the Go compiler.
- Added interactive architecture selection alongside existing OS selection
- Removed hardcoded OS validation in favor of Go compiler validation
- Refactored build logic to use a centralized command execution utility
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| console/console/build_command.go | Adds architecture flag and interactive selection, removes hardcoded validation, refactors build execution |
| console/console/build_command_test.go | Updates tests to include architecture parameter and reflects new validation approach |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #1175 +/- ##
==========================================
- Coverage 68.55% 68.53% -0.03%
==========================================
Files 223 225 +2
Lines 14472 14596 +124
==========================================
+ Hits 9922 10003 +81
- Misses 4175 4216 +41
- Partials 375 377 +2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
📑 Description
This update refactors the build command to provide an interactive selection for OS and architecture, limited to commonly used options for convenience. However, users can still specify any OS and architecture supported by Go via command-line arguments. The validation of os and arch values is now delegated to the Go compiler, ensuring flexibility while simplifying the command logic. This makes the build process user-friendly for most cases, while retaining full compatibility with all platforms supported by Go.
✅ Checks