birca
3ec4161575
Update remote-write grafana mixin
...
Signed-off-by: birca <birca@adobe.com>
2020-12-02 09:50:15 +02:00
Atibhi Agrawal
b317b6ab9c
Backfill from OpenMetrics format ( #8084 )
...
* get parser working
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* import file created
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Find min and max ts
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* make two passes over file and write to tsdb
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* print error messages
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Fix Max and Min initializer
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Start with unit tests
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* reset file read
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* align blocks to two hour range
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Add cleanup test
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* remove .ds_store
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* add license to import_test
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Fix Circle CI error
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Refactor code
Move backfill from tsdb to promtool directory
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix gitignore
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Remove panic
Rename ContenType
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* adjust mint
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix return statement
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix go modules
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Added unit test for backfill
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix CI error
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Fix file handling
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Close DB
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Close directory
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Error Handling
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* inline err
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Fix command line flags
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* add spaces before func
fix pointers
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Add defer'd calls
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* move openmetrics.go content to backfill
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* changed args to flags
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* add tests for wrong OM files
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Added additional tests
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Add comment to warn of func reuse
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Make input required in main.go
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* defer blockwriter close
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix defer
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* defer
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Remove contentType
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* remove defer from backfilltest
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Fix defer remove in backfill_test
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* changes to fix CI errors
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix go.mod
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* change package name
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* assert->require
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* remove todo
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix format
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix todo
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix createblock
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix tests
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix defer
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix return
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* check err for anon func
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* change comments
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* update comment
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Fix for the Flush Bug
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix formatting, comments, names
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Print Blocks
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* cleanup
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* refactor test to take care of multiple samples
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* refactor tests
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* remove om
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* I dont know what I fixed
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Fix tests
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Fix tests, add test description, print blocks
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* commit after 5000 samples
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* reviews part 1
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Series Count
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix CI
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* remove extra func
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* make timestamp into sec
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Reviews 2
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Add Todo
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Fixes
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fixes reviews
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* =0
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* remove backfill.om
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* add global err var, remove stuff
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* change var name
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* sampleLimit pass as parameter
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Add test when number of samples greater than batch size
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Change name of batchsize
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* revert export
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* nits
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* remove
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* add comment, remove newline,consistent err
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Print Blocks
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* Modify comments
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* db.Querier
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* add sanity check , get maxt and mint
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* ci error
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* comment change
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* nits
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* NoError
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
* fix
Signed-off-by: aSquare14 <atibhi.a@gmail.com>
2020-11-26 10:37:06 +05:30
Ganesh Vernekar
dff967286e
Set the min time of Head properly after truncation ( #8212 )
...
* Set the min time of Head properly after truncation
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
* Fix lint
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
* Enhance compaction plan logic for completely deleted small block
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
* Fix review comments
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
2020-11-25 18:33:30 +05:30
Julien Pivotto
f50dde7031
Remove Krasi as TSDB maintainer ( #8213 )
...
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2020-11-24 20:24:25 +01:00
George Brighton
76cd5f4c7f
Fix typo in EC2 SD docs ( #8210 )
...
Signed-off-by: George Brighton <george@gebn.co.uk>
2020-11-20 19:22:03 +00:00
Muhammad Falak R Wani
587fd740be
discovery: ec2: expose IPv6 as label ( #7086 )
...
* discovery: ec2: expose IPv6 as label
Signed-off-by: Muhammad Falak R Wani <falakreyaz@gmail.com>
2020-11-20 17:13:52 +00:00
Justin Toh
5f103aaecc
docs: Fix "time duration" link ( #8209 )
...
Signed-off-by: Justin Toh <tohjustin@hotmail.com>
2020-11-20 12:25:45 +00:00
Chris Marchbanks
c8f810083d
Cache label name and last value when adding series ( #8192 )
...
Signed-off-by: Chris Marchbanks <csmarchbanks@gmail.com>
2020-11-19 11:18:12 -07:00
Ganesh Vernekar
c2ce236de1
Upgrade react deps ( #8207 )
...
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
2020-11-19 17:10:29 +01:00
gotjosh
4eca4dffb8
Allow metric metadata to be propagated via Remote Write. ( #6815 )
...
* Introduce a metadata watcher
Similarly to the WAL watcher, its purpose is to observe the scrape manager and pull metadata. Then, send it to a remote storage.
Signed-off-by: gotjosh <josue@grafana.com>
* Additional fixes after rebasing.
Signed-off-by: Callum Styan <callumstyan@gmail.com>
* Rework samples/metadata metrics.
Signed-off-by: Callum Styan <callumstyan@gmail.com>
* Use more descriptive variable names in MetadataWatcher collect.
Signed-off-by: Callum Styan <callumstyan@gmail.com>
* Fix issues caused during rebasing.
Signed-off-by: Callum Styan <callumstyan@gmail.com>
* Fix missing metric add and unneeded config code.
Signed-off-by: Callum Styan <callumstyan@gmail.com>
* Address some review comments.
Signed-off-by: Callum Styan <callumstyan@gmail.com>
* Fix metrics and docs
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
* Replace assert with require
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
* Bring back max_samples_per_send metric
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
* Fix tests
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
Co-authored-by: Callum Styan <callumstyan@gmail.com>
Co-authored-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
2020-11-19 20:53:03 +05:30
Ganesh Vernekar
3ad25a6dc3
Merge pull request #8204 from prometheus/release-2.22
...
Backport v2.22.2 to master
2020-11-19 19:57:52 +05:30
Ganesh Vernekar
8cc94fac93
Update dependencies for v2.23 ( #8203 )
...
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
2020-11-19 19:32:19 +05:30
Marco Pracucci
db19e05d93
Add option to customise head chunks write buffer size ( #8201 )
...
* Add option to customise head chunks write buffer size
Signed-off-by: Marco Pracucci <marco@pracucci.com>
* Fixed tests
Signed-off-by: Marco Pracucci <marco@pracucci.com>
2020-11-19 18:30:47 +05:30
Peter Wu
1797192f02
Fix the alerting rules name description ( #7083 ) ( #8197 )
...
commit 9875afc491
changed the type from
metric names to label values, we might as well adjust the description.
The alternative is to revert that commit and restrict names of alerting
rules again even if that was not really enforced.
Signed-off-by: Peter Wu <pwu@cloudflare.com>
2020-11-18 19:29:01 +00:00
Kuntal Majumder
3093755174
bump the minimum required go version to build to 1.4 ( #8196 )
...
Signed-off-by: Kuntal Majumder <kuntal@infracloud.io>
2020-11-18 17:16:33 +00:00
Björn Rabenstein
6e872dee43
Merge pull request #8189 from prometheus/beorn7/mixin
...
prometheus-mixin: Make PrometheusRemoteWriteBehind more generic
2020-11-17 13:40:24 +01:00
beorn7
638e99c814
prometheus-mixin: Make PrometheusRemoteWriteBehind more generic
...
Currently, it relies on `job, instance` being the labels completely
identifying a Prometheus instance. However, what's intended is to
simply not match on `remote_name, url`.
Signed-off-by: beorn7 <beorn@grafana.com>
2020-11-17 13:29:49 +01:00
Frederic Branczyk
de1c1243f4
Merge pull request #8187 from brancz/cp-8176
...
Cut v2.22.2
2020-11-16 13:37:34 +01:00
Frederic Branczyk
84b186b3fd
*: Cut v2.22.2
...
Signed-off-by: Frederic Branczyk <fbranczyk@gmail.com>
2020-11-16 10:50:14 +01:00
Brian Brazil
983a8eae4f
Protect sp.loops from concurrent access. ( #8176 )
...
Manager.reload takes the mutex that would make it safe, however
releases it before the goroutines spawned are finished with it.
Thus more explicit locking of scrapePool.Sync/stop/reload is needed.
Signed-off-by: Brian Brazil <brian.brazil@robustperception.io>
2020-11-16 10:44:14 +01:00
Brian Brazil
ebe0da7a72
Protect sp.loops from concurrent access. ( #8176 )
...
Manager.reload takes the mutex that would make it safe, however
releases it before the goroutines spawned are finished with it.
Thus more explicit locking of scrapePool.Sync/stop/reload is needed.
Signed-off-by: Brian Brazil <brian.brazil@robustperception.io>
2020-11-12 16:06:25 +00:00
Björn Rabenstein
5c65cb066b
Merge pull request #8170 from prometheus/beorn7/mixin
...
prometheus-mixin: add HA-group aware alerts
2020-11-12 16:00:22 +01:00
Brian Brazil
bef9d4e182
Don't include rendered expression in parse errors. ( #8177 )
...
For a sufficiently complex expression, having to render
thousands of nodes for every subquery type error can take
a while - so don't do that.
Signed-off-by: Brian Brazil <brian.brazil@robustperception.io>
2020-11-12 15:25:52 +01:00
Julien Pivotto
f97fba7cc9
React UI: Change "metrics autocomplete" with "autocomplete" ( #8174 )
...
- First, it is currently not only removing "metric" autocomplete, but
also "query history autocomplete", so the checkbox is confusing.
- Then, in the future, we will want also "functions" autocomplete.
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2020-11-12 11:48:48 +01:00
beorn7
371ca9ff46
prometheus-mixin: add HA-group aware alerts
...
There is certainly a potential to add more of these. This is mostly
meant to introduce the concept and cover a few critical parts.
Signed-off-by: beorn7 <beorn@grafana.com>
2020-11-11 19:45:34 +01:00
Julien Pivotto
cda52234eb
Fix panic with double close() of channel on /-/quit/ ( #8166 )
...
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2020-11-10 00:09:39 +01:00
Bartlomiej Plotka
4513537034
Exposed DeletionIterator and CompactMetas functions. ( #8161 )
...
* Exposed DeletionIterator and CompactMetas functions.
Required for CLI for deletions in Thanos: https://github.com/thanos-io/thanos/pull/3421
Signed-off-by: Bartlomiej Plotka <bwplotka@gmail.com>
* Removed Thanos usage mentions.
Signed-off-by: Bartlomiej Plotka <bwplotka@gmail.com>
2020-11-09 16:51:25 +00:00
Ganesh Vernekar
d30da66d77
Fix timestamp() method for vector selector inside paren ( #8164 )
...
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
2020-11-09 18:21:50 +05:30
Julien Pivotto
f8ba0ed906
Rebase docker swarm test ( #8163 )
...
Fix master tests
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2020-11-09 18:08:08 +05:30
Julien Pivotto
3509647462
Docker swarm: add filtering of services ( #8074 )
...
* Docker swarm: add filtering of services
Add filters on all docker swarm roles (nodes, tasks and services).
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2020-11-09 12:41:02 +01:00
Julien Pivotto
386e5010b8
Make the brand link in classic UI come back to classic UI home ( #8160 )
...
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2020-11-08 21:54:29 +01:00
Julien Pivotto
8dd0a3e9a3
Fix button display when there is no panels ( #8155 )
...
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2020-11-06 16:34:35 +01:00
Julien Pivotto
f81536d020
Merge pull request #8154 from roidelapluie/merge222
...
Merge 2.22 to master
2020-11-05 23:05:44 +01:00
Julien Pivotto
9bf48721d8
Merge remote-tracking branch 'origin/release-2.22' into master
...
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2020-11-05 23:00:32 +01:00
Björn Rabenstein
b3a02c3d04
Merge pull request #8153 from prometheus/beorn7/release
...
Volunteer for v2.23 release
2020-11-05 19:51:46 +01:00
beorn7
b5513d3dee
Add volunteers for releases 2.23 and 2.24
...
Signed-off-by: beorn7 <beorn@grafana.com>
2020-11-05 17:55:29 +01:00
Frederic Branczyk
00f16d1ac3
Merge pull request #8146 from brancz/cp-8104-8061
...
Cut v2.22.1
2020-11-05 14:57:50 +01:00
Frederic Branczyk
8e0e326f37
*: Cut v2.22.1
...
Signed-off-by: Frederic Branczyk <fbranczyk@gmail.com>
2020-11-04 14:14:19 +01:00
Brian Brazil
e7c6feabe1
More granular locking for scrapeLoop. ( #8104 )
...
Don't lock for all of Sync/stop/reload as that holds up /metrics and the
UI when they want a list of active/dropped targets. Instead take
advantage of the fact that Sync/stop/reload cannot be called
concurrently by the scrape Manager and lock just on the targets
themselves.
Signed-off-by: Brian Brazil <brian.brazil@robustperception.io>
2020-11-04 09:08:04 +01:00
Ganesh Vernekar
601a3ef0bb
Read repair empty last file in chunks_head ( #8061 )
...
* Read repair empty file in chunks_head
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
* Refactor and introduce repairLastChunkFile
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
* Attempt windows test fix
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
* Fix review comments
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
* Fix review comments
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in>
2020-11-04 09:08:04 +01:00
Frederic Branczyk
f3da817de9
Merge pull request #8147 from roidelapluie/duc
...
Calculate head chunk size based on actual disk usage (#8139 )
2020-11-04 09:06:53 +01:00
Tobias Schmidt
4ee2e1fd93
Install promu v0.7.0 ( #8148 )
...
Will start producing ZIP archives for Windows releases in addition to tarballs.
Signed-off-by: Tobias Schmidt <tobidt@gmail.com>
2020-11-04 00:33:59 +01:00
Julius Volz
3470ee1fbf
Make React UI the default, keep old UI under /classic ( #8142 )
...
The React app's assets are now served under /assets, while all old
custom web assets (including the ones for console templates) are now
served from /classic/static.
I tested different combinations of --web.external-url and
--web.route-prefix with proxies in front, and I couldn't find a problem
yet with the routing. Console templates also still work.
While migrating old endpoints to /classic, I noticed that /version was
being treated like a lot of the old UI pages, with readiness check
handler in front of it, etc. I kept it in /version and removed that
readiness wrapper, since it doesn't seem to be needed for that endpoint.
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2020-11-03 14:51:48 +01:00
Julien Pivotto
df6eed2358
Calculate head chunk size based on actual disk usage ( #8139 )
...
Cherry-picks 8bc369bf9b
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2020-11-03 13:02:17 +01:00
Julien Pivotto
8bc369bf9b
Calculate head chunk size based on actual disk usage ( #8139 )
...
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2020-11-03 15:34:59 +05:30
Jarod Watkins
388a2d20c9
UI: Add toggle to enable/disable metric autocomplete ( #8134 )
...
* UI: Add toggle to enable/disable metric autocomplete
This change adds a toggle to enable or disable the metric autocomplete
functionality. By default it is enabled. This is a port of a change I
did in [Thanos][1].
[1]: https://github.com/thanos-io/thanos/pull/3381
Signed-off-by: Jarod Watkins <jarod@42lines.net>
* Adding full variable name
Signed-off-by: Jarod Watkins <jarod@42lines.net>
2020-11-02 16:16:54 +01:00
Julien Pivotto
7558e9d3c3
API: Make snapshot length always the same size ( #8138 )
...
Fixes #8135
Minor improvement, also we now use Int64 even on 32 bit systems.
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2020-11-01 21:07:38 +01:00
Marco Pracucci
63be30dcee
Fixed WAL corruption on partial writes within a page ( #8125 )
...
* Fixed WAL corruption on partial writes
Signed-off-by: Marco Pracucci <marco@pracucci.com>
* Renamed variable
Signed-off-by: Marco Pracucci <marco@pracucci.com>
* Fixed test
Signed-off-by: Marco Pracucci <marco@pracucci.com>
* Addressed review comments
Signed-off-by: Marco Pracucci <marco@pracucci.com>
2020-10-29 16:07:03 +05:30
Julien Pivotto
318190021d
Enforce the usage of github.com/stretchr/testify/require ( #8129 )
...
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2020-10-29 11:09:08 +01:00
Julien Pivotto
6c56a1faaa
Testify: move to require ( #8122 )
...
* Testify: move to require
Moving testify to require to fail tests early in case of errors.
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
* More moves
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2020-10-29 09:43:23 +00:00