summaryrefslogtreecommitdiffstats
path: root/golang/cmd/fatcatd
diff options
context:
space:
mode:
Diffstat (limited to 'golang/cmd/fatcatd')
-rw-r--r--golang/cmd/fatcatd/main.go9
-rw-r--r--golang/cmd/fatcatd/reinit.go51
-rw-r--r--golang/cmd/fatcatd/root.go72
-rw-r--r--golang/cmd/fatcatd/serve.go89
4 files changed, 0 insertions, 221 deletions
diff --git a/golang/cmd/fatcatd/main.go b/golang/cmd/fatcatd/main.go
deleted file mode 100644
index a2ad8ee2..00000000
--- a/golang/cmd/fatcatd/main.go
+++ /dev/null
@@ -1,9 +0,0 @@
-
-package main
-
-import (
-)
-
-func main() {
- Execute()
-}
diff --git a/golang/cmd/fatcatd/reinit.go b/golang/cmd/fatcatd/reinit.go
deleted file mode 100644
index 60726df0..00000000
--- a/golang/cmd/fatcatd/reinit.go
+++ /dev/null
@@ -1,51 +0,0 @@
-
-package main
-
-import (
- "github.com/spf13/viper"
- log "github.com/sirupsen/logrus"
- "github.com/go-pg/pg"
- "github.com/spf13/cobra"
- "github.com/gobuffalo/packr"
-)
-
-var reinitCmd = &cobra.Command{
- Use: "reinit [options]",
- Short: "Reset database schema",
- Run: func(cmd *cobra.Command, args[] string) {
- main_reinit()
- },
-}
-
-func main_reinit() {
-
- box := packr.NewBox("../../sql")
- sql_schema, err := box.MustString("fatcat-schema.sql")
- if err != nil {
- log.Panicf("finding SQL file: %v", err)
- }
-
- db_options, err := pg.ParseURL(viper.GetString("db_url"))
- if err != nil {
- log.Panicf("parsing DB string: %v", err)
- }
- db := pg.Connect(db_options)
- defer db.Close()
-
- log.Info("Starting load...")
- _, err = db.Exec(sql_schema)
- if err != nil {
- log.Fatalf("Error loading SQL: %v", err)
- }
- log.Info("Loading dummy data...")
- sql_dummy, err := box.MustString("dummy-data.sql")
- if err != nil {
- log.Panicf("finding SQL file: %v", err)
- }
- _, err = db.Exec(sql_dummy)
- if err != nil {
- log.Fatalf("Error loading SQL: %v", err)
- }
- log.Info("Success!")
-
-}
diff --git a/golang/cmd/fatcatd/root.go b/golang/cmd/fatcatd/root.go
deleted file mode 100644
index 12be35b3..00000000
--- a/golang/cmd/fatcatd/root.go
+++ /dev/null
@@ -1,72 +0,0 @@
-
-package main
-
-import (
- "os"
- "fmt"
-
- log "github.com/sirupsen/logrus"
- "github.com/spf13/viper"
- "github.com/spf13/cobra"
- "github.com/getsentry/raven-go"
-)
-
-var cfgFile = "";
-
-var rootCmd = &cobra.Command{
- Use: "fatcatd",
- Short: "REST API Server",
- Long: "A scalable, versioned, API-oriented catalog of bibliographic entities and file metadata",
- Version: "0.1.0",
-}
-
-func init() {
- cobra.OnInitialize(initConfig)
- rootCmd.PersistentFlags().StringVar(&cfgFile, "config", "", "config file (default is ./fatcatd.toml)")
- rootCmd.PersistentFlags().BoolP("verbose", "v", false, "increase logging volume")
- viper.BindPFlag("verbose", rootCmd.PersistentFlags().Lookup("verbose"))
-
- serveCmd.Flags().String("db-url", "postgres://", "database connecion string")
-
- rootCmd.AddCommand(serveCmd)
- rootCmd.AddCommand(reinitCmd)
-}
-
-func initConfig() {
-
- viper.SetDefault("port", 9411)
- viper.SetEnvPrefix("FATCAT")
- viper.AutomaticEnv()
-
- if cfgFile != "" {
- // Use config file from the flag.
- viper.SetConfigFile(cfgFile)
- } else {
- viper.SetConfigType("toml")
- viper.AddConfigPath(".")
- viper.SetConfigName("fatcatd")
- }
-
- err := viper.ReadInConfig()
- if err != nil {
- log.Fatalf("Error loading config: %s \n", err)
- }
-
- // not default of stderr
- log.SetOutput(os.Stdout);
-
- if viper.GetBool("verbose") == true {
- log.SetLevel(log.DebugLevel)
- }
- log.Debug("It's verbose!")
-
- raven.SetDSN(viper.GetString("sentry_dsn"));
-
-}
-
-func Execute() {
- if err := rootCmd.Execute(); err != nil {
- fmt.Println(err)
- os.Exit(1)
- }
-}
diff --git a/golang/cmd/fatcatd/serve.go b/golang/cmd/fatcatd/serve.go
deleted file mode 100644
index 73eb1f86..00000000
--- a/golang/cmd/fatcatd/serve.go
+++ /dev/null
@@ -1,89 +0,0 @@
-
-package main
-
-import (
- "net/http"
-
- "github.com/spf13/viper"
- log "github.com/sirupsen/logrus"
- loads "github.com/go-openapi/loads"
- "github.com/carbocation/interpose"
- "github.com/carbocation/interpose/adaptors"
- "github.com/meatballhat/negroni-logrus"
- "github.com/bradleyg/go-sentroni"
- "github.com/go-pg/pg"
- "github.com/spf13/cobra"
-
- "git.archive.org/bnewbold/fatcat/golang/api/handlers"
- "git.archive.org/bnewbold/fatcat/golang/gen/restapi"
- "git.archive.org/bnewbold/fatcat/golang/gen/restapi/operations"
-)
-
-var serveCmd = &cobra.Command{
- Use: "serve [options]",
- Short: "Run fatcat REST API server",
- Run: func(cmd *cobra.Command, args[] string) {
- main_serve()
- },
-}
-
-func main_serve() {
-
- // load embedded swagger file
- swaggerSpec, err := loads.Analyzed(restapi.SwaggerJSON, "")
- if err != nil {
- log.Fatalln(err)
- }
-
- // create new service API
- api := operations.NewFatcatAPI(swaggerSpec)
-
- // Set your custom logger if needed. Default one is log.Printf
- // Expected interface func(string, ...interface{})
- api.Logger = log.Printf
-
- server := restapi.NewServer(api)
- defer server.Shutdown()
-
- server.Port = viper.GetInt("port")
-
- db_options, err := pg.ParseURL(viper.GetString("db_url"))
- if err != nil {
- log.Panicf("parsing DB string: %v", err)
- }
- db := pg.Connect(db_options)
- defer db.Close()
-
- // register all the many handlers here
- api.GetCreatorIDHandler = handlers.NewGetCreatorIDHandler(db);
- api.PostCreatorHandler = handlers.NewPostCreatorHandler(db);
- api.GetCreatorLookupHandler = handlers.NewGetCreatorLookupHandler(db);
-
- api.GetEditgroupIDHandler = handlers.NewGetEditgroupIDHandler(db);
- api.GetEditorUsernameHandler = handlers.NewGetEditorUsernameHandler(db);
- api.GetEditorUsernameChangelogHandler = handlers.NewGetEditorUsernameChangelogHandler(db);
- api.PostEditgroupHandler = handlers.NewPostEditgroupHandler(db);
- api.PostEditgroupIDAcceptHandler = handlers.NewPostEditgroupIDAcceptHandler(db);
-
- middle := interpose.New()
-
- // sentry
- middle.Use(adaptors.FromNegroni(sentroni.NewRecovery(viper.GetString("sentry_dsn"))))
-
- // logging
- middle.Use(adaptors.FromNegroni(negronilogrus.NewMiddleware()))
-
- // add clacks
- middle.UseHandler(http.HandlerFunc(func(rw http.ResponseWriter, req *http.Request) {
- rw.Header().Set("X-Clacks-Overhead:", "GNU Aaron Swartz, John Perry Barlow")
- }))
-
- // actual handler
- middle.UseHandler(api.Serve(nil))
- server.SetHandler(middle)
-
- if err := server.Serve(); err != nil {
- log.Fatalln(err)
- }
-
-}