aboutsummaryrefslogtreecommitdiff
path: root/cmd
diff options
context:
space:
mode:
Diffstat (limited to 'cmd')
-rw-r--r--cmd/main/main.go33
1 files changed, 33 insertions, 0 deletions
diff --git a/cmd/main/main.go b/cmd/main/main.go
new file mode 100644
index 0000000..ac7f788
--- /dev/null
+++ b/cmd/main/main.go
@@ -0,0 +1,33 @@
+package main
+
+import (
+ "fmt"
+ "os"
+
+ "www.thenautilus.net/cgit/go-example/config"
+ factorypkg "www.thenautilus.net/cgit/go-example/factory"
+ "www.thenautilus.net/cgit/go-example/logging"
+)
+
+func main() {
+ // this is the main binary, so the config file is in
+ // the same directory as the executable
+ config, err := config.GetMainConfig(".")
+ if err != nil {
+ fmt.Fprintf(os.Stderr, "%s\n", err)
+ os.Exit(1)
+ }
+
+ log := logging.Logger(config.Logger)
+
+ log.Info().Object("config", &config).Msg("configuration")
+
+ factory := factorypkg.New(log, &config)
+
+ something := factory.Something()
+
+ err = something.DoSomething()
+ if err != nil {
+ log.Error().Err(err).Msg("Can't do the thing")
+ }
+}