mirror of
https://github.com/prometheus/prometheus.git
synced 2024-12-24 21:24:05 -08:00
Merge pull request #782 from smyrman/master
Make Prometheus build on Windows (without make).
This commit is contained in:
commit
92a0af37e4
1
Makefile
1
Makefile
|
@ -55,7 +55,6 @@ benchmark: dependencies tools web
|
||||||
clean:
|
clean:
|
||||||
$(MAKE) -C $(BUILD_PATH) clean
|
$(MAKE) -C $(BUILD_PATH) clean
|
||||||
$(MAKE) -C tools clean
|
$(MAKE) -C tools clean
|
||||||
$(MAKE) -C web clean
|
|
||||||
rm -rf $(TEST_ARTIFACTS)
|
rm -rf $(TEST_ARTIFACTS)
|
||||||
-rm $(ARCHIVE)
|
-rm $(ARCHIVE)
|
||||||
-find . -type f -name '*~' -exec rm '{}' ';'
|
-find . -type f -name '*~' -exec rm '{}' ';'
|
||||||
|
|
|
@ -1,36 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
cat <<EOF
|
|
||||||
package blob
|
|
||||||
var files = map [string] map [string] []byte {
|
|
||||||
EOF
|
|
||||||
|
|
||||||
ORIGINAL_PWD=${PWD}
|
|
||||||
|
|
||||||
for dir in $@
|
|
||||||
do
|
|
||||||
cd "${dir}" > /dev/null
|
|
||||||
echo "\"$(basename ${dir})\": {"
|
|
||||||
|
|
||||||
# Do not embed map files and the non-minified bootstrap files.
|
|
||||||
# TODO(beorn7): There should be a better solution than hardcoding the
|
|
||||||
# exclusion here. We might want to switch to a less makeshift way of
|
|
||||||
# embedding files into the binary anyway...
|
|
||||||
find . -type f \! -name \*.map \! -name bootstrap.js \! -name bootstrap-theme.css \! -name bootstrap.css | while read file
|
|
||||||
do
|
|
||||||
name=$(echo "${file}"|sed 's|\.\/||')
|
|
||||||
# Using printf here instead of "echo -n" because the latter doesn't work on Mac OS X:
|
|
||||||
# http://hints.macworld.com/article.php?story=20071106192548833.
|
|
||||||
printf "\"$name\": []byte(\""
|
|
||||||
# The second newline deletion at the end is required for Mac OS X as well,
|
|
||||||
# as sed outputs a trailing newline there.
|
|
||||||
gzip -9 -c "${file}" | xxd -p | tr -d '\n' | sed 's/\(..\)/\\x\1/g' | tr -d '\n'
|
|
||||||
echo "\"),"
|
|
||||||
echo
|
|
||||||
done
|
|
||||||
echo "},"
|
|
||||||
cd "${ORIGINAL_PWD}"
|
|
||||||
done
|
|
||||||
echo '}'
|
|
|
@ -19,5 +19,5 @@ func newLock(fileName string) (Releaser, error) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
return &windowsFileLock{fd}, nil
|
return &windowsLock{fd}, nil
|
||||||
}
|
}
|
||||||
|
|
12
web/Makefile
12
web/Makefile
|
@ -17,12 +17,10 @@ all: blob/files.go
|
||||||
|
|
||||||
SUFFIXES:
|
SUFFIXES:
|
||||||
|
|
||||||
blob/files.go: $(shell find templates/ static/ -type f)
|
blob/files.go: go-bindata $(shell find blob/templates/ blob/static/ -type f)
|
||||||
# Note that embed-static.sh excludes map files and the
|
$(GO) generate ./blob
|
||||||
# non-minified bootstrap files.
|
|
||||||
../scripts/embed-static.sh static templates | $(GOFMT) > $@
|
|
||||||
|
|
||||||
clean:
|
go-bindata:
|
||||||
-rm -f blob/files.go
|
$(GO) get -u github.com/jteeuwen/go-bindata/...
|
||||||
|
|
||||||
.PHONY: clean
|
.PHONY: go-bindata
|
||||||
|
|
1
web/blob/.gitignore
vendored
1
web/blob/.gitignore
vendored
|
@ -1,2 +1 @@
|
||||||
files.go
|
|
||||||
protocol_buffer.descriptor
|
protocol_buffer.descriptor
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
package blob
|
package blob
|
||||||
|
|
||||||
|
//go:generate go-bindata -pkg blob -o files.go -ignore '(.*\.map|bootstrap\.js|bootstrap-theme\.css|bootstrap\.css)' templates/... static/...
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes"
|
|
||||||
"compress/gzip"
|
|
||||||
"fmt"
|
"fmt"
|
||||||
"io"
|
"io"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
@ -27,21 +27,11 @@ var mimeMap = map[string]string{
|
||||||
|
|
||||||
// GetFile retrieves the content of an embedded file.
|
// GetFile retrieves the content of an embedded file.
|
||||||
func GetFile(bucket string, name string) ([]byte, error) {
|
func GetFile(bucket string, name string) ([]byte, error) {
|
||||||
blob, ok := files[bucket][name]
|
data, err := Asset(fmt.Sprintf("%s/%s", bucket, name))
|
||||||
if !ok {
|
|
||||||
return nil, fmt.Errorf("could not find %s/%s (missing or updated files.go?)", bucket, name)
|
|
||||||
}
|
|
||||||
reader := bytes.NewReader(blob)
|
|
||||||
gz, err := gzip.NewReader(reader)
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
return data, nil
|
||||||
var b bytes.Buffer
|
|
||||||
io.Copy(&b, gz)
|
|
||||||
gz.Close()
|
|
||||||
|
|
||||||
return b.Bytes(), nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Handler implements http.Handler.
|
// Handler implements http.Handler.
|
||||||
|
|
1131
web/blob/files.go
Normal file
1131
web/blob/files.go
Normal file
File diff suppressed because one or more lines are too long
Before Width: | Height: | Size: 847 B After Width: | Height: | Size: 847 B |
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 62 KiB |
|
@ -98,7 +98,7 @@ func NewWebService(o *WebServiceOptions) *WebService {
|
||||||
router.Get("/consoles/*filepath", instr("consoles", o.ConsolesHandler))
|
router.Get("/consoles/*filepath", instr("consoles", o.ConsolesHandler))
|
||||||
|
|
||||||
if *useLocalAssets {
|
if *useLocalAssets {
|
||||||
router.Get("/static/*filepath", instr("static", route.FileServe("web/static")))
|
router.Get("/static/*filepath", instr("static", route.FileServe("web/blob/static")))
|
||||||
} else {
|
} else {
|
||||||
router.Get("/static/*filepath", instr("static", blob.Handler{}))
|
router.Get("/static/*filepath", instr("static", blob.Handler{}))
|
||||||
}
|
}
|
||||||
|
@ -136,7 +136,7 @@ func (ws *WebService) quitHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
|
|
||||||
func getTemplateFile(name string) (string, error) {
|
func getTemplateFile(name string) (string, error) {
|
||||||
if *useLocalAssets {
|
if *useLocalAssets {
|
||||||
file, err := ioutil.ReadFile(fmt.Sprintf("web/templates/%s.html", name))
|
file, err := ioutil.ReadFile(fmt.Sprintf("web/blob/templates/%s.html", name))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Errorf("Could not read %s template: %s", name, err)
|
log.Errorf("Could not read %s template: %s", name, err)
|
||||||
return "", err
|
return "", err
|
||||||
|
|
Loading…
Reference in a new issue