Skip to content

fix: use %w for error wrapping and lowercase error messages#5180

Open
sebrandon1 wants to merge 1 commit intocrc-org:mainfrom
sebrandon1:fix/consistent-error-wrapping
Open

fix: use %w for error wrapping and lowercase error messages#5180
sebrandon1 wants to merge 1 commit intocrc-org:mainfrom
sebrandon1:fix/consistent-error-wrapping

Conversation

@sebrandon1
Copy link
Contributor

@sebrandon1 sebrandon1 commented Mar 16, 2026

Summary

  • Replace %v/%s with %w in fmt.Errorf calls across 18 files to preserve error chains for errors.Is()/errors.As()
  • Lowercase error message prefixes per Go conventions (e.g., "Error reading...""error reading...")
  • Also fix a stray backtick typo in a cluster.go error message

Why %w?

Per the Go error handling best practices, fmt.Errorf with %w wraps the original error so callers can inspect the error chain using errors.Is() and errors.As(). Using %v or %s instead converts the error to a string, breaking the chain and making it impossible for callers to programmatically match specific error types.

See also: Go Code Review Comments — error strings for the lowercase convention.

Affected packages

  • pkg/crc/machinemachine.go, exists.go, start.go, bundle/metadata.go
  • pkg/crc/clustercluster.go, csr.go, kubeadmin_password.go
  • pkg/crc/networknameservers.go
  • pkg/crc/sshclient.go, keys.go
  • pkg/crc/gpggpg.go
  • pkg/crc/validationvalidation.go
  • pkg/crc/preflightpreflight_checks_linux.go, preflight_checks_network_linux.go, preflight_windows.go
  • pkg/crc/manpagesmanpages_unix.go
  • pkg/drivers/vfkitdriver_darwin.go
  • pkg/libmachine/hostmigrate.go

Test plan

  • make lint passes with 0 issues
  • Verify no downstream tests depend on exact error string matching

Summary by CodeRabbit

  • Bug Fixes
    • Standardized error message wording and capitalization for consistent, clearer feedback.
    • Improved error chaining so underlying causes are preserved, aiding diagnostics and troubleshooting.

@openshift-ci openshift-ci bot requested a review from anjannath March 16, 2026 19:39
@openshift-ci
Copy link

openshift-ci bot commented Mar 16, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign evidolob for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci
Copy link

openshift-ci bot commented Mar 16, 2026

Hi @sebrandon1. Thanks for your PR.

I'm waiting for a crc-org member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work.

Tip

We noticed you've done this a few times! Consider joining the org to skip this step and gain /lgtm and other bot rights. We recommend asking approvers on your previous PRs to sponsor you.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@coderabbitai
Copy link

coderabbitai bot commented Mar 16, 2026

Walkthrough

Standardized error handling across multiple packages: replaced %v/%s formatting with %w to wrap underlying errors and normalized leading error message text to lowercase. No functional, API, or signature changes.

Changes

Cohort / File(s) Summary
Cluster
pkg/crc/cluster/cluster.go, pkg/crc/cluster/csr.go, pkg/crc/cluster/kubeadmin_password.go
Replaced %v/%s with %w for error wrapping in various oc command failure paths and standardized message prefixes to lowercase.
Machine / VM
pkg/crc/machine/bundle/metadata.go, pkg/crc/machine/exists.go, pkg/crc/machine/machine.go, pkg/crc/machine/start.go
Changed error formatting to use %w and normalized casing for bundle metadata parsing, existence checks, config reads, and host start/create flows.
SSH & Keys
pkg/crc/ssh/client.go, pkg/crc/ssh/keys.go
Switched to %w wrapping for SSH config and key generation errors; adjusted leading message casing.
Preflight / Platform checks
pkg/crc/preflight/preflight_checks_linux.go, pkg/crc/preflight/preflight_checks_network_linux.go, pkg/crc/preflight/preflight_windows.go
Wrapped underlying errors with %w and normalized error message casing for libvirt, NetworkManager, and Windows group checks.
Network & Config
pkg/crc/network/nameservers.go, pkg/crc/validation/validation.go
Updated resolver, nameserver, and image pull secret JSON errors to use %w wrapping and consistent lowercase messages.
Security & Packaging
pkg/crc/gpg/gpg.go, pkg/crc/manpages/manpages_unix.go
Changed GPG parse/signature and manpage generation errors to wrap causes with %w and adjust message text casing.
Drivers & Host migration
pkg/drivers/vfkit/driver_darwin.go, pkg/libmachine/host/migrate.go
Rewrote error returns to use %w for wrapping in vfkit DHCP/IP retrieval and host JSON unmarshal during migration.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🐰
errors wrapped snug in gentle rhyme,
%w hops forward, one at a time.
lowercase notes, tidy and spry,
a rabbit's nod as changes fly. 🥕

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 23.53% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title 'fix: use %w for error wrapping and lowercase error messages' is clear, specific, and directly summarizes the main change—standardizing error handling across 18 files by using Go's %w wrapper and lowercase conventions.
Description check ✅ Passed The description provides comprehensive context: it explains the changes (replacing %v/%s with %w, lowercasing error messages), justifies the approach with Go best practices references, lists all 18 affected files, and includes a test plan with completed checks.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
📝 Coding Plan
  • Generate coding plan for human review comments

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (3)
pkg/crc/cluster/kubeadmin_password.go (1)

63-63: Prefer context-first error text with wrapped error at the end.

Line 63 wraps correctly, but "%w: %s" makes the rendered message harder to read. Prefer placing stderr before the wrapped error (and trim stderr) for cleaner diagnostics.

♻️ Suggested adjustment
-		return fmt.Errorf("failed to update user passwords %w: %s", err, stderr)
+		return fmt.Errorf("failed to update user passwords: %s: %w", strings.TrimSpace(stderr), err)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@pkg/crc/cluster/kubeadmin_password.go` at line 63, Change the error
construction so the human-readable context comes first, include a trimmed stderr
before the wrapped error, and ensure stderr is trimmed (import strings if
needed); replace the current return fmt.Errorf("failed to update user passwords
%w: %s", err, stderr) with something like fmt.Errorf("failed to update user
passwords: %s: %w", strings.TrimSpace(stderr), err) so the message is cleaner
and the wrapped error remains at the end.
pkg/crc/preflight/preflight_checks_linux.go (2)

187-194: Inconsistent error handling within the same function.

Line 189 was updated to use lowercase and %w, but line 193 still uses uppercase "Unable" and %v. For consistency, consider updating line 193 as well.

♻️ Suggested fix for consistency
 	supportedLibvirtVersion, err := semver.NewVersion(minSupportedLibvirtVersion)
 	if err != nil {
-		return fmt.Errorf("Unable to parse %s libvirt version %v", minSupportedLibvirtVersion, err)
+		return fmt.Errorf("unable to parse %s libvirt version: %w", minSupportedLibvirtVersion, err)
 	}
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@pkg/crc/preflight/preflight_checks_linux.go` around lines 187 - 194, The
error handling is inconsistent: change the second semver.NewVersion error return
for supportedLibvirtVersion to match the style used for installedLibvirtVersion
by using a lowercase message and %w for error wrapping; locate the call to
semver.NewVersion(minSupportedLibvirtVersion) and update its return to
fmt.Errorf("unable to parse %s libvirt version: %w", minSupportedLibvirtVersion,
err) so messages and wrapping are consistent across installedLibvirtVersion and
supportedLibvirtVersion.

567-570: Unconventional error format with %w followed by %s.

The format %w - %s places the wrapped error before the stderr content. While technically correct, a more conventional pattern would put contextual information before the wrapped error:

-		return fmt.Errorf("failed to create libvirt 'crc' network: %w - %s", err, buf.String())
+		return fmt.Errorf("failed to create libvirt 'crc' network: %s: %w", buf.String(), err)

This produces cleaner error chains like "failed to create...: <stderr>: <underlying error>".

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@pkg/crc/preflight/preflight_checks_linux.go` around lines 567 - 570, The
error formatting places the wrapped error before the stderr output; update the
fmt.Errorf call in the libvirt 'crc' network creation error path to put the
stderr context first and then wrap the underlying error (e.g., change "failed to
create libvirt 'crc' network: %w - %s" to "failed to create libvirt 'crc'
network: %s: %w" using buf.String() then err) while keeping the existing
logging.Debugf call unchanged.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@pkg/crc/network/nameservers.go`:
- Line 61: The error message returned when writing the nameserver file uses the
wrong destination path string; update the fmt.Errorf call in the function that
writes the resolv file (look for the writer that returns fmt.Errorf("error
creating /etc/resolv on instance: %w", err)) to reference "/etc/resolv.conf"
instead of "/etc/resolv" so the error accurately reflects the target file path.

---

Nitpick comments:
In `@pkg/crc/cluster/kubeadmin_password.go`:
- Line 63: Change the error construction so the human-readable context comes
first, include a trimmed stderr before the wrapped error, and ensure stderr is
trimmed (import strings if needed); replace the current return
fmt.Errorf("failed to update user passwords %w: %s", err, stderr) with something
like fmt.Errorf("failed to update user passwords: %s: %w",
strings.TrimSpace(stderr), err) so the message is cleaner and the wrapped error
remains at the end.

In `@pkg/crc/preflight/preflight_checks_linux.go`:
- Around line 187-194: The error handling is inconsistent: change the second
semver.NewVersion error return for supportedLibvirtVersion to match the style
used for installedLibvirtVersion by using a lowercase message and %w for error
wrapping; locate the call to semver.NewVersion(minSupportedLibvirtVersion) and
update its return to fmt.Errorf("unable to parse %s libvirt version: %w",
minSupportedLibvirtVersion, err) so messages and wrapping are consistent across
installedLibvirtVersion and supportedLibvirtVersion.
- Around line 567-570: The error formatting places the wrapped error before the
stderr output; update the fmt.Errorf call in the libvirt 'crc' network creation
error path to put the stderr context first and then wrap the underlying error
(e.g., change "failed to create libvirt 'crc' network: %w - %s" to "failed to
create libvirt 'crc' network: %s: %w" using buf.String() then err) while keeping
the existing logging.Debugf call unchanged.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 5e996c14-603c-4eff-9244-f1e3e3375a50

📥 Commits

Reviewing files that changed from the base of the PR and between 26e31d0 and 641c33a.

📒 Files selected for processing (18)
  • pkg/crc/cluster/cluster.go
  • pkg/crc/cluster/csr.go
  • pkg/crc/cluster/kubeadmin_password.go
  • pkg/crc/gpg/gpg.go
  • pkg/crc/machine/bundle/metadata.go
  • pkg/crc/machine/exists.go
  • pkg/crc/machine/machine.go
  • pkg/crc/machine/start.go
  • pkg/crc/manpages/manpages_unix.go
  • pkg/crc/network/nameservers.go
  • pkg/crc/preflight/preflight_checks_linux.go
  • pkg/crc/preflight/preflight_checks_network_linux.go
  • pkg/crc/preflight/preflight_windows.go
  • pkg/crc/ssh/client.go
  • pkg/crc/ssh/keys.go
  • pkg/crc/validation/validation.go
  • pkg/drivers/vfkit/driver_darwin.go
  • pkg/libmachine/host/migrate.go

err = sshRunner.CopyDataPrivileged([]byte(resolvFile), "/etc/resolv.conf", 0644)
if err != nil {
return fmt.Errorf("Error creating /etc/resolv on instance: %s", err.Error())
return fmt.Errorf("error creating /etc/resolv on instance: %w", err)
Copy link

@coderabbitai coderabbitai bot Mar 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Fix the destination path in the error message.

Line [61] says "/etc/resolv" but this function writes to "/etc/resolv.conf". The current text can mislead operators during incident triage.

Suggested patch
-		return fmt.Errorf("error creating /etc/resolv on instance: %w", err)
+		return fmt.Errorf("error creating /etc/resolv.conf on instance: %w", err)
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
return fmt.Errorf("error creating /etc/resolv on instance: %w", err)
return fmt.Errorf("error creating /etc/resolv.conf on instance: %w", err)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@pkg/crc/network/nameservers.go` at line 61, The error message returned when
writing the nameserver file uses the wrong destination path string; update the
fmt.Errorf call in the function that writes the resolv file (look for the writer
that returns fmt.Errorf("error creating /etc/resolv on instance: %w", err)) to
reference "/etc/resolv.conf" instead of "/etc/resolv" so the error accurately
reflects the target file path.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is worth fixing while you are changing this line.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@cfergeau, agreed — since the line is already being touched in this PR, it's a natural opportunity to correct the path. @sebrandon1, please apply the following one-character fix:

-		return fmt.Errorf("error creating /etc/resolv on instance: %w", err)
+		return fmt.Errorf("error creating /etc/resolv.conf on instance: %w", err)

This ensures the error message accurately reflects /etc/resolv.conf — the actual destination file — which is important for quick diagnosis during incident triage.

@praveenkumar
Copy link
Member

/ok-to-test

@cfergeau
Copy link
Contributor

Actionable comments posted: 1
🧹 Nitpick comments (3)

pkg/crc/cluster/kubeadmin_password.go (1)> 63-63: Prefer context-first error text with wrapped error at the end.

Line 63 wraps correctly, but "%w: %s" makes the rendered message harder to read. Prefer placing stderr before the wrapped error (and trim stderr) for cleaner diagnostics.

♻️ Suggested adjustment

-		return fmt.Errorf("failed to update user passwords %w: %s", err, stderr)
+		return fmt.Errorf("failed to update user passwords: %s: %w", strings.TrimSpace(stderr), err)

🤖 Prompt for AI Agents

Verify each finding against the current code and only fix it if needed.

In `@pkg/crc/cluster/kubeadmin_password.go` at line 63, Change the error
construction so the human-readable context comes first, include a trimmed stderr
before the wrapped error, and ensure stderr is trimmed (import strings if
needed); replace the current return fmt.Errorf("failed to update user passwords
%w: %s", err, stderr) with something like fmt.Errorf("failed to update user
passwords: %s: %w", strings.TrimSpace(stderr), err) so the message is cleaner
and the wrapped error remains at the end.

pkg/crc/preflight/preflight_checks_linux.go (2)> 187-194: Inconsistent error handling within the same function.

Line 189 was updated to use lowercase and %w, but line 193 still uses uppercase "Unable" and %v. For consistency, consider updating line 193 as well.

♻️ Suggested fix for consistency

 	supportedLibvirtVersion, err := semver.NewVersion(minSupportedLibvirtVersion)
 	if err != nil {
-		return fmt.Errorf("Unable to parse %s libvirt version %v", minSupportedLibvirtVersion, err)
+		return fmt.Errorf("unable to parse %s libvirt version: %w", minSupportedLibvirtVersion, err)
 	}

🤖 Prompt for AI Agents

Verify each finding against the current code and only fix it if needed.

In `@pkg/crc/preflight/preflight_checks_linux.go` around lines 187 - 194, The
error handling is inconsistent: change the second semver.NewVersion error return
for supportedLibvirtVersion to match the style used for installedLibvirtVersion
by using a lowercase message and %w for error wrapping; locate the call to
semver.NewVersion(minSupportedLibvirtVersion) and update its return to
fmt.Errorf("unable to parse %s libvirt version: %w", minSupportedLibvirtVersion,
err) so messages and wrapping are consistent across installedLibvirtVersion and
supportedLibvirtVersion.

567-570: Unconventional error format with %w followed by %s.
The format %w - %s places the wrapped error before the stderr content. While technically correct, a more conventional pattern would put contextual information before the wrapped error:

-		return fmt.Errorf("failed to create libvirt 'crc' network: %w - %s", err, buf.String())
+		return fmt.Errorf("failed to create libvirt 'crc' network: %s: %w", buf.String(), err)

This produces cleaner error chains like "failed to create...: <stderr>: <underlying error>".

🤖 Prompt for AI Agents

Verify each finding against the current code and only fix it if needed.

In `@pkg/crc/preflight/preflight_checks_linux.go` around lines 567 - 570, The
error formatting places the wrapped error before the stderr output; update the
fmt.Errorf call in the libvirt 'crc' network creation error path to put the
stderr context first and then wrap the underlying error (e.g., change "failed to
create libvirt 'crc' network: %w - %s" to "failed to create libvirt 'crc'
network: %s: %w" using buf.String() then err) while keeping the existing
logging.Debugf call unchanged.

🤖 Prompt for all review comments with AI agents

ℹ️ Review info

These nitpick comments are worth looking at.

Replace %v/%s with %w in fmt.Errorf calls across the codebase to
preserve error chains for errors.Is()/errors.As(). Also lowercase
error message prefixes per Go conventions.
@sebrandon1 sebrandon1 force-pushed the fix/consistent-error-wrapping branch from 641c33a to 48e5679 Compare March 20, 2026 14:03
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

♻️ Duplicate comments (1)
pkg/crc/network/nameservers.go (1)

61-61: ⚠️ Potential issue | 🟡 Minor

Fix incorrect destination path in error text.

Line [61] still says /etc/resolv, but this write targets /etc/resolv.conf.

Suggested patch
-		return fmt.Errorf("error creating /etc/resolv on instance: %w", err)
+		return fmt.Errorf("error creating /etc/resolv.conf on instance: %w", err)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@pkg/crc/network/nameservers.go` at line 61, The error message contains the
wrong path string; update the returned error in the code that writes the
resolver file so it references "/etc/resolv.conf" instead of "/etc/resolv"
(replace the fmt.Errorf call that currently says "error creating /etc/resolv on
instance: %w" so it reads "error creating /etc/resolv.conf on instance: %w");
this change should be made where the resolver file write/creation is handled
(the function returning that fmt.Errorf in pkg/crc/network/nameservers.go).
🧹 Nitpick comments (1)
pkg/crc/cluster/cluster.go (1)

171-172: Refactor error formatting for consistency and clarity.

All 12 instances in this file use %w: %s (error then stderr) while other parts of the codebase prefer ...: %s: %w (stderr context first, wrapped error last). Additionally, consider wrapping stderr with strings.TrimSpace() to avoid extra whitespace in error messages.

Affected lines: 171, 182, 194, 216, 228, 245, 262, 289, 321, 334, 347, 398

Example refactoring
- return fmt.Errorf("failed to get machine configs %w: %s", err, stderr)
+ return fmt.Errorf("failed to get machine configs: %s: %w", strings.TrimSpace(stderr), err)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@pkg/crc/cluster/cluster.go` around lines 171 - 172, Update the 12 error
return sites in pkg/crc/cluster/cluster.go (currently using fmt.Errorf("... %w:
%s", err, stderr)) to follow the codebase convention of placing stderr/context
first and the wrapped error last, and trim stderr whitespace; e.g., replace the
format with "...: %s: %w" and wrap the stderr value with strings.TrimSpace(...)
and wrap the original error with %w so callers can unwrap the underlying error
(affects the return statements referenced in the comment).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Duplicate comments:
In `@pkg/crc/network/nameservers.go`:
- Line 61: The error message contains the wrong path string; update the returned
error in the code that writes the resolver file so it references
"/etc/resolv.conf" instead of "/etc/resolv" (replace the fmt.Errorf call that
currently says "error creating /etc/resolv on instance: %w" so it reads "error
creating /etc/resolv.conf on instance: %w"); this change should be made where
the resolver file write/creation is handled (the function returning that
fmt.Errorf in pkg/crc/network/nameservers.go).

---

Nitpick comments:
In `@pkg/crc/cluster/cluster.go`:
- Around line 171-172: Update the 12 error return sites in
pkg/crc/cluster/cluster.go (currently using fmt.Errorf("... %w: %s", err,
stderr)) to follow the codebase convention of placing stderr/context first and
the wrapped error last, and trim stderr whitespace; e.g., replace the format
with "...: %s: %w" and wrap the stderr value with strings.TrimSpace(...) and
wrap the original error with %w so callers can unwrap the underlying error
(affects the return statements referenced in the comment).

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 8d23c1bd-cc71-4af0-98aa-dad943a0e6b9

📥 Commits

Reviewing files that changed from the base of the PR and between 641c33a and 48e5679.

📒 Files selected for processing (18)
  • pkg/crc/cluster/cluster.go
  • pkg/crc/cluster/csr.go
  • pkg/crc/cluster/kubeadmin_password.go
  • pkg/crc/gpg/gpg.go
  • pkg/crc/machine/bundle/metadata.go
  • pkg/crc/machine/exists.go
  • pkg/crc/machine/machine.go
  • pkg/crc/machine/start.go
  • pkg/crc/manpages/manpages_unix.go
  • pkg/crc/network/nameservers.go
  • pkg/crc/preflight/preflight_checks_linux.go
  • pkg/crc/preflight/preflight_checks_network_linux.go
  • pkg/crc/preflight/preflight_windows.go
  • pkg/crc/ssh/client.go
  • pkg/crc/ssh/keys.go
  • pkg/crc/validation/validation.go
  • pkg/drivers/vfkit/driver_darwin.go
  • pkg/libmachine/host/migrate.go
✅ Files skipped from review due to trivial changes (4)
  • pkg/crc/machine/exists.go
  • pkg/crc/machine/machine.go
  • pkg/crc/gpg/gpg.go
  • pkg/crc/ssh/client.go
🚧 Files skipped from review as they are similar to previous changes (9)
  • pkg/crc/manpages/manpages_unix.go
  • pkg/crc/ssh/keys.go
  • pkg/crc/preflight/preflight_checks_network_linux.go
  • pkg/drivers/vfkit/driver_darwin.go
  • pkg/libmachine/host/migrate.go
  • pkg/crc/cluster/kubeadmin_password.go
  • pkg/crc/cluster/csr.go
  • pkg/crc/preflight/preflight_checks_linux.go
  • pkg/crc/machine/start.go

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants