From 6fceb914a9479b7a6c19a0f54971b3bd580146df Mon Sep 17 00:00:00 2001 From: Bryan Newbold Date: Wed, 9 May 2018 19:00:43 -0700 Subject: binary called fatcatd --- golang/README.md | 10 +++++++ golang/cmd/fatcat-server/main.go | 58 ---------------------------------------- golang/cmd/fatcatd/main.go | 55 +++++++++++++++++++++++++++++++++++++ 3 files changed, 65 insertions(+), 58 deletions(-) delete mode 100644 golang/cmd/fatcat-server/main.go create mode 100644 golang/cmd/fatcatd/main.go diff --git a/golang/README.md b/golang/README.md index c0e3da5e..729cfd5d 100644 --- a/golang/README.md +++ b/golang/README.md @@ -24,6 +24,10 @@ On debian/ubuntu: createdb -O `whoami` fatcat psql fatcat -f fatcat-schema.sql +Build with: + + go build ./cmd/*/ + ## Simplifications In early development, we'll make at least the following simplifications: @@ -43,4 +47,10 @@ Install the go-swagger tool: go get -u github.com/go-swagger/go-swagger/cmd/swagger +"Simple" server: + swagger generate server -A Fatcat -f fatcat-openapi2.yml + +"Custom" server: + + swagger generate server -A fatcat -f ./fatcat-openapi2.yml --exclude-main diff --git a/golang/cmd/fatcat-server/main.go b/golang/cmd/fatcat-server/main.go deleted file mode 100644 index 181581c1..00000000 --- a/golang/cmd/fatcat-server/main.go +++ /dev/null @@ -1,58 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package main - -import ( - "log" - "os" - - loads "github.com/go-openapi/loads" - flags "github.com/jessevdk/go-flags" - - "git.archive.org/bnewbold/fatcat/golang/restapi" - "git.archive.org/bnewbold/fatcat/golang/restapi/operations" -) - -// This file was generated by the swagger tool. -// Make sure not to overwrite this file after you generated it because all your edits would be lost! - -func main() { - - swaggerSpec, err := loads.Embedded(restapi.SwaggerJSON, restapi.FlatSwaggerJSON) - if err != nil { - log.Fatalln(err) - } - - api := operations.NewFatcatAPI(swaggerSpec) - server := restapi.NewServer(api) - defer server.Shutdown() - - parser := flags.NewParser(server, flags.Default) - parser.ShortDescription = "fatcat" - parser.LongDescription = "A scalable, versioned, API-oriented catalog of bibliographic entities and file metadata" - - server.ConfigureFlags() - for _, optsGroup := range api.CommandLineOptionsGroups { - _, err := parser.AddGroup(optsGroup.ShortDescription, optsGroup.LongDescription, optsGroup.Options) - if err != nil { - log.Fatalln(err) - } - } - - if _, err := parser.Parse(); err != nil { - code := 1 - if fe, ok := err.(*flags.Error); ok { - if fe.Type == flags.ErrHelp { - code = 0 - } - } - os.Exit(code) - } - - server.ConfigureAPI() - - if err := server.Serve(); err != nil { - log.Fatalln(err) - } - -} diff --git a/golang/cmd/fatcatd/main.go b/golang/cmd/fatcatd/main.go new file mode 100644 index 00000000..94455bf8 --- /dev/null +++ b/golang/cmd/fatcatd/main.go @@ -0,0 +1,55 @@ + +package main + +import ( + "log" + "os" + + loads "github.com/go-openapi/loads" + flags "github.com/jessevdk/go-flags" + + "git.archive.org/bnewbold/fatcat/golang/restapi" + "git.archive.org/bnewbold/fatcat/golang/restapi/operations" +) + +func main() { + + // load embedded swagger file + swaggerSpec, err := loads.Analyzed(restapi.SwaggerJSON, "") + if err != nil { + log.Fatalln(err) + } + + // create new service API + api := operations.NewFatcatAPI(swaggerSpec) + server := restapi.NewServer(api) + defer server.Shutdown() + + parser := flags.NewParser(server, flags.Default) + parser.ShortDescription = "fatcat" + parser.LongDescription = "A scalable, versioned, API-oriented catalog of bibliographic entities and file metadata" + server.ConfigureFlags() + for _, optsGroup := range api.CommandLineOptionsGroups { + _, err := parser.AddGroup(optsGroup.ShortDescription, optsGroup.LongDescription, optsGroup.Options) + if err != nil { + log.Fatalln(err) + } + } + + if _, err := parser.Parse(); err != nil { + code := 1 + if fe, ok := err.(*flags.Error); ok { + if fe.Type == flags.ErrHelp { + code = 0 + } + } + os.Exit(code) + } + + server.ConfigureAPI() + + if err := server.Serve(); err != nil { + log.Fatalln(err) + } + +} -- cgit v1.2.3