585 Commits

Author SHA1 Message Date
Tom Pallister
8e1a5ce827
Feature/dont validate cached content headers (#406)
* #372 use period timespan to decide when client can make requests again

* #400 dont validate cached body headers
2018-06-15 20:30:25 +01:00
Tom Pallister
9979f8a4b8
#372 use period timespan to decide when client can make requests again (#404) 2018-06-15 20:29:49 +01:00
Marco Antonio Araujo
87c13bd9b4 Add ability to specify whether to UseProxy or not on ReRoutes (#390) (#391)
* Add ability to specify whether to UseProxy or not on ReRoutes (#390)

* Remove useProxy default value from HttpHandlerOptions constructor
2018-06-12 08:08:25 +03:00
Tom Pallister
0f2a9c1d0d
Feature/poll consul (#392)
* WIP - implement a consul service discovery poller, lots of shared code with existing, refactor next and a todo in the docs to finish

* #374 implement polling for consul as option

* #374 updated docs to remove todo

* #374 fixed failing unit test

* #374 fixed failing unit test

* #374 fixed failing acceptance test
2018-06-12 00:58:08 +03:00
Tom Gardham-Pallister
14308ff5fb added ignore code coverage to experimental sqllitelog class that cannot be unit tested anyway really 2018-06-11 22:57:43 +01:00
Alex Kuriatnyk
095406bd45 Fix incorrect response StatusCode for middleware added before Ocelot (#380) 2018-06-11 22:23:45 +03:00
Tom Pallister
7cd3ff2ff7
Feature/fix unstable int tests (#376)
* updated packages but build wont work

* #245 implementing more stable rafty

* #245 OK so these raft integration tests are passing everytime on my local mac now...lets see about the build servergit log

* #245 added donation button

* #245 removed file we dont need
2018-05-31 22:08:50 +01:00
Tom Gardham-Pallister
e55b27de0f bit of refactoring 2018-05-24 22:56:08 +01:00
Tom Gardham-Pallister
900c18908f Merge branch 'master' into develop 2018-05-24 22:40:31 +01:00
Tsirkin Evgeny
34598f4edf made http client work under full .net 46 (#367)
* made http client work under full .net 46

* Changed the way the requests without body are checked & comments

* fixed a type
2018-05-24 22:39:27 +01:00
Catcher Wong
32a258fd3f Upgrade Pivotal.Discovery.Client to Pivotal.Discovery.ClientCore (#369) 2018-05-22 07:13:45 +01:00
Tom Pallister
d01720c349
#363 added a test to prove rr lb works, this doesnt have a lock so it… (#365)
* #363 added a test to prove rr lb works, this doesnt have a lock so it isnt perfect, not sure what the tradeoff is between a lock and a bit of randomness, can change to have a lock anytie

* #363 had a look at other oss roudn robin lbs and they all use a lock so imlemented a lock
2018-05-21 18:46:39 +01:00
Tom Pallister
f96adf9583
#349 always get all the services when using no loadbalancer (#362) 2018-05-17 07:46:01 +01:00
Tom Pallister
a55c75efdc
decided to stick a basic cache in for downstream route creator, can make fancy if required (#359) 2018-05-15 20:39:15 +01:00
Tom Pallister
061a90f1dd
#349 default to no load balancer so that in load balaner house we dont always rebuild the loadbalancer infrastructure because the load balancer options type is null (#358) 2018-05-15 18:29:35 +01: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
1823c832a6 +semver: major merged netstandard2.0 upgrade and updated all packages. Also had to change identity server test due to scope deduping and put a few awaits in. 2018-05-11 07:59:03 +01:00
David Nissimoff
b1641e003c netstandard2.0 support 2018-05-10 16:12:36 -07:00
Tom Gardham-Pallister
e32823c58b Merge branch 'feature/fix-unstable-raft-tests' into develop 2018-05-09 18:41:11 +01:00
Tom Gardham-Pallister
22fc8668af hacking around 2018-05-08 22:57:59 +01:00
Tom Pallister
4e17190b3f
Feature/service discovery config key (#347)
* #346 make service discoery config key configurable

* #346 missed this test

* #346 updated docs
2018-05-08 21:18:38 +01:00
Tom Pallister
54c7464919 change to firm up consul tests 2018-05-07 08:25:16 +01:00
Tom Pallister
fb3af754ab implemented a send to self pattern for sticky session timeouts rather than a normal timer 2018-05-05 13:43:38 +01:00
Tom Gardham-Pallister
c041d90e38 more messing with send ot self 2018-05-05 12:53:19 +01:00
Tom Gardham-Pallister
17a515c4c0 sticking send messages toself in to make this testable 2018-05-05 10:38:47 +01:00
Tom Gardham-Pallister
4c405f0f29 revert 2018-05-03 23:00:40 +01:00
Tom Gardham-Pallister
2f8d857731 pass expiry period into cookie thing to make this more testable 2018-05-03 21:34:22 +01:00
Tom Gardham-Pallister
003fff8b24 #245 hacked these tests around and they are now passing 5 runs in a row on my mac, lets see on build server 2018-05-01 22:07:56 +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
Dilsy99
d2432cf7f7 Develop (#338)
* #330 Fix and issue with the httpclient being cached on the url but not taking the http verb into accont. This caused an issue because if the same url but different verbs had handlers, the incorrect handler would be called

* Amend so that UnableToCompleteRequestError returns 500 rather than 404. This error occur when a delegate handler throws an exception

* Fix test that broke because of the change from 404 to 500 when delegate changes
2018-04-30 10:23:02 +01:00
Tom Pallister
5b63f333f7
#262 added working eureka sample (#333) 2018-04-26 09:38:36 +01:00
Dilsy99
027bf6867a #330 Fix and issue with the httpclient being cached on the url but not taking the http verb into accont. This caused an issue because if the same url but different verbs had handlers, the incorrect handler would be called (#331) 2018-04-25 16:46:41 +01:00
Tom Pallister
77211e9f16
Feature/store configuraton json idented (#328)
* messing around with benchmark.net.seems Ocelot adds about 2ms to a request..lets make this less? :)

* #326 store json indented so it looks nice :P
2018-04-24 08:30:17 +01:00
Tom Pallister
636d116491
#309 allow users to ignore ssl warnings, not sure this is advisable (#325)
* #309 allow users to ignore ssl warnings, not sure this is advisable

* #309 docs for ssl ignore
2018-04-22 12:05:49 +01:00
Tom Pallister
4f061f2b74
Feature/steeltoe (#324)
* #262 - Integrated Steeltoe Service Discovery with Ocelot for review.

* messing around

* seems to be working with eureka

* acceptance test passing with external lib references

* #262 support for netflix eureka service discovery thanks to pivotal

* #262 fixed warnings
2018-04-20 21:28:49 +01:00
Tom Pallister
5e1605882b
Feature/timeout for http client (#319)
* #318 http client obeys Qos timeout or defaults to 90 seconds, which is think is default for http client anyway but zero docs....

* #318 updated docs to specify default timeout and make it clear how to set it on a ReRoute basis

* #318 missed this

* #318 missed this
2018-04-18 15:24:16 +01:00
Tom Pallister
2b8c905a26 #296 remembered how to regex 2018-04-18 08:27:23 +01:00
Tom Pallister
e94df4749c #296 change so tests pass on windows 2018-04-17 21:51:41 +01:00
Tom Gardham-Pallister
b7ff73729f #296 merged develop into this branch 2018-04-17 19:45:27 +01:00
Tom Gardham-Pallister
2ed37cbc83 #296 will now do a crappy merge on the configuration 2018-04-16 20:28:15 +01:00
Tom Gardham-Pallister
c5aa11f7fb #296 still hacking this idea around 2018-04-15 18:06:03 +01:00
Tom Pallister
3ae2b286ab #296 coming up with ideas for this config merging 2018-04-15 09:20:52 +01:00
Tom Pallister
7ca828836a #296 started writing merge code 2018-04-14 07:02:17 +01:00
Felix Boers
fa09e4cf7a Support adding custom plaintext headers to downstream requests (#314) 2018-04-14 06:41:12 +01:00
Tom Pallister
fe9bca7b77 removed another pointless abstraction 2018-04-14 06:32:00 +01:00
Tom Pallister
fe5662f954 refactoring to consolidate configuration code 2018-04-13 22:47:50 +01:00
Tom Pallister
f88e1f65ef removed some async we dont need 2018-04-13 17:16:43 +01:00
Tom Pallister
cbaa2c3096 #296 renamed configuration.json to ocelot.json in preparation 2018-04-13 11:23:44 +01:00
Tom Pallister
a15f75dda8
#298 initial hacking around better aggregation (#310)
* #298 initial hacking around better aggregation

* #298 bit more hacking around

* #298 abstraction over httpresponsemessage

* #298 tidying up

* #298 docs

* #298 missed this
2018-04-12 17:35:04 +01:00
Tom Pallister
982eebfc74
Feature/#295 consul acl (#307)
* removed file

* updated package

* updated package

* updated package

* updated package

* updated package

* updated package

* updated package

* all packages updated

* #295 can add token to service provider config and this will be used by consul clients to get services and configuration

* #295 wait longer for this test
2018-04-08 15:54:58 +01:00