From fbc774c83966e59f6a123a6452dcc8717108fa3d Mon Sep 17 00:00:00 2001 From: Emanuele Di Pascale Date: Tue, 11 Feb 2025 10:25:48 +0100 Subject: [PATCH] release-test: get hhfab path from executable instead of having to pass it as an explicit command line param Signed-off-by: Emanuele Di Pascale --- cmd/hhfab/main.go | 14 ++++---------- pkg/hhfab/testing.go | 6 ++++++ pkg/hhfab/vlabrunner.go | 2 +- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/cmd/hhfab/main.go b/cmd/hhfab/main.go index 38591a0a..d9a89dc8 100644 --- a/cmd/hhfab/main.go +++ b/cmd/hhfab/main.go @@ -57,7 +57,7 @@ const ( FlagNameFailFast = "fail-fast" FlagNameReady = "ready" FlagNameCollectShowTech = "collect-show-tech" - FlagRegExes = "regexes" + FlagRegEx = "regex" FlagInvertRegex = "invert-regex" FlagResultsFile = "results-file" FlagHhfabBinPath = "hhfab-bin" @@ -948,9 +948,9 @@ func Run(ctx context.Context) error { Usage: "run release tests on current VLAB instance", Flags: append(defaultFlags, &cli.StringSliceFlag{ - Name: FlagRegExes, + Name: FlagRegEx, Aliases: []string{"r"}, - Usage: "run only tests matched by regular expressions", + Usage: "run only tests matched by regular expression. can be repeated", }, &cli.BoolFlag{ Name: FlagInvertRegex, @@ -960,19 +960,13 @@ func Run(ctx context.Context) error { Name: FlagResultsFile, Usage: "path to a file to export test results to in JUnit XML format", }, - &cli.StringFlag{ - Name: FlagHhfabBinPath, - Usage: "path to hhfab binary to use for release tests (including the binary itself)", - Value: "hhfab", - }, ), Before: before(false), Action: func(c *cli.Context) error { opts := hhfab.ReleaseTestOpts{ - Regexes: c.StringSlice(FlagRegExes), + Regexes: c.StringSlice(FlagRegEx), InvertRegex: c.Bool(FlagInvertRegex), ResultsFile: c.String(FlagResultsFile), - HhfabBin: c.String(FlagHhfabBinPath), } if err := hhfab.DoVLABReleaseTest(ctx, workDir, cacheDir, opts); err != nil { return fmt.Errorf("release-test: %w", err) diff --git a/pkg/hhfab/testing.go b/pkg/hhfab/testing.go index 8cc0411f..e9ae6b7a 100644 --- a/pkg/hhfab/testing.go +++ b/pkg/hhfab/testing.go @@ -1586,5 +1586,11 @@ type ReleaseTestOpts struct { } func (c *Config) ReleaseTest(ctx context.Context, opts ReleaseTestOpts) error { + self, err := os.Executable() + if err != nil { + return fmt.Errorf("getting executable path: %w", err) + } + opts.HhfabBin = self + return RunReleaseTestSuites(ctx, c.WorkDir, c.CacheDir, opts) } diff --git a/pkg/hhfab/vlabrunner.go b/pkg/hhfab/vlabrunner.go index f822ce4b..dfa2bbb8 100644 --- a/pkg/hhfab/vlabrunner.go +++ b/pkg/hhfab/vlabrunner.go @@ -561,7 +561,7 @@ func (c *Config) VLABRun(ctx context.Context, vlab *VLAB, opts VLABRunOpts) erro return fmt.Errorf("inspecting: %w", err) } case OnReadyReleaseTest: - if err := c.ReleaseTest(ctx, ReleaseTestOpts{ResultsFile: "release-test.xml", HhfabBin: "bin/hhfab"}); err != nil { + if err := c.ReleaseTest(ctx, ReleaseTestOpts{ResultsFile: "release-test.xml"}); err != nil { slog.Warn("Failed to run release test", "err", err) return fmt.Errorf("release test: %w", err)