Previously, status 200 was set for file export, which is used
for backup, which resulted in an inability to set an error status code
in case of a problem with file generation.
After this change, status code 200 would be written automatically by Go
before we start writing the response's body.
* fresh vendor
* enforce vendor flag with env
* move tree to service package
* move controllers routing to rest.go, remove separate subrouters
* cleanup/formatting
* missing vendor packages
* move rss, img proxy, robots and getstarted to top-level routes
* simplify logger middleware usage
* randomize server test ports
* check for non-admin in admin tests
* lint: minor warns
* admin test to jwt admin
* remove cache, switch to go-pkgz/rest/cache
* remove mongo cache from server test
* remove old caching code
* test tricky disqus inputs
* fix migrator test
* stacktrace dump test
* support flags commands, move to cmd
* fix target name
* test for happy path importer
* add export cmd
* fix wrong import, lint warns
* increase test timeout
* add sellp to allow main test server to start
* implement all cmds
* handle backup/restore errors
* fix import status check, hide secret from logs
* backup cmd err tests
* randimize test port
* avoid dup code in Last controller
* add target to make all bin archives
* remove container in make
* add smiple scripts to simplify commands, update readme
* add docs on dockerless, enforce app user
* add restore info
* move last to lastCommentsScope const
* add siteID to cache Get
* indirect option setters
* add mongo cache with tests, add Key and Flusher
* lint: minor warns
* workaround for cache parallel test
* repeater in mongo cache
* missing repeater vendor
* fix nop cache
* add cache mongo benchmark
* wired mongo cache, single opts group for mongo
* disable goconst
* stop cache repeated on not found error
* use local mongo for tests in travis