Commit Graph

133 Commits

Author SHA1 Message Date
Richard van der Hoff e88a448a20 Read request body before sending response 2018-03-06 10:23:24 +00:00
Richard van der Hoff 00b9337e01 Avoid rejecting whole thing if one file fails
because there will probably still be useful info
2017-12-04 14:00:05 +00:00
Richard van der Hoff 92e9797fe9 close request body 2017-12-04 12:49:48 +00:00
Richard van der Hoff 5fac31b9b4 Better errors when parsing multipart 2017-12-04 12:38:03 +00:00
Richard van der Hoff c4be680abc add github.com/pkg/errors 2017-12-04 12:37:31 +00:00
Richard van der Hoff c7d9018647 Try to avoid setting an empty github issue title (#20)
Github complains if the title is empty, so work a bit harder on making sure
that we have a valid title even if the first line of the text is empty.
2017-09-08 12:11:56 +01:00
Richard van der Hoff 0452567cd7 Unbreak github submits for json rageshakes (#19)
Make sure we read the appname from JSON rageshakes, so that issues are
correctly filed into github.

(This was affecting riot-web 0.9.9 and earlier; later versions are using the
multipart interface; riot-android was special-cased anyway; riot-ios has never
used the JSON interface.)
2017-05-10 10:42:44 +01:00
Richard van der Hoff debd4f9535 Fix handling of reports with no labels
because go, and because nil != [], and because my testing wasn't adequate.
2017-05-04 16:21:09 +01:00
Richard van der Hoff 63d6917dfe If a log is uploaded with a sensible filename, preserve it (#18)
- the mobile guys want to be able to distinguish between crash.log and other
logs.
2017-05-04 15:58:23 +01:00
Richard van der Hoff f630c6a78a Save uploaded logs during upload (#17)
I got fed up with shoving everything into the structure the JSON api uses for
upload, so now parseRequest returns its own structure, and saves the log files
to disk in the same way as the other attachments.

This also means that we can test the saving of log files more representatively.
2017-05-04 15:54:25 +01:00
Richard van der Hoff bc292e4399 Support for adding labels to github issues (#16) 2017-05-03 10:33:27 +01:00
Richard van der Hoff 530fcd69db Add support for attaching files to reports (#14)
* Create report dir before reading POST body

... so that we can stream uploaded files straight to disk, instead of reading
them into memory first.

* Add support for attaching files to reports

If a 'file' parameter is provided, save it as a file on disk. Also include a
link to it from the github issue.
2017-05-02 17:53:12 +01:00
Richard van der Hoff 9bbdf64e5f Include details from the report in the github issue (#15)
... to make triaging easier.
2017-05-02 17:39:16 +01:00
Richard van der Hoff 0417e8d385 Support for compressed logfiles (#13)
Allow apps to upload gzipped log files
2017-04-18 15:47:45 +01:00
Richard van der Hoff 7cb9486333 Multipart upload support (#12)
Allow submission of the input data as a multipart form, instead of JSON.
2017-04-18 15:43:04 +01:00
Richard van der Hoff 8505268edf Zero-pad logfile names (#11)
- so that they are sorted properly
2017-04-18 13:06:21 +01:00
Richard van der Hoff 40a6eec4e1 Send github URL back to application (#10)
I'm not sure if this is going to be useful, but it's fairly harmless, and is
annoying me by being on a branch.
2017-04-18 11:55:22 +01:00
Richard van der Hoff a3e3561467 Undo the android client's mangled submissions (#9)
current riot-android stuffs everything into the 'version' field; I don't really
want that ending up in the github issue (especially the mxid), and I don't want
to have to wait for an update to riot-android to land, so let's unpick
it into 'data'.
2017-04-13 15:18:20 +01:00
Richard van der Hoff dbb54c71d5 Hack in support for riot-android 2017-04-12 18:01:15 +01:00
Richard van der Hoff 11fbdebf64 Rename sample config file
This means that we can have a `rageshake.yaml` on the live server which is used
without faffing with parameters.
2017-04-12 15:27:50 +01:00
Richard van der Hoff 3b5b19cc90 Make github issue a bit more useful (#7)
* include the text from the report and other useful info
* include a link to the report details
* Pick github repo based on submitted app name
2017-04-12 15:06:40 +01:00
Richard van der Hoff 112158fd47 Add 'app' and 'data' fields to report API (#6) 2017-04-11 12:21:30 +01:00
Richard van der Hoff 3568dc9efa Switch to yaml for our config data (#5)
Env vars are getting unwieldy, and it's going to get worse.
2017-04-10 14:39:10 +01:00
Richard van der Hoff 4af3e2a302 Vendor import: gopkg.in/yaml.v2 2017-04-10 09:50:32 +01:00
Richard van der Hoff 03d538ae4c Create a (template) github issue on report 2017-04-07 17:12:42 +01:00
Richard van der Hoff f6003270db Import github integration libraries.
Lots of libraries so that we can talk to github :/
2017-04-07 17:12:42 +01:00
Richard van der Hoff c65e1b468c Move submit handler to separate file
Also unexport payload/logentry to stop the linter complaining
2017-04-07 17:12:42 +01:00
Richard van der Hoff db5597375d Serve log files as plain text (#3)
If the client accepts gzip, just serve the file as a gzip-encoded plain text.

If it doesn't, gunzip it first.
2017-04-06 12:20:07 +01:00
Richard van der Hoff 7e551a8fc1 fix up the pre-commit hook (#1)
* Run the checks against the git index (ie, what you're about to commit),
  rather than the working copy

* Add the changes made by `go fmt` back to the index, so that they are included
  in the commit, as well as the working copy.
2017-04-05 14:51:07 +01:00
Richard van der Hoff ad6ce4e073 Copyright 2017-04-04 16:59:18 +01:00
Richard van der Hoff 19cacfe94b Add readme, contributing, license 2017-04-04 16:20:50 +01:00
Richard van der Hoff 48cee4ecaa Travis build script and gitignores 2017-04-04 12:01:28 +01:00
Richard van der Hoff 6393ec357e Give rageshake script its own repo
This was previously at
https://github.com/vector-im/riot-web/blob/develop/scripts/rageshake.go, but
it's not really exclusive to riot-web, and given I'm about to add some more
complexity to it, I'd like for it to be in its own repo.
2017-04-04 11:25:00 +01:00