Commit graph

524 commits

Author SHA1 Message Date
Shane Kilkelly
f7125b9159 Handle Git LFS requests, with error message
We don't support Git LFS. This change adds a handler for
POST requests to "<project>.git/info/lfs/objects/batch",
and sends back a 406 response, with json data that the
client can use to print a nice error message.
2020-08-05 10:08:40 +01:00
Shane Kilkelly
e7b19ea4a0 Update src/main/java/uk/ac/ic/wlgitbridge/server/StatusHandler.java
Co-authored-by: John Lees-Miller <jdleesmiller@gmail.com>
2020-06-26 13:37:18 +01:00
Shane Kilkelly
4161416659 Update src/main/java/uk/ac/ic/wlgitbridge/server/HealthCheckHandler.java
Co-authored-by: John Lees-Miller <jdleesmiller@gmail.com>
2020-06-26 13:37:09 +01:00
Shane Kilkelly
5e31a11938 Respond to HEAD request in /status, /health_check 2020-06-26 11:54:18 +01:00
Shane Kilkelly
a9a7f54a96 Handle trailing slash on status and health_check 2020-06-25 16:43:57 +01:00
Shane Kilkelly
6ff3877dd1 Fix status and healthcheck tests 2020-06-19 15:50:51 +01:00
Shane Kilkelly
ec278ffe0a Fix log lines 2020-06-19 15:50:42 +01:00
Shane Kilkelly
ed778639a8 Move the status and healthcheck to root level 2020-06-19 15:50:27 +01:00
Shane Kilkelly
8def058d85 Fix log level 2020-06-19 15:50:16 +01:00
Shane Kilkelly
3c6ef38036 Fix alignment of function 2020-06-18 15:00:17 +01:00
Shane Kilkelly
40a171d44a Also check we can touch the filesystem in healthcheck 2020-06-18 14:56:50 +01:00
Shane Kilkelly
973a18b1b8 Clean up new healthcheck test 2020-06-18 14:56:38 +01:00
Shane Kilkelly
badeea3e0b Add test for status and health-check endpoints 2020-06-18 13:54:10 +01:00
Shane Kilkelly
689362b24f Use the bridge.healthCheck method 2020-06-18 11:45:21 +01:00
Shane Kilkelly
86769eedea Add a healthCheck method to the Bridge, check db 2020-06-18 11:45:04 +01:00
Shane Kilkelly
1befc3582b wip: add skeleton health-check handler 2020-06-17 16:15:40 +01:00
Shane Kilkelly
eba6c907e9 wip: status handler 2020-06-17 16:05:53 +01:00
Jakob Ackermann
090e58a953 [misc] add documentation on how to run commands from the dev-environment 2020-03-11 11:46:46 +01:00
Jakob Ackermann
f98212e96b [misc] make: skip tests for the build and package target
http://maven.apache.org/plugins-archives/maven-surefire-plugin-2.12.4/examples/skipping-test.html
2020-03-10 15:35:50 +01:00
Ersun Warncke
d89dbb7ff8 Revert "add debug"
This reverts commit 0d28d39563ad5de0db666c9e67493f5c814fe930.
2019-11-27 09:05:18 -04:00
Ersun Warncke
b6812462d6 add debug 2019-11-25 10:20:43 -04:00
Ersun Warncke
b1262ff06e pass client ip as url param 2019-11-19 12:08:35 -04:00
Ersun Warncke
5188e7c06a add file limit error 2019-11-12 11:16:54 -04:00
Shane Kilkelly
ffcb382f0c Update test to match new setup/teardown pattern 2019-08-02 13:34:43 +01:00
Shane Kilkelly
ac4f4082c8 Use 404 code when rejecting invalid project id 2019-08-02 13:31:27 +01:00
Shane Kilkelly
76b349591c Refactor to use new helper to send error response 2019-08-02 13:31:27 +01:00
Shane Kilkelly
b0ab2e07c5 Reject requests when the project uri begins with '/project' 2019-08-02 13:31:27 +01:00
Shane Kilkelly
abf525f43a Update test to match new setup/teardown pattern 2019-08-01 16:34:49 +01:00
Shane Kilkelly
3fac2cc825 Merge pull request #59 from das7pad/tests/cleanup-resources
[tests] cleanup resources
2019-08-01 16:26:51 +01:00
Shane Kilkelly
88adce3a02 Use UUID in file url, not (encoded) file path.
This fixes a bunch of issues where funny characters in the file path
(spaces, unicode, etc) would cause the file server in this process to
respond with a 404 when asked for the file. The 404 would then cause
the push to fail.

Now we just use a UUID as an opaque and unambiguous identifier for each file.
2019-07-05 11:07:47 +01:00
Shane Kilkelly
11e42ecb6f Point local config to v2 2019-07-03 09:37:11 +01:00
Shane Kilkelly
a68afc2e28 Merge pull request #67 from overleaf/sk-dont-catch-throwable-swap-impl
Don't catch `Throwable` in swap-job, catch Exception
2019-06-13 12:11:01 +01:00
Shane Kilkelly
591617f996 Merge pull request #68 from overleaf/sk-fix-unicode-file-paths
Encode file path when building url, allows unicode
2019-06-13 12:10:55 +01:00
Shane Kilkelly
71df1b0a31 Encode file path when building url, allows unicode 2019-06-07 14:17:33 +01:00
Shane Kilkelly
28865e2956 Don't catch Throwable in swap-job, catch Exception 2019-06-07 10:26:55 +01:00
Shane Kilkelly
552e0955da Tell user to remove .git folder 2019-05-29 11:05:53 +01:00
Shane Kilkelly
545a9240d3 Merge pull request #61 from overleaf/spd-colon-passwords
GitBridge: Allow colons in passwords
2019-05-29 10:33:38 +01:00
Shane Kilkelly
b1d7a0cf63 Merge pull request #65 from overleaf/sk-handle-409-has-dot-git
Handle a 409 response with code=projectHasDotGit
2019-05-29 10:33:22 +01:00
Shane Kilkelly
b6fc48645a Merge pull request #64 from overleaf/sk-skip-failing-projects-in-swap-job
Skip failing projects in swap job, and give up after a certain number
2019-05-29 10:33:06 +01:00
Shane Kilkelly
719f0c3661 Give up on projects that cannot be swapped, rather than spinning the loop forever 2019-05-29 10:20:37 +01:00
Shane Kilkelly
2492c95c0b Handle a 409 response with code=projectHasDotGit 2019-05-29 10:18:49 +01:00
Shane Kilkelly
f237efa6d5 Log and trap/ignore gc errors during swap 2019-05-23 11:14:02 +01:00
Shane Kilkelly
c7d8c1c6b5 Run GC on a project at start of swap job.
When there is an exception during swap, add project name to log
2019-05-16 11:42:13 +01:00
Simon Detheridge
d51f2fecfc Allow colons in passwords
bug: overleaf/issues#1393
2019-05-16 10:03:27 +01:00
Jakob Ackermann
a333aabfa9 [WLGitBridgeIntegrationTest] adjust the urls for the individual tests
Signed-off-by: Jakob Ackermann <das7pad@outlook.com>
2019-04-26 23:56:54 +02:00
Jakob Ackermann
5040b4d7f0 [WLGitBridgeIntegrationTest] ensure that we stop the started servers
Signed-off-by: Jakob Ackermann <das7pad@outlook.com>
2019-04-26 23:56:47 +02:00
Shane Kilkelly
c3308e565b Add git, make, and curl to docker image 2019-04-26 15:29:44 +01:00
Jakob Ackermann
85a8e377fc [docker] use a base image that already contains maven and openjdk
Signed-off-by: Jakob Ackermann <das7pad@outlook.com>
2019-04-17 11:21:41 +02:00
Shane Kilkelly
8f72cb89c8 Reject v1 ids earlier in the pipeline 2019-03-08 11:45:31 +00:00
Shane Kilkelly
788fad5ce7 Remove a deprecated method, no longer compatible with JGit 5.2 2019-03-06 11:43:27 +00:00