32 Commits

Author SHA1 Message Date
Tom Pallister
3439be8927
Rename all ReRoute to Route to move closer to YARP +semver: breaking 2020-05-23 20:50:05 +01:00
Tom Pallister
fe3e8bd23a
Remove Ocelot specific Middleware to make Ocelot more compatible with kestrel middleware and get ready for YARP 2020-05-23 15:48:51 +01:00
TomPallister
2843cdbc0b removed tasks we dont need 2020-04-13 11:13:28 +01:00
TomPallister
2772ce406d all acceptance tests passing 2020-02-19 09:18:01 +00:00
Tom Pallister
65710f4a94
+semver: breaking PRs merged from Develop, Eureka honour scheme, don't crash on dispose and validate duplicate placeholders in UpstreamPathTemplate
* initial commit for new feature #1077

allow to limit the number of concurrent tcp connection to a downstream service

* protect code against value not in accurate range

add unit test

* Do not crash host on Dispose

* Add test

* Pin GitVersion.CommandLine package version

* #683 validate if there are duplicated placeholders in UpstreamPathTemplate

* Use registered scheme from Eureka (#1087)

* extra test

* very brief mention MaxConnectionsPerServer in docs

* build develop like a PR

* more docs

Co-authored-by: jlukawska <56401969+jlukawska@users.noreply.github.com>
Co-authored-by: buretjph <58700930+buretjph@users.noreply.github.com>
Co-authored-by: Jonathan Mezach <jonathanmezach@gmail.com>
Co-authored-by: 彭伟 <pengweiqhca@sina.com>
2020-01-19 15:00:21 +00:00
Thiago Loureiro
5d82e68534
Removed unused usings, removed empty spaces, removed tons os warnings (#903) 2019-05-28 11:00:54 +08:00
Tom Pallister
1e2e953b2c
Feature/automatic routes with sd (#351)
* #340 started looking at supporting automatic routing when using service discovery

* #340 getting old routing tests to pass

* #340 renamed stuff to provider rather than finder, as its not longer finding anything

* #340 working towards supporting dynamic routing

* #340 loads of refactoring to make configuration work with dynamic routing

* #340 refactor consul config code so the registry class owns it

* #340 default to consul to maintain backwards compat

* #340 added docs, finished this branches todos
2018-05-14 21:26:10 +01:00
Tom Pallister
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
Tom Pallister
463a7bdab4
Feature/websockets (#273)
* #212 - hacked websockets proxy together

* faffing around

* #212 hacking away :(

* #212 websockets proxy middleware working

* #212 map when for webockets working

* #212 some test refactor

* #212 temp commit

* #212 websockets proxy working, tests passing...need to do some tidying and write docs

* #212 more code coverage

* #212 docs for websockets

* #212 updated readme

* #212 tidying up after websockets refactoring

* #212 tidying up after websockets refactoring

* #212 tidying up after websockets refactoring

* stuck a warning in about logging levels into docs!
2018-03-23 18:01:02 +00:00
Philip Wood
b8e95373a4 Fix async/await warnings 2018-03-06 10:59:01 +00:00
Philip Wood
50980fda93 Fix various violations
SA1216, CS0105, CS0169, CS0414, CS0649
2018-03-03 14:08:52 +00:00
Philip Wood
c61dc9fd11 Fix brace line spacing and remove multiple concurrent whitespace characters
SA1025, SA1505, SA1508, SA-1509, SA1513
2018-03-03 13:14:24 +00:00
Tom Pallister
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
Tom Pallister
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
Tom Pallister
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
Tom Gardham-Pallister
88e51971c5 only get config once in a request...could make this its own middleware one day? 2017-11-10 18:07:08 +00:00
Tom Gardham-Pallister
bc1ba53f21 unit tests passing again 2017-11-09 08:19:36 +00:00
Tom Gardham-Pallister
e43732290a massive refactor to handle creating load balancer first time a re route is called 2017-11-08 21:26:49 +00:00
Philip Wood
d02e921a58 Moved ScopedRepository into test base class. 2017-07-18 10:53:57 +01:00
Philip Wood
8042bbab2c Moved common middleare test setup into a base class 2017-07-18 09:28:32 +01:00
Juan Carlos Santana Herrera
24f7b9a171 UpstreamHttpMethod property (of class FileReRoute) changes from string to List<string>. 2017-05-05 11:47:28 +01:00
Philip Wood
878eacf1db Remove obsolete code 2017-04-18 15:35:54 +01:00
Philip Wood
7c1a277147 Fixed some unit tests 2017-04-18 14:05:15 +01:00
TomPallister
e33fe4cf7d merged develop 2017-02-11 12:07:08 +00:00
geffzhang
caae826d77 Refactor qos as options 2017-02-08 09:25:32 +08:00
Tom Gardham-Pallister
33ce162693 changed upstream http method to use httpmethod class in .net 2017-02-07 18:30:21 +00:00
Tom Gardham-Pallister
0a66051b92 removed some code we dont need as not expecting any errors so should just throw an exception to the global handler 2017-02-06 21:47:08 +00:00
Tom Gardham-Pallister
a4495b8fa9 tests for error handling on load balancing middleware 2017-02-06 20:22:09 +00:00
TomPallister
c46dcc05b8 started implementing the consul service provider 2017-02-04 13:16:31 +00:00
Tom Gardham-Pallister
f285b0e0ad plugged load balancer middleware into Ocelot pipeline, load balanced downstream host and port now used by url creator middleware 2017-02-03 08:00:07 +00:00
Tom Gardham-Pallister
f2c6d1c799 load balancer middle ware test and cake mac osx build script 2017-02-02 22:34:46 +00:00
Tom Gardham-Pallister
07ca7989b0 more work towards getting service discovery working with load balancing 2017-02-02 21:34:15 +00:00