mirror of
https://github.com/tailscale/tailscale.git
synced 2025-04-16 03:31:39 +00:00
cmd/tailscale/cli/up: "LoggedOut" pref is implicit.
There's no need to warn that it was not provided on the command line after doing a sequence of up; logout; up --args. If you're asking for tailscale to be up, you always mean that you prefer LoggedOut to become false. Fixes #1828 Signed-off-by: Avery Pennarun <apenwarr@tailscale.com>
This commit is contained in:
parent
59026a291d
commit
6caa02428e
@ -348,6 +348,25 @@ func TestCheckForAccidentalSettingReverts(t *testing.T) {
|
|||||||
},
|
},
|
||||||
want: accidentalUpPrefix + " --hostname=newhostname --accept-routes --exit-node=100.64.5.6 --accept-dns --shields-up --advertise-tags=tag:foo,tag:bar --unattended --advertise-routes=10.0.0.0/16 --netfilter-mode=nodivert --operator=alice",
|
want: accidentalUpPrefix + " --hostname=newhostname --accept-routes --exit-node=100.64.5.6 --accept-dns --shields-up --advertise-tags=tag:foo,tag:bar --unattended --advertise-routes=10.0.0.0/16 --netfilter-mode=nodivert --operator=alice",
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: "loggedout_is_implicit",
|
||||||
|
flagSet: f("advertise-exit-node"),
|
||||||
|
curPrefs: &ipn.Prefs{
|
||||||
|
ControlURL: ipn.DefaultControlURL,
|
||||||
|
LoggedOut: true,
|
||||||
|
},
|
||||||
|
mp: &ipn.MaskedPrefs{
|
||||||
|
Prefs: ipn.Prefs{
|
||||||
|
ControlURL: ipn.DefaultControlURL,
|
||||||
|
AdvertiseRoutes: []netaddr.IPPrefix{
|
||||||
|
netaddr.MustParseIPPrefix("0.0.0.0/0"),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
AdvertiseRoutesSet: true,
|
||||||
|
},
|
||||||
|
// not an error. LoggedOut is implicit.
|
||||||
|
want: "",
|
||||||
|
},
|
||||||
}
|
}
|
||||||
for _, tt := range tests {
|
for _, tt := range tests {
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
|
@ -552,9 +552,17 @@ func checkForAccidentalSettingReverts(flagSet map[string]bool, curPrefs *ipn.Pre
|
|||||||
flagExplicitValue := map[string]interface{}{} // e.g. "accept-dns" => true (from flagSet)
|
flagExplicitValue := map[string]interface{}{} // e.g. "accept-dns" => true (from flagSet)
|
||||||
for i := 0; i < prefType.NumField(); i++ {
|
for i := 0; i < prefType.NumField(); i++ {
|
||||||
prefName := prefType.Field(i).Name
|
prefName := prefType.Field(i).Name
|
||||||
|
// Persist is a legacy field used for storing keys, which
|
||||||
|
// probably should never have been part of Prefs. It's
|
||||||
|
// likely to migrate elsewhere eventually.
|
||||||
if prefName == "Persist" {
|
if prefName == "Persist" {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
// LoggedOut is a preference, but running the "up" command
|
||||||
|
// always implies that the user now prefers LoggedOut->false.
|
||||||
|
if prefName == "LoggedOut" {
|
||||||
|
continue
|
||||||
|
}
|
||||||
flagName, hasFlag := flagForPref[prefName]
|
flagName, hasFlag := flagForPref[prefName]
|
||||||
|
|
||||||
// Special case for advertise-exit-node; which is a
|
// Special case for advertise-exit-node; which is a
|
||||||
|
Loading…
x
Reference in New Issue
Block a user