Merged
Conversation
There was a problem hiding this comment.
Pull request overview
This PR refactors the GCP bootstrap functionality by reorganizing code into separate packages and introducing improved abstractions for better testability and maintainability.
Changes:
- Moved GCP-specific bootstrap code from
internal/bootstrap/gcp.goto a dedicatedinternal/bootstrap/gcppackage - Extracted GCP client functionality into a separate interface and implementation
- Refactored node management to use an interface-based approach for better testability
- Added utility functions for string truncation and path expansion
- Introduced a step logger for better user feedback during bootstrap operations
Reviewed changes
Copilot reviewed 16 out of 16 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
internal/util/string.go |
Added string truncation utility function |
internal/util/path.go |
Added path expansion utility for handling tilde in paths |
internal/installer/node/node.go |
Refactored Node to use interface pattern and encapsulate jumpbox logic |
internal/installer/node/mocks.go |
Generated mock implementations for NodeManager interface |
internal/installer/config_manager_profile.go |
Removed profile application log statements |
internal/bootstrap/ovh/ovh.go |
Added stub for OVH bootstrapper |
internal/bootstrap/gcp_client.go |
Deleted - moved to gcp package |
internal/bootstrap/gcp/mocks.go |
Generated mock implementations for GCPClientManager interface |
internal/bootstrap/gcp/gcp_client.go |
Moved GCP client implementation to gcp package with improved structure |
internal/bootstrap/gcp/gcp.go |
Moved GCP bootstrapper implementation to gcp package |
internal/bootstrap/gcp/bootstrap_suite_test.go |
Added test suite setup for gcp package |
internal/bootstrap/gcp.go |
Deleted - moved to gcp package |
internal/bootstrap/bootstrap_stepper.go |
Added step logger for user-friendly progress indication |
cli/cmd/bootstrap_gcp.go |
Updated to use new gcp package structure |
.mockery.yml |
Added mock generation configuration for new interfaces |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Signed-off-by: siherrmann <25087590+siherrmann@users.noreply.github.com>
…loud/oms into bootstrap-gcp-refac
Signed-off-by: siherrmann <25087590+siherrmann@users.noreply.github.com>
…loud/oms into bootstrap-gcp-refac
Signed-off-by: siherrmann <25087590+siherrmann@users.noreply.github.com>
NautiluX
approved these changes
Jan 30, 2026
…loud/oms into bootstrap-gcp-refac
Signed-off-by: siherrmann <25087590+siherrmann@users.noreply.github.com>
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.
ClickUp: https://app.clickup.com/t/869butx8c