diff --git a/Makefile b/Makefile index 9a62eb9fe..3c389e6e3 100644 --- a/Makefile +++ b/Makefile @@ -33,7 +33,7 @@ deps: rm -rf /home/travis/gopath/src/github.com/coreos/etcd/vendor/golang.org/x/net/trace rm -rf /home/travis/gopath/src/go.etcd.io/etcd/vendor/golang.org/x/net/trace -build: deps +build: go build $(GO_FLAGS) -ldflags "$(LDFLAGS)" -o $(BINARY) $(SOURCE_DIR) install: deps diff --git a/weed/s3api/s3api_server.go b/weed/s3api/s3api_server.go index 54df29492..efd4778d9 100644 --- a/weed/s3api/s3api_server.go +++ b/weed/s3api/s3api_server.go @@ -2,12 +2,12 @@ package s3api import ( "fmt" - "github.com/chrislusf/seaweedfs/weed/filer" - . "github.com/chrislusf/seaweedfs/weed/s3api/s3_constants" "net/http" "strings" "time" + "github.com/chrislusf/seaweedfs/weed/filer" + . "github.com/chrislusf/seaweedfs/weed/s3api/s3_constants" "github.com/gorilla/mux" "google.golang.org/grpc" ) @@ -44,6 +44,10 @@ func NewS3ApiServer(router *mux.Router, option *S3ApiServerOption) (s3ApiServer func (s3a *S3ApiServer) registerRouter(router *mux.Router) { // API Router apiRouter := router.PathPrefix("/").Subrouter() + + // Readiness Probe + apiRouter.Methods("GET").Path("/status").HandlerFunc(s3a.StatusHandler) + var routers []*mux.Router if s3a.option.DomainName != "" { domainNames := strings.Split(s3a.option.DomainName, ",") diff --git a/weed/s3api/s3api_status_handlers.go b/weed/s3api/s3api_status_handlers.go new file mode 100644 index 000000000..914c27f40 --- /dev/null +++ b/weed/s3api/s3api_status_handlers.go @@ -0,0 +1,8 @@ +package s3api + +import "net/http" + +func (s3a *S3ApiServer) StatusHandler(w http.ResponseWriter, r *http.Request) { + // write out the response code and content type header + writeSuccessResponseEmpty(w) +}