...
1
2
3
4
5
6 package main
7
8 import (
9
10 "context"
11 "fmt"
12 "os"
13 "strings"
14
15
16 "github.com/datawire/ambassador/v2/pkg/busy"
17 "github.com/datawire/ambassador/v2/pkg/environment"
18
19
20 "github.com/datawire/ambassador/v2/cmd/agent"
21 "github.com/datawire/ambassador/v2/cmd/apiext"
22 "github.com/datawire/ambassador/v2/cmd/entrypoint"
23 "github.com/datawire/ambassador/v2/cmd/kubestatus"
24 "github.com/datawire/ambassador/v2/cmd/reproducer"
25 )
26
27 func noop(_ context.Context) {}
28
29
30 func showVersion(ctx context.Context, version string, args ...string) error {
31 fmt.Printf("Version %s\n", version)
32
33 return nil
34 }
35
36 func main() {
37
38
39
40
41
42
43
44
45
46
47 version := "MISSING(FILE)"
48 if verBytes, err := os.ReadFile("/buildroot/ambassador/python/ambassador.version"); err == nil {
49 verLines := strings.Split(string(verBytes), "\n")
50 for len(verLines) < 2 {
51 verLines = append(verLines, "MISSING(VAL)")
52 }
53 version = verLines[0]
54 }
55
56 busy.Main("busyambassador", "Ambassador", version, map[string]busy.Command{
57 "kubestatus": {Setup: environment.EnvironmentSetupEntrypoint, Run: kubestatus.Main},
58 "entrypoint": {Setup: noop, Run: entrypoint.Main},
59 "reproducer": {Setup: noop, Run: reproducer.Main},
60 "agent": {Setup: environment.EnvironmentSetupEntrypoint, Run: agent.Main},
61 "version": {Setup: noop, Run: showVersion},
62 "apiext": {Setup: noop, Run: apiext.Main},
63 })
64 }
65
View as plain text