Skip to content

Commit 294ce23

Browse files
committed
[backport] feat(miniooni): add --software-name and --software-version (#1544)
Closes ooni/probe#2691
1 parent df7f2fd commit 294ce23

File tree

4 files changed

+29
-13
lines changed

4 files changed

+29
-13
lines changed

Diff for: internal/cmd/miniooni/javascript.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import (
1010
)
1111

1212
// registerJavaScript registers the javascript subcommand
13-
func registerJavaScript(rootCmd *cobra.Command, globalOptions *Options) {
13+
func registerJavaScript(rootCmd *cobra.Command, _ *Options) {
1414
subCmd := &cobra.Command{
1515
Use: "javascript",
1616
Short: "Very experimental command to run JavaScript snippets",

Diff for: internal/cmd/miniooni/main.go

+18-2
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ type Options struct {
4040
RepeatEvery int64
4141
ReportFile string
4242
SnowflakeRendezvous string
43+
SoftwareName string
44+
SoftwareVersion string
4345
TorArgs []string
4446
TorBinary string
4547
Tunnel string
@@ -133,6 +135,20 @@ func main() {
133135
"rendezvous method for --tunnel=torsf (one of: \"domain_fronting\" and \"amp\")",
134136
)
135137

138+
flags.StringVar(
139+
&globalOptions.SoftwareName,
140+
"software-name",
141+
"miniooni",
142+
"Set the name of the application",
143+
)
144+
145+
flags.StringVar(
146+
&globalOptions.SoftwareVersion,
147+
"software-version",
148+
version.Version,
149+
"Set the version of the application",
150+
)
151+
136152
flags.StringSliceVar(
137153
&globalOptions.TorArgs,
138154
"tor-args",
@@ -268,7 +284,7 @@ func registerAllExperiments(rootCmd *cobra.Command, globalOptions *Options) {
268284
// nothing
269285
}
270286

271-
if doc := documentationForOptions(name, factory); doc != "" {
287+
if doc := documentationForOptions(factory); doc != "" {
272288
flags.StringSliceVarP(
273289
&globalOptions.ExtraOptions,
274290
"option",
@@ -376,7 +392,7 @@ func mainSingleIteration(logger model.Logger, experimentName string, currentOpti
376392
runx(ctx, sess, experimentName, annotations, extraOptions, currentOptions)
377393
}
378394

379-
func documentationForOptions(name string, factory *registry.Factory) string {
395+
func documentationForOptions(factory *registry.Factory) string {
380396
var sb strings.Builder
381397
options, err := factory.Options()
382398
if err != nil || len(options) < 1 {

Diff for: internal/cmd/miniooni/main_test.go

+8-2
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,18 @@
11
package main
22

3-
import "testing"
3+
import (
4+
"testing"
5+
6+
"github.com/ooni/probe-cli/v3/internal/version"
7+
)
48

59
func TestSimple(t *testing.T) {
610
if testing.Short() {
711
t.Skip("skip test in short mode")
812
}
913
MainWithConfiguration("example", &Options{
10-
Yes: true,
14+
SoftwareName: "miniooni",
15+
SoftwareVersion: version.Version,
16+
Yes: true,
1117
})
1218
}

Diff for: internal/cmd/miniooni/session.go

+2-8
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,6 @@ import (
1212
"github.com/ooni/probe-cli/v3/internal/legacy/kvstore2dir"
1313
"github.com/ooni/probe-cli/v3/internal/model"
1414
"github.com/ooni/probe-cli/v3/internal/runtimex"
15-
"github.com/ooni/probe-cli/v3/internal/version"
16-
)
17-
18-
const (
19-
softwareName = "miniooni"
20-
softwareVersion = version.Version
2115
)
2216

2317
// newSessionOrPanic creates and starts a new session or panics on failure
@@ -44,8 +38,8 @@ func newSessionOrPanic(ctx context.Context, currentOptions *Options,
4438
Logger: logger,
4539
ProxyURL: proxyURL,
4640
SnowflakeRendezvous: currentOptions.SnowflakeRendezvous,
47-
SoftwareName: softwareName,
48-
SoftwareVersion: softwareVersion,
41+
SoftwareName: currentOptions.SoftwareName,
42+
SoftwareVersion: currentOptions.SoftwareVersion,
4943
TorArgs: currentOptions.TorArgs,
5044
TorBinary: currentOptions.TorBinary,
5145
TunnelDir: tunnelDir,

0 commit comments

Comments
 (0)