Commit Graph

44 Commits

Author SHA1 Message Date
664c6ef626 Updated to netcoreapp3.1
* added basic sample

* updated docs
2020-01-18 22:17:22 +00:00
92ce87c61c docker build works on windows 2020-01-16 21:37:51 -08:00
fab09ab4dc updated acceptance and integration tests to use unique ports (#1091)
* updated acceptance and integration tests to use unique ports

* fix broken travis builds

* fix change port
2020-01-13 20:43:21 +00:00
5d82e68534 Removed unused usings, removed empty spaces, removed tons os warnings (#903) 2019-05-28 11:00:54 +08:00
55277cac45 Feature/should not start if specified using service discovery but no provider registered (#584)
* #580 added failing test

* #580 added failing test for dynamic reroutes

* #580 added failing test for validator

* #580 validation tests passing

* #580 acceptance tests passing

* #580 got rid of the list in sdp factory

* +semver: breaking #580 service discovery provider returned by delegate must be the same as name in config, this is a breaking change because you have to specify consul now

* #580 removed use servide discovery property from file config, we dont need it, just use the service name as indicator the user wants to use service discovery for the given reroute
2018-08-31 18:28:43 +01:00
8db5570840 Feature/fix #568 (#576)
* #568 Ocelot wont start if QoSOptions specified and no QoS DelegatingHandler registered e.g. no use of Ocelot.Provider.Polly. Also adds a NoQosDelegatingHandler and logs an error if ive missed something and the user can get to making the request

* #568 sadly something wierd with IServiceProvider and FluentValidation so I'm just defaulting to warning and noqosdelegatinghandler if someone doesnt register but provides options, also added basic in memory cache in case people dont use a specific package
2018-08-27 17:47:45 +01:00
b0bdeb9402 #534 fixed failing tests for this issue (#575) 2018-08-25 12:32:56 +01:00
00a600064d Feature/issue with path and query string #458 (#565)
* #548 added failing test

* #548 fixed failing tests for issue where using /{everything} didnt build path correctly
2018-08-20 22:28:58 +01:00
98ba0271be Feature/move polly (#561)
* added delegate to select last handler

* #529 implemented a way we can inject the last delegating handler

* wip - moving code

* #529 removed loads of qos code and moved it into Ocelot.Provider.Polly
2018-08-19 10:14:15 +01:00
600732651b Ive made the acceptance tests share the same builder in an effort to duplicate the linux port in use issue I have when running acceptance tests...seems to have been some use...now to test in CI (#486) 2018-07-21 11:24:05 +01:00
75f9a8f9be #451 started implementing querystring support in templates (#459)
* #451 started implementing querystring support in templates

* #451 ocelot.json back to normal and specified in docs query string wont work in upstream template

* Revert "#451 ocelot.json back to normal and specified in docs query string wont work in upstream template"

This reverts commit 563193f7b2f78bad6109484fe77f3c87de831005.

* #451 ocelot.json back to normal and specified in docs query string wont work in upstream template
2018-07-10 18:00:17 +01:00
6793278597 Feature/sticky sessions (#336)
* started messing around with sticky sessions idea

* more tests for sticky session thing

* more faffing cant make up my mind how to do this

* +semver: breaking added sticky session load balancer and changed way load balancer configuration is set by user

* #336 made tests BDDFy
2018-04-30 18:55:11 +01:00
d24df36420 #271 Added some extra logging (#276) 2018-03-14 18:49:41 +00:00
fd2c5364fc #270 exposed ReRoute priority (#272) 2018-03-13 20:31:22 +00:00
167fbb3daf Remove multiple concurrent blank lines
SA1507
2018-03-03 13:26:27 +00:00
d1926268ac Feature/downstream aggregation (#248)
* started messing around with this on the train last night

* mega hacking away to change middleware into Ocelot iddleware

* scoped data repo back in

* broken commit getting tests working

* another broken commit farting around with tests

* all unit tests passing again

* mw pipeline for ocelot...still loads of hacks but getting there now to get acceptance tests working, then fix config so you can have aggregate and then imlement multiplexer, then mapping to response...loads to do

* all tests passing before aggregation feature implemented

* removed all the request middleware stuff we dont need it

* updated how errors work...tho i think there could be edge case here when aggregating because one downstream could error and this would effect another

* removed multiplexer so you dont have to send route down, this isnt very thread safe...sigh

* hacking around getting the config for aggregates in, this might change

* refactored builder and unit tests passing now

* Updated a bunch of ports for tests

* plugged in code to create reroutes that are aggregates

* made multiplexer a class

* hacked test to death

* simple aggregator done, initial validation done

* removed request id from context, it is still specific for http request

* now aggregates to json always

* docs for aggregate reroutes

* Updated docs
2018-02-27 08:22:47 +00:00
3ac9b3bd87 hacked together load balancing reroutes in fileconfig (#211)
* hacked together load balancing reroutes in fileconfig

* some renaming and refactoring

* more renames

* hacked away the old config json

* test for issue 213

* renamed key

* dont share ports

* oops

* updated docs

* mvoed docs around

* port being used
2018-01-31 20:34:55 +00:00
fef19ddf98 Changed routing to support a catch all style (#187)
* Changed routing to support a catch all style

* refactoring placeholder tuff

* implemented simple priority in the routing
2018-01-05 21:26:15 +00:00
931a115ffa changes to add new feature to url routing (#186) 2018-01-02 18:49:22 +00:00
9ba57f8ba6 Make Ocelot not add forward slash to downstream url (#158)
* removed code where we add a trailing slash as this means if we request /1.txt/ instead of /1.txt then some servers will not return the resource at /1.txt. After reading up it seems if you dont have a trailing slash then its a file, if you do then its a resource

* test for 145

* removed unused code

* fix broken build..my bad
2017-11-19 21:01:54 +00:00
2ead993c0f fix two failing tests 2017-11-02 12:03:32 +00:00
f4e8dcbdab everything working..now for the docs 2017-11-01 15:51:49 +00:00
120532bb0d fixed more failing acceptance tests...think the only thing to do now is work out the authentication stuff and that should fix all the other tests 2017-10-30 13:14:12 +00:00
25c1a2abdd merged publish fix 2017-10-13 08:28:38 +01:00
d0d74f0886 match whole input with regex 2017-10-12 19:03:20 +01:00
4d3a7ae5e1 another script change to find error 2017-10-10 17:52:38 +01:00
7ef26f5f4b fixes issue #117 2017-08-29 20:47:52 +01:00
24f7b9a171 UpstreamHttpMethod property (of class FileReRoute) changes from string to List<string>. 2017-05-05 11:47:28 +01:00
e91da1ac23 Add the possibility of set mutiple verbs in the UpstreamHttpMethod property.
Add UnitTests and AcceptanceTests to try this feature.
2017-05-04 10:56:16 +01:00
6510f173b9 Adds an acceptance test to check the use of placeholder for a final url path. 2017-04-22 22:06:00 +01:00
bf90b12f2c acceptance tests passing after fixing registrations 2017-02-21 07:39:09 +00:00
e33fe4cf7d merged develop 2017-02-11 12:07:08 +00:00
caae826d77 Refactor qos as options 2017-02-08 09:25:32 +08:00
7fffc9827a auth options builders 2017-02-07 20:30:26 +00:00
883be802b3 Refactor CircuitBreaker Pattern
Add Qos Config in ReRoute And Refactor CircuitBreakingDelegatingHandler
2017-02-03 14:49:46 +08:00
0f71c040d9 split DownstreamTemplate into DownstreamPathTemplate, DownstreamScheme, DownstreamHost and DownstreamPort in order to prepare for service discovery 2017-01-21 09:59:47 +00:00
536db48049 fixed problems where routes were not mathing 2016-11-26 14:08:09 +00:00
f4acb4f041 changed to json configuration to get rid of yaml imports 2016-11-02 21:50:53 +00:00
3a1dd1f9bc fixed a bug where getting invalid parameter error if sending a steam content with no stream, now we try convert to byte array which the c# http client is happy to take if empty...or this error is caused because we are trying to use a stream when we shouldnt. 2016-10-28 22:50:00 +01:00
4427ef459f more refactoring acceptance tests 2016-10-19 21:48:41 +01:00
9798cf01e5 refactoring acceptance tests..they need some tlc 2016-10-19 21:28:55 +01:00
8b0ceeda5b removed library namespace 2016-10-18 19:10:09 +01:00
acfeeed86a removed ocelot website project from src and added a manual test project for this, renamed library project to just be ocelot 2016-10-18 19:04:46 +01:00
707f1d6908 renamed and removed some stuff that wasnt needed 2016-10-18 16:22:51 +01:00