Merge pull request #6658 from hashicorp/b-404-redirect

return a 404 if not found instead of redirect to ui
This commit is contained in:
Drew Bailey 2019-11-11 08:50:56 -05:00 committed by GitHub
commit 15af640ae5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 8 deletions

View File

@ -2,6 +2,7 @@ package api
import (
"context"
"fmt"
"os"
"reflect"
"sort"
@ -265,8 +266,10 @@ func TestAllocations_ExecErrors(t *testing.T) {
}
job.Canonicalize()
allocID := uuid.Generate()
alloc := &Allocation{
ID: "",
ID: allocID,
Namespace: DefaultNamespace,
EvalID: uuid.Generate(),
Name: "foo-bar[1]",
@ -280,9 +283,10 @@ func TestAllocations_ExecErrors(t *testing.T) {
// make a request that will result in an error
// ensure the error is what we expect
_, err := a.Exec(context.Background(), alloc, "bar", false, []string{"command"}, os.Stdin, os.Stdout, os.Stderr, sizeCh, nil)
require.Contains(t, err.Error(), "Unexpected response code: 301")
require.Contains(t, err.Error(), "Moved Permanently")
exitCode, err := a.Exec(context.Background(), alloc, "bar", false, []string{"command"}, os.Stdin, os.Stdout, os.Stderr, sizeCh, nil)
require.Equal(t, exitCode, -2)
require.Equal(t, err.Error(), fmt.Sprintf("Unknown allocation \"%s\"", allocID))
}
func TestAllocations_ShouldMigrate(t *testing.T) {

View File

@ -213,7 +213,7 @@ func (s *HTTPServer) registerHandlers(enableDebug bool) {
w.Write([]byte(stubHTML))
})
}
s.mux.Handle("/", handleRootRedirect())
s.mux.Handle("/", handleRootFallthrough())
if enableDebug {
s.mux.HandleFunc("/debug/pprof/", pprof.Index)
@ -275,10 +275,13 @@ func handleUI(h http.Handler) http.Handler {
})
}
func handleRootRedirect() http.Handler {
func handleRootFallthrough() http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
http.Redirect(w, req, "/ui/", 307)
return
if req.URL.Path == "/" {
http.Redirect(w, req, "/ui/", 307)
} else {
w.WriteHeader(http.StatusNotFound)
}
})
}