Commit Graph

344 Commits

Author SHA1 Message Date
Zlatko Čalušić 05c6a03ad7 Dockerfile: use latest alpine base image 2018-01-28 19:23:53 +01:00
Alexander Neumann bf34e9d62d Implement amended API protocol v2
The version is now selected via the HTTP request header "Accept".
2018-01-23 23:34:32 +01:00
Zlatko Čalušić cd4d054887 Introduce ListBlobsV2()
Returns not only blob names, but also their sizes.

References:
 https://github.com/restic/restic/issues/1567
 https://github.com/restic/restic/pull/1571
2018-01-23 23:34:32 +01:00
Mebus 55134ae37a removed some blank lines 2018-01-23 13:56:26 +01:00
Zlatko Čalušić b91d38076a Optimize Config struct (maligned) 2018-01-23 13:56:26 +01:00
Mebus 97835b4cfd added test for private repos 2018-01-23 13:56:26 +01:00
Mebus 0f85243f5a implemented wojas proposal in handlers.go 2018-01-23 13:56:26 +01:00
Mebus 75578acd66 fixed the code style with goimports 2018-01-23 13:56:26 +01:00
Mebus 6c846f856c added a feature for private repositories 2018-01-23 13:56:26 +01:00
Zlatko Čalušić f99197dcf9 Update Makefile
- use latest Golang alpine image for building
- tag and push specific version of container
2018-01-21 21:01:09 +01:00
Zlatko Čalušić c48c660678 Version 0.9.6 v0.9.6 2018-01-21 19:52:32 +01:00
Zlatko Čalušić 9ef84dcdea Update dependencies 2018-01-21 19:43:52 +01:00
Zlatko Čalušić 0a5606e954 Update examples/compose-with-grafana/README.md 2018-01-21 19:36:01 +01:00
Zlatko Čalušić 5a2c70c9e1 Update AUTHORS 2018-01-21 19:28:17 +01:00
Zlatko Čalušić cbe5cf5c74 Optimize Config struct (maligned) 2018-01-21 19:25:12 +01:00
Alexander Neumann cd62c2bceb Update build.go 2018-01-13 10:52:46 +01:00
Alexander Neumann f02ee7386a Auto create data/ subdirs on demand
Closes #40
2018-01-05 18:04:26 +01:00
n0npax b786c5d1cc add option to secify tls cert and tls key as params
fix  #35
2017-11-23 20:20:09 +01:00
Brice Waegeneire 1bc1698f4e fix prometheus config flag 2017-11-06 00:50:16 +01:00
Konrad Wojas 8d8ecd7b0e Grafana dashboard fix: select instance
Fix: the queries were not filtering on the selected instance.
2017-10-30 17:05:56 +01:00
Konrad Wojas 213ff91b05 Full stack Docker Compose demo with Grafana dashboard
Add a full stack demo using Docker Compose that runs Rest Server,
Prometheus and Grafana with a Rest Server dashboard.
2017-10-30 17:05:56 +01:00
Konrad Wojas d1504d7d66 Prometheus: add user label and delete blob metrics 2017-10-30 17:05:56 +01:00
Zlatko Čalušić 14f8cd5bca Update README.md 2017-10-25 19:19:24 +02:00
Zlatko Čalušić 791bb572f8 Update LICENSE, add AUTHORS 2017-10-25 19:13:07 +02:00
Zlatko Čalušić d056b85432 Check errors in many places
Admittedly, in some places just document the fact that we ignore error
return values, 'cause we don't know what to do with it.  At least, the
linter is happy.
2017-10-25 18:31:34 +02:00
Zlatko Čalušić 10951e4540 Unshadow err in one place 2017-10-25 18:19:14 +02:00
Zlatko Čalušić 0f9ea68a2e Optimize Config struct (maligned) 2017-10-25 18:16:14 +02:00
Zlatko Čalušić 9b89df0842 Comment global variables 2017-10-25 18:14:07 +02:00
Konrad Wojas b213d2a274 Fix goimports 2017-10-25 17:53:37 +02:00
Konrad Wojas ff6270ab62 dep ensure for Prometheus deps 2017-10-25 17:53:37 +02:00
Konrad Wojas 4cd82b6802 Help needed: vendor files for Prometheus support
These are the vendor files needed for Prometheus support.
I have not been able to figure out how to do this properly with gopkg.
2017-10-25 17:53:37 +02:00
Konrad Wojas ca0e09261f Add Prometheus metrics
Exposes a few metrics for Prometheus under /metrics if started with --prometheus.

Example:

    # HELP rest_server_blob_read_bytes_total Total number of bytes read from blobs
    # TYPE rest_server_blob_read_bytes_total counter
    rest_server_blob_read_bytes_total{repo="test",type="data"} 2.13557024e+09
    rest_server_blob_read_bytes_total{repo="test",type="index"} 1.198653e+06
    rest_server_blob_read_bytes_total{repo="test",type="keys"} 5388
    rest_server_blob_read_bytes_total{repo="test",type="locks"} 1975
    rest_server_blob_read_bytes_total{repo="test",type="snapshots"} 10018
    # HELP rest_server_blob_read_total Total number of blobs read
    # TYPE rest_server_blob_read_total counter
    rest_server_blob_read_total{repo="test",type="data"} 3985
    rest_server_blob_read_total{repo="test",type="index"} 21
    rest_server_blob_read_total{repo="test",type="keys"} 12
    rest_server_blob_read_total{repo="test",type="locks"} 12
    rest_server_blob_read_total{repo="test",type="snapshots"} 32
    # HELP rest_server_blob_write_bytes_total Total number of bytes written to blobs
    # TYPE rest_server_blob_write_bytes_total counter
    rest_server_blob_write_bytes_total{repo="test",type="data"} 1.063726179e+09
    rest_server_blob_write_bytes_total{repo="test",type="index"} 395586
    rest_server_blob_write_bytes_total{repo="test",type="locks"} 1975
    rest_server_blob_write_bytes_total{repo="test",type="snapshots"} 1933
    # HELP rest_server_blob_write_total Total number of blobs written
    # TYPE rest_server_blob_write_total counter
    rest_server_blob_write_total{repo="test",type="data"} 226
    rest_server_blob_write_total{repo="test",type="index"} 6
    rest_server_blob_write_total{repo="test",type="locks"} 12
    rest_server_blob_write_total{repo="test",type="snapshots"} 6
2017-10-25 17:53:37 +02:00
Konrad Wojas 526a2b3837 Limit htpasswd checks to once per 30s 2017-10-24 13:04:23 +02:00
Konrad Wojas 67a0f63773 Run goimports on htpasswd.go 2017-10-24 13:04:23 +02:00
Konrad Wojas 3e4edd3dd8 Automatically reload htpasswd
If htpasswd was modified, it will be automatically reloaded. This check
happens at most once per second and only on incoming requests.

Note that this removes the public `NewHtpasswd()` function.
2017-10-24 13:04:23 +02:00
Zlatko Čalušić 50b52dfd74 Version 0.9.5 v0.9.5 2017-10-19 11:04:22 +02:00
Zlatko Čalušić a20136a8da Set docker image default port also to 8000
So that rest-server can be started as non-root user.  You can choose
which port to expose, anyway.
2017-10-19 00:16:54 +02:00
Zlatko Čalušić 132232db69 Update dependencies 2017-10-19 00:05:02 +02:00
Zlatko Čalušić e4071748b9 Update README.md 2017-10-18 23:52:03 +02:00
Zlatko Čalušić ca5664b8a7 Makefile: add rules for docker image build 2017-10-18 23:38:18 +02:00
Zlatko Čalušić ebe3bc04b5 Docker: various updates
- use exec in entrypoint.sh, get rid of extra shell process
- use CMD instead of ENTRYPOINT, so image can be run with /bin/sh arg
2017-10-18 23:18:44 +02:00
Zlatko Čalušić 87356ac452 Docker: use golang:1.9.1-alpine to build rest-server binary 2017-10-18 23:01:53 +02:00
Zlatko Čalušić a43bfa19e4 Update Makefile 2017-10-15 21:19:38 +02:00
Zlatko Čalušić dc9b99777b Update .gitignore 2017-10-10 19:07:48 +02:00
Zlatko Čalušić fff8ecd210 Update Makefile, README.md
We now have make install rule.
2017-10-05 09:53:45 +02:00
Zlatko Čalušić 8bd0ed3219 Update .travis.yml 2017-10-04 22:20:26 +02:00
Zlatko Čalušić c091bdc8bb Introduce Makefile 2017-10-04 22:17:34 +02:00
Zlatko Čalušić d5bbf6aac8 Fix case 2017-10-04 22:07:06 +02:00
Zlatko Čalušić ac7c83fa47 Update README.md 2017-10-04 21:59:58 +02:00
Zlatko Čalušić 56954b3131 Update dependencies 2017-10-04 21:44:44 +02:00