| 1234567891011121314151617181920212223242526272829 |
- package utils
- import (
- "os/exec"
- "regexp"
- "strings"
- )
- // Checks based on uname if the linux environment is under wsl or not
- func CheckIfWsl() bool {
- out, err := exec.Command("uname", "-a").Output()
- if err != nil {
- return false
- }
- // On some cases, uname on wsl outputs microsoft capitalized
- matched, _ := regexp.Match(`microsoft|Microsoft`, out)
- return matched
- }
- // Gets the subsystem host ip
- // If the CLI is running under WSL the localhost url will not work so
- // this function should return the real ip that we should redirect to
- func GetWslHostName() string {
- out, err := exec.Command("wsl.exe", "hostname", "-I").Output()
- if err != nil {
- return "localhost"
- }
- return strings.TrimSpace(string(out))
- }
|