Add host tool.
This commit is contained in:
parent
622f6a2638
commit
6f7a8fa4d4
|
@ -0,0 +1,2 @@
|
||||||
|
# Enable Bzlmod for every Bazel command
|
||||||
|
common --enable_bzlmod
|
|
@ -0,0 +1,9 @@
|
||||||
|
###############################################################################
|
||||||
|
# Bazel now uses Bzlmod by default to manage external dependencies.
|
||||||
|
# Please consider migrating your external dependencies from WORKSPACE to MODULE.bazel.
|
||||||
|
#
|
||||||
|
# For more details, please check https://github.com/bazelbuild/bazel/issues/18958
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
bazel_dep(name = "rules_go", version = "0.47.0")
|
||||||
|
bazel_dep(name = "gazelle", version = "0.36.0")
|
32
WORKSPACE
32
WORKSPACE
|
@ -1,32 +0,0 @@
|
||||||
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
|
|
||||||
|
|
||||||
|
|
||||||
### Go tooling, including Gazelle to generate and maintain BUILD files.
|
|
||||||
http_archive(
|
|
||||||
name = "io_bazel_rules_go",
|
|
||||||
sha256 = "6b65cb7917b4d1709f9410ffe00ecf3e160edf674b78c54a894471320862184f",
|
|
||||||
urls = [
|
|
||||||
"https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.39.0/rules_go-v0.39.0.zip",
|
|
||||||
"https://github.com/bazelbuild/rules_go/releases/download/v0.39.0/rules_go-v0.39.0.zip",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
http_archive(
|
|
||||||
name = "bazel_gazelle",
|
|
||||||
sha256 = "ecba0f04f96b4960a5b250c8e8eeec42281035970aa8852dda73098274d14a1d",
|
|
||||||
urls = [
|
|
||||||
"https://mirror.bazel.build/github.com/bazelbuild/bazel-gazelle/releases/download/v0.29.0/bazel-gazelle-v0.29.0.tar.gz",
|
|
||||||
"https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.29.0/bazel-gazelle-v0.29.0.tar.gz",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")
|
|
||||||
load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies")
|
|
||||||
load("//:deps.bzl", "go_dependencies")
|
|
||||||
|
|
||||||
# gazelle:repository_macro deps.bzl%go_dependencies
|
|
||||||
go_dependencies()
|
|
||||||
go_rules_dependencies()
|
|
||||||
go_register_toolchains(version = "1.20.4")
|
|
||||||
gazelle_dependencies()
|
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
### Go tooling, including Gazelle to generate and maintain BUILD files.
|
||||||
|
load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")
|
||||||
|
load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies")
|
||||||
|
load("//:deps.bzl", "go_dependencies")
|
||||||
|
|
||||||
|
# gazelle:repository_macro deps.bzl%go_dependencies
|
||||||
|
go_dependencies()
|
||||||
|
go_rules_dependencies()
|
||||||
|
go_register_toolchains(version = "1.20.4")
|
||||||
|
gazelle_dependencies()
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
host
|
||||||
|
|
||||||
|
This is a utility to display CNAME records and IPs for a hostname. It
|
||||||
|
was born of my frustration in trying to figure out how to get the host(1)
|
||||||
|
tool installed on Fedora.
|
|
@ -0,0 +1,41 @@
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"flag"
|
||||||
|
"fmt"
|
||||||
|
"log"
|
||||||
|
"net"
|
||||||
|
)
|
||||||
|
|
||||||
|
func lookupHost(host string) error {
|
||||||
|
cname, err := net.LookupCNAME(host)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
if cname != host {
|
||||||
|
fmt.Printf("%s is a CNAME for %s\n", host, cname)
|
||||||
|
host = cname
|
||||||
|
}
|
||||||
|
|
||||||
|
addrs, err := net.LookupHost(host)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, addr := range addrs {
|
||||||
|
fmt.Printf("\t%s\n", addr)
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
flag.Parse()
|
||||||
|
|
||||||
|
for _, arg := range flag.Args() {
|
||||||
|
if err := lookupHost(arg); err != nil {
|
||||||
|
log.Println("%s: %s", arg, err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue