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