tool/gocross: skip broken TestGocrossWrapper inside git worktree (#19218)
TestGocrossWrapper will fail when run inside a git linked worktree because Go 1.26 and earlier cannot get the current revision hash. Since this will be fixed in Go 1.27, see golang/go#58218, this patch skips this test until that release. Fixes #19217 Signed-off-by: Simon Law <sfllaw@tailscale.com>
This commit is contained in:
@@ -6,13 +6,26 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"bytes"
|
||||||
|
"go/version"
|
||||||
"os"
|
"os"
|
||||||
"os/exec"
|
"os/exec"
|
||||||
|
"runtime"
|
||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
|
"tailscale.com/util/must"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestGocrossWrapper(t *testing.T) {
|
func TestGocrossWrapper(t *testing.T) {
|
||||||
|
if version.Compare(runtime.Version(), "go1.27") < 0 {
|
||||||
|
gitDir := must.Get(exec.Command("git", "rev-parse", "--git-dir").Output())
|
||||||
|
gitCommonDir := must.Get(exec.Command("git", "rev-parse", "--git-common-dir").Output())
|
||||||
|
if !bytes.Equal(gitDir, gitCommonDir) {
|
||||||
|
t.Skip("skipping within git worktree, see https://go.dev/issue/58218")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
for i := range 2 { // once to build gocross; second to test it's cached
|
for i := range 2 { // once to build gocross; second to test it's cached
|
||||||
cmd := exec.Command("./gocross-wrapper.sh", "version")
|
cmd := exec.Command("./gocross-wrapper.sh", "version")
|
||||||
cmd.Env = append(os.Environ(), "CI=true", "NOBASHDEBUG=false", "TS_USE_GOCROSS=1") // for "set -x" verbosity
|
cmd.Env = append(os.Environ(), "CI=true", "NOBASHDEBUG=false", "TS_USE_GOCROSS=1") // for "set -x" verbosity
|
||||||
|
|||||||
@@ -4,13 +4,26 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"bytes"
|
||||||
|
"go/version"
|
||||||
"os"
|
"os"
|
||||||
"os/exec"
|
"os/exec"
|
||||||
|
"runtime"
|
||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
|
"tailscale.com/util/must"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestGocrossWrapper(t *testing.T) {
|
func TestGocrossWrapper(t *testing.T) {
|
||||||
|
if version.Compare(runtime.Version(), "go1.27") < 0 {
|
||||||
|
gitDir := must.Get(exec.Command("git", "rev-parse", "--git-dir").Output())
|
||||||
|
gitCommonDir := must.Get(exec.Command("git", "rev-parse", "--git-common-dir").Output())
|
||||||
|
if !bytes.Equal(gitDir, gitCommonDir) {
|
||||||
|
t.Skip("skipping within git worktree, see https://go.dev/issue/58218")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
for i := range 2 { // once to build gocross; second to test it's cached
|
for i := range 2 { // once to build gocross; second to test it's cached
|
||||||
cmd := exec.Command("pwsh", "-NoProfile", "-ExecutionPolicy", "Bypass", ".\\gocross-wrapper.ps1", "version")
|
cmd := exec.Command("pwsh", "-NoProfile", "-ExecutionPolicy", "Bypass", ".\\gocross-wrapper.ps1", "version")
|
||||||
cmd.Env = append(os.Environ(), "CI=true", "NOPWSHDEBUG=false", "TS_USE_GOCROSS=1") // for Set-PSDebug verbosity
|
cmd.Env = append(os.Environ(), "CI=true", "NOPWSHDEBUG=false", "TS_USE_GOCROSS=1") // for Set-PSDebug verbosity
|
||||||
|
|||||||
Reference in New Issue
Block a user