treewide: replace datafile pkg with rules_go/runfiles pkg
rules_go/runfiles provides the same functionality as our datafile
package. This change also contains some specifics for the now active
bzlmod, which replaces all WORKSPACE related behaviour. As example the
WORKSPACE name is now always set to _main.
Change-Id: I1a69c72b479330a627b402135670f218c297906f
Reviewed-on: https://review.monogon.dev/c/monogon/+/2745
Tested-by: Jenkins CI
Reviewed-by: Lorenz Brun <lorenz@monogon.tech>
diff --git a/metropolis/cli/metroctl/BUILD.bazel b/metropolis/cli/metroctl/BUILD.bazel
index 9100031..af520e1 100644
--- a/metropolis/cli/metroctl/BUILD.bazel
+++ b/metropolis/cli/metroctl/BUILD.bazel
@@ -43,7 +43,6 @@
"//go/clitable",
"//metropolis/cli/metroctl/core",
"//metropolis/cli/pkg/context",
- "//metropolis/cli/pkg/datafile",
"//metropolis/node/core/identity",
"//metropolis/node/core/rpc",
"//metropolis/node/core/rpc/resolver",
@@ -55,6 +54,7 @@
"//version",
"@com_github_adrg_xdg//:xdg",
"@com_github_spf13_cobra//:cobra",
+ "@io_bazel_rules_go//go/runfiles:go_default_library",
"@io_k8s_apimachinery//pkg/apis/meta/v1:meta",
"@io_k8s_client_go//pkg/apis/clientauthentication/v1:clientauthentication",
"@org_golang_google_grpc//:go_default_library",
diff --git a/metropolis/cli/metroctl/cmd_install.go b/metropolis/cli/metroctl/cmd_install.go
index 39790f1..64cdb26 100644
--- a/metropolis/cli/metroctl/cmd_install.go
+++ b/metropolis/cli/metroctl/cmd_install.go
@@ -10,15 +10,16 @@
"os"
"strings"
+ "github.com/bazelbuild/rules_go/go/runfiles"
"github.com/spf13/cobra"
+ "source.monogon.dev/metropolis/proto/api"
+ cpb "source.monogon.dev/metropolis/proto/common"
+
"source.monogon.dev/metropolis/cli/metroctl/core"
clicontext "source.monogon.dev/metropolis/cli/pkg/context"
- "source.monogon.dev/metropolis/cli/pkg/datafile"
"source.monogon.dev/metropolis/pkg/blkio"
"source.monogon.dev/metropolis/pkg/fat32"
- "source.monogon.dev/metropolis/proto/api"
- cpb "source.monogon.dev/metropolis/proto/common"
)
var installCmd = &cobra.Command{
@@ -53,10 +54,14 @@
func external(name, datafilePath string, flag *string) fat32.SizedReader {
if flag == nil || *flag == "" {
- df, err := datafile.Get(datafilePath)
+ rPath, err := runfiles.Rlocation(datafilePath)
if err != nil {
log.Fatalf("No %s specified", name)
}
+ df, err := os.ReadFile(rPath)
+ if err != nil {
+ log.Fatalf("Cant read file: %v", err)
+ }
return bytes.NewReader(df)
}
diff --git a/metropolis/cli/metroctl/test/BUILD.bazel b/metropolis/cli/metroctl/test/BUILD.bazel
index 36f5a2d..dc3f456 100644
--- a/metropolis/cli/metroctl/test/BUILD.bazel
+++ b/metropolis/cli/metroctl/test/BUILD.bazel
@@ -13,13 +13,13 @@
],
rundir = ".",
deps = [
- "//metropolis/cli/pkg/datafile",
"//metropolis/node",
"//metropolis/pkg/cmd",
"//metropolis/test/launch/cluster",
"//metropolis/test/util",
"//metropolis/version",
"//version",
+ "@io_bazel_rules_go//go/runfiles:go_default_library",
],
)
@@ -29,11 +29,11 @@
importpath = "source.monogon.dev/metropolis/cli/metroctl/test",
visibility = ["//visibility:private"],
deps = [
- "//metropolis/cli/pkg/datafile",
"//metropolis/pkg/cmd",
"//metropolis/test/launch/cluster",
"//metropolis/test/util",
"//metropolis/version",
"//version",
+ "@io_bazel_rules_go//go/runfiles:go_default_library",
],
)
diff --git a/metropolis/cli/metroctl/test/test.go b/metropolis/cli/metroctl/test/test.go
index b031271..85bbaa2 100644
--- a/metropolis/cli/metroctl/test/test.go
+++ b/metropolis/cli/metroctl/test/test.go
@@ -11,18 +11,20 @@
"testing"
"time"
- "source.monogon.dev/metropolis/cli/pkg/datafile"
+ "github.com/bazelbuild/rules_go/go/runfiles"
+
+ mversion "source.monogon.dev/metropolis/version"
+
"source.monogon.dev/metropolis/pkg/cmd"
"source.monogon.dev/metropolis/test/launch/cluster"
"source.monogon.dev/metropolis/test/util"
- mversion "source.monogon.dev/metropolis/version"
"source.monogon.dev/version"
)
// resolveMetroctl resolves metroctl filesystem path. It will return a correct
// path, or terminate test execution.
func resolveMetroctl() string {
- path, err := datafile.ResolveRunfile("metropolis/cli/metroctl/metroctl_/metroctl")
+ path, err := runfiles.Rlocation("_main/metropolis/cli/metroctl/metroctl_/metroctl")
if err != nil {
log.Fatalf("Couldn't resolve metroctl binary: %v", err)
}