Skip to content

[v0.33] ENGPLAT-399 Add --secure flag for TLS verification (#3781)#3798

Merged
rlmcpherson merged 2 commits into
v0.33from
backport/v0.33/pr-3781
Apr 7, 2026
Merged

[v0.33] ENGPLAT-399 Add --secure flag for TLS verification (#3781)#3798
rlmcpherson merged 2 commits into
v0.33from
backport/v0.33/pr-3781

Conversation

@loft-bot
Copy link
Copy Markdown
Contributor

@loft-bot loft-bot commented Apr 7, 2026

Backport from main to v0.33

Original PR Nr.: #3781

Backported Commits:

  • ENGPLAT-399 respect platform insecure config

fix: respect platform insecure config instead of hardcoding InsecureSkipVerify

Thread config.Platform.Insecure through all call sites so
TLS verification is on by default and only skipped when the user
explicitly opts in via --insecure.

Closes ENGPLAT-399

  • fix: preserve insecure TLS fallback during platform bootstrap

    The start command is the bootstrap flow — the platform always serves a
    self-signed certificate at this stage. Rather than reading
    config.Platform.Insecure (which defaults to false for fresh installs and
    has no --insecure flag on `vcluster platform start`), bootstrap probes
    and login should handle self-signed certs directly:

    • Readiness probes (port-forward, router, reachability) always skip TLS
      verification since they are unauthenticated health checks against a
      just-installed instance
    • Login tries secure first, falls back to insecure on TLS error, and
      persists the decision to config for future CLI operations

    The Transport(insecure), IsLoftReachable(insecure), and clihelper/http
    test additions from the original PR are preserved — post-bootstrap
    commands (login, connect) still respect config.Platform.Insecure.

  • Revert " fix: preserve insecure TLS fallback during platform bootstrap"

This reverts commit d5181a1.

  • feat: add --insecure flag to vcluster platform start

    Allows users to skip TLS certificate verification during bootstrap when
    the platform serves a self-signed certificate. The flag sets
    config.Platform.Insecure in memory so all downstream health checks and
    login calls respect it, and LoginWithAccessKey persists the value for
    future CLI operations.

  • Switch flag from insecure to secure

Defaults to current insecure behavior to preserve current bootstrapping
functionality.

* ENGPLAT-399 respect platform insecure config

fix: respect platform insecure config instead of hardcoding InsecureSkipVerify

  Thread config.Platform.Insecure through all call sites so
  TLS verification is on by default and only skipped when the user
  explicitly opts in via --insecure.

  Closes ENGPLAT-399

* fix: preserve insecure TLS fallback during platform bootstrap

  The start command is the bootstrap flow — the platform always serves a
  self-signed certificate at this stage. Rather than reading
  config.Platform.Insecure (which defaults to false for fresh installs and
  has no --insecure flag on `vcluster platform start`), bootstrap probes
  and login should handle self-signed certs directly:

  - Readiness probes (port-forward, router, reachability) always skip TLS
    verification since they are unauthenticated health checks against a
    just-installed instance
  - Login tries secure first, falls back to insecure on TLS error, and
    persists the decision to config for future CLI operations

  The Transport(insecure), IsLoftReachable(insecure), and clihelper/http
  test additions from the original PR are preserved — post-bootstrap
  commands (login, connect) still respect config.Platform.Insecure.

* Revert " fix: preserve insecure TLS fallback during platform bootstrap"

This reverts commit d5181a1.

* feat: add --insecure flag to vcluster platform start

  Allows users to skip TLS certificate verification during bootstrap when
  the platform serves a self-signed certificate. The flag sets
  config.Platform.Insecure in memory so all downstream health checks and
  login calls respect it, and LoginWithAccessKey persists the value for
  future CLI operations.

* Switch flag from insecure to secure

Defaults to current insecure behavior to preserve current bootstrapping
functionality.

(cherry picked from commit 1499106)

# Conflicts:
#	.github/workflows/lint.yaml
@loft-bot loft-bot requested a review from a team as a code owner April 7, 2026 16:20
@loft-bot loft-bot requested review from a team as code owners April 7, 2026 16:20
@loft-bot
Copy link
Copy Markdown
Contributor Author

loft-bot commented Apr 7, 2026

Unresolved Merge Conflicts Detected

This PR contains unresolved merge conflict markers. Please resolve them before merging.

Conflicted Files

./.github/workflows/lint.yaml:84:<<<<<<< HEAD

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: dcb883e8d5

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread .github/workflows/lint.yaml Outdated
Comment thread cmd/vclusterctl/cmd/platform/start.go
rlmcpherson
rlmcpherson previously approved these changes Apr 7, 2026
@rlmcpherson rlmcpherson merged commit 92ed20d into v0.33 Apr 7, 2026
31 checks passed
@rlmcpherson rlmcpherson deleted the backport/v0.33/pr-3781 branch April 7, 2026 17:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants