Checklist:
Describe the bug
When HTTP/2 is disabled, the argo CLI throws a warning message to use "--grpc-web" and returns the correct results, presumably via HTTP/1.1.
However, the -skip-test-tls command is also necessary for this to happen, as otherwise the TLS test times out.
To Reproduce
- Host Argo behind an Ingress without HTTP/2 enabled (e.g. f5 nginx IC with default settings)
- Do an argocd login command, verify it times out
- Do another argocd login command with --skip-test-tls, verify it prompts you for username & password and throws the warning to use grpc-web.
For more context, you can see this old issue discussion:
@sklarsa Does it work if you use --skip-test-tls --grpc-web ?
Originally posted by @alindeman in #9679
Relevant code section:
Expected behavior
argocd login should "auto-recover" and throw a warning, like other commands do. if not possible, it should look the grpc-web flag and use that when doing this TLS test.
Version
argocd: v3.3.2
BuildDate: 2026-02-22T14:08:34Z
GitCommit: 8a3940d8db27928931f0a85ba7c636e54786bddc
GitTreeState: clean
GitTag: v3.3.2
GoVersion: go1.26.0
Compiler: gc
Platform: darwin/arm64
{"level":"warning","msg":"Failed to invoke grpc call. Use flag --grpc-web in grpc calls. To avoid this warning message, use flag --grpc-web.","time":"2026-04-07T14:17:52+01:00"}
argocd-server: v3.3.5
BuildDate: 2026-03-25T14:10:08Z
GitCommit: b8b5ea61172f10e8701659aaa82ed383eef8578f
GitTreeState: clean
GitTag: v3.3.5
GoVersion: go1.25.5
Compiler: gc
Platform: linux/amd64
Kustomize Version: v5.8.1 2026-02-09T16:15:27Z
Helm Version: v3.19.4+g7cfb6e4
Kubectl Version: v0.34.0
Jsonnet Version: v0.21.0
Logs
N/A
Checklist:
argocd version.Describe the bug
When HTTP/2 is disabled, the argo CLI throws a warning message to use "--grpc-web" and returns the correct results, presumably via HTTP/1.1.
However, the -skip-test-tls command is also necessary for this to happen, as otherwise the TLS test times out.
To Reproduce
For more context, you can see this old issue discussion:
Originally posted by @alindeman in #9679
Relevant code section:
argo-cd/cmd/argocd/commands/login.go
Line 80 in 48f18e2
Expected behavior
argocd login should "auto-recover" and throw a warning, like other commands do. if not possible, it should look the grpc-web flag and use that when doing this TLS test.
Version
argocd: v3.3.2 BuildDate: 2026-02-22T14:08:34Z GitCommit: 8a3940d8db27928931f0a85ba7c636e54786bddc GitTreeState: clean GitTag: v3.3.2 GoVersion: go1.26.0 Compiler: gc Platform: darwin/arm64 {"level":"warning","msg":"Failed to invoke grpc call. Use flag --grpc-web in grpc calls. To avoid this warning message, use flag --grpc-web.","time":"2026-04-07T14:17:52+01:00"} argocd-server: v3.3.5 BuildDate: 2026-03-25T14:10:08Z GitCommit: b8b5ea61172f10e8701659aaa82ed383eef8578f GitTreeState: clean GitTag: v3.3.5 GoVersion: go1.25.5 Compiler: gc Platform: linux/amd64 Kustomize Version: v5.8.1 2026-02-09T16:15:27Z Helm Version: v3.19.4+g7cfb6e4 Kubectl Version: v0.34.0 Jsonnet Version: v0.21.0Logs
N/A