mirror of
https://github.com/tailscale/tailscale.git
synced 2025-04-21 06:01:42 +00:00
cmd/tailscaled: support "ts_omit_ssh" build tag to remove SSH
Some environments would like to remove Tailscale SSH support for the binary for various reasons when not needed (either for peace of mind, or the ~1MB of binary space savings). Updates tailscale/corp#24454 Updates #1278 Updates #12614 Change-Id: Iadd6c5a393992c254b5dc9aa9a526916f96fd07a Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
This commit is contained in:
parent
2c8859c2e7
commit
23880eb5b0
30
cmd/tailscaled/deps_test.go
Normal file
30
cmd/tailscaled/deps_test.go
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
// Copyright (c) Tailscale Inc & AUTHORS
|
||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"testing"
|
||||||
|
|
||||||
|
"tailscale.com/tstest/deptest"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestOmitSSH(t *testing.T) {
|
||||||
|
const msg = "unexpected with ts_omit_ssh"
|
||||||
|
deptest.DepChecker{
|
||||||
|
GOOS: "linux",
|
||||||
|
GOARCH: "amd64",
|
||||||
|
Tags: "ts_omit_ssh",
|
||||||
|
BadDeps: map[string]string{
|
||||||
|
"tailscale.com/ssh/tailssh": msg,
|
||||||
|
"golang.org/x/crypto/ssh": msg,
|
||||||
|
"tailscale.com/sessionrecording": msg,
|
||||||
|
"github.com/anmitsu/go-shlex": msg,
|
||||||
|
"github.com/creack/pty": msg,
|
||||||
|
"github.com/kr/fs": msg,
|
||||||
|
"github.com/pkg/sftp": msg,
|
||||||
|
"github.com/u-root/u-root/pkg/termios": msg,
|
||||||
|
"tempfork/gliderlabs/ssh": msg,
|
||||||
|
},
|
||||||
|
}.Check(t)
|
||||||
|
}
|
@ -1,7 +1,7 @@
|
|||||||
// Copyright (c) Tailscale Inc & AUTHORS
|
// Copyright (c) Tailscale Inc & AUTHORS
|
||||||
// SPDX-License-Identifier: BSD-3-Clause
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
|
||||||
//go:build linux || darwin || freebsd || openbsd
|
//go:build (linux || darwin || freebsd || openbsd) && !ts_omit_ssh
|
||||||
|
|
||||||
package main
|
package main
|
||||||
|
|
||||||
|
@ -21,6 +21,7 @@ type DepChecker struct {
|
|||||||
GOOS string // optional
|
GOOS string // optional
|
||||||
GOARCH string // optional
|
GOARCH string // optional
|
||||||
BadDeps map[string]string // package => why
|
BadDeps map[string]string // package => why
|
||||||
|
Tags string // comma-separated
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c DepChecker) Check(t *testing.T) {
|
func (c DepChecker) Check(t *testing.T) {
|
||||||
@ -29,7 +30,7 @@ func (c DepChecker) Check(t *testing.T) {
|
|||||||
t.Skip("skipping dep tests on windows hosts")
|
t.Skip("skipping dep tests on windows hosts")
|
||||||
}
|
}
|
||||||
t.Helper()
|
t.Helper()
|
||||||
cmd := exec.Command("go", "list", "-json", ".")
|
cmd := exec.Command("go", "list", "-json", "-tags="+c.Tags, ".")
|
||||||
var extraEnv []string
|
var extraEnv []string
|
||||||
if c.GOOS != "" {
|
if c.GOOS != "" {
|
||||||
extraEnv = append(extraEnv, "GOOS="+c.GOOS)
|
extraEnv = append(extraEnv, "GOOS="+c.GOOS)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user