MCPcopy Index your code
hub / github.com/koding/kite / main

Function main

reverseproxy/reverseproxy/main.go:27–83  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

25)
26
27func main() {
28 flag.Parse()
29
30 if *flagVersion {
31 fmt.Println(reverseproxy.Version)
32 os.Exit(0)
33 }
34
35 if *flagRegion == "" || *flagEnvironment == "" {
36 log.Fatal("Please specify environment via -env and region via -region. Aborting.")
37 }
38
39 scheme := "http"
40 if *flagCertFile != "" && *flagKeyFile != "" {
41 scheme = "https"
42 }
43
44 conf := config.MustGet()
45 conf.IP = *flagIp
46 conf.Port = *flagPort
47 conf.Region = *flagRegion
48 conf.Environment = *flagEnvironment
49
50 r := reverseproxy.New(conf)
51 r.PublicHost = *flagPublicHost
52 r.Scheme = scheme
53
54 // Use server port if the public port is not defined
55 if *flagPublicPort == 0 {
56 *flagPublicPort = *flagPort
57 }
58 r.PublicPort = *flagPublicPort
59
60 registerURL := &url.URL{
61 Scheme: scheme,
62 Host: *flagPublicHost + ":" + strconv.Itoa(*flagPublicPort),
63 Path: "/kite",
64 }
65
66 r.Kite.Log.Info("Registering with register url %s", registerURL)
67 if err := r.Kite.RegisterForever(registerURL); err != nil {
68 r.Kite.Log.Fatal("Registering to Kontrol: %s", err)
69 }
70
71 if *flagCertFile == "" || *flagKeyFile == "" {
72 log.Println("No cert/key files are defined. Running proxy unsecure.")
73 err := r.ListenAndServe()
74 if err != nil {
75 log.Fatal("ListenAndServe: ", err)
76 }
77 } else {
78 err := r.ListenAndServeTLS(*flagCertFile, *flagKeyFile)
79 if err != nil {
80 log.Fatal("ListenAndServe: ", err)
81 }
82 }
83}

Callers

nothing calls this directly

Calls 5

FatalMethod · 0.80
InfoMethod · 0.80
RegisterForeverMethod · 0.80
ListenAndServeMethod · 0.80
ListenAndServeTLSMethod · 0.80

Tested by

no test coverage detected