Commit Graph

58 Commits

Author SHA1 Message Date
3eb9b4da89 Feature/fix admin api caching wrong re routes (#421)
* #383 added failing test for this issue

* #383 identified issue was with cached load balancer for a given upstream path template based on the key we use, have modified this to include more data, I guess this might be an issue again for other things so I will have a think about it

* #383 fixed failing tests after key change

* Seems to be an issue with coveralls new package not being on nuget...try same version as their nuget package

* bash the old manual tests json back in
2018-06-21 22:45:24 +01:00
04139333ea #245 ignored these tests against as still not working 2018-06-08 17:54:56 +03:00
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
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
b1641e003c netstandard2.0 support 2018-05-10 16:12:36 -07:00
aa3de16464 skip raft tests but merging all the other hardening i did in that branch 2018-05-09 18:42:10 +01:00
22fc8668af hacking around 2018-05-08 22:57:59 +01:00
66bc6203ad added cache back in 2018-05-07 09:03:15 +01:00
66a1bfc257 identified tests are failing because sometimes more than one log entry in raft, this is deffo wrong, also made int tests not use cache manager 2018-05-07 09:00:41 +01:00
5ed8257a58 still trying to get these stable 2018-05-05 16:31:40 +01:00
fb3af754ab implemented a send to self pattern for sticky session timeouts rather than a normal timer 2018-05-05 13:43:38 +01:00
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
aa55fe34cb Feature/merge configuration files (#316)
* #296 renamed configuration.json to ocelot.json in preparation

* removed things we dont need for tests

* another file we dont need

* removed some async we dont need

* refactoring to consolidate configuration code

* removed another pointless abstraction

* #296 started writing merge code

* #296 coming up with ideas for this config merging

* #296 still hacking this idea around

* #296 will now do a crappy merge on the configuration

* #296 change so tests pass on windows
2018-04-17 22:06:41 +01:00
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
c1b315173f Squash some warnings (#278)
* squash SA1649 warnings (file/type name mismatch)

* squash SA1127 warnings (generic constraint on own line)

* squash SA1507 warnings (multiple blank lines)

* squash package analysis warnings re: summary text

It's not actually possible to provide a summary right now as per
https://github.com/NuGet/Home/issues/4587

* squash missing castle.core reference warning

* squash obsolete method warnings re: AddOcelotBaseUrl
2018-03-16 17:48:11 +00:00
167fbb3daf Remove multiple concurrent blank lines
SA1507
2018-03-03 13:26:27 +00:00
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
28a41b21a4 Merge remote-tracking branch 'upstream/develop' into feature/AddStyleCopAnalyzers
# Conflicts:
#	test/Ocelot.AcceptanceTests/Ocelot.AcceptanceTests.csproj
#	test/Ocelot.Benchmarks/Ocelot.Benchmarks.csproj
2018-03-03 12:33:04 +00:00
2573657ec2 #245 ignored raft tests for now as a bit unstable 2018-02-26 08:56:37 +00:00
df86052a31 Add stylecop analyzers with default ruleset 2018-02-25 14:36:33 +00:00
bf3188020a Feature/base url in config (#234)
* started moving baseurl to config issue 233

* fixed test
2018-02-15 09:52:16 +00:00
05481f3af3 Feature/use any id server for admin area (#232)
* initial commits around using any id servers

* add your own id server for admin area

* lots of refactoring, now instead of injecting IWebHostBuilder we just set the Ocelot base url as a configuration extension method..this means people can pass it in on the command line aswell as hardcode which is OK I guess, also can now use your own IdentityServer to authenticate admin area

* updated docs for #231

* some tests that hopefully bump up coverage
2018-02-14 18:53:18 +00:00
ef3c4f614a Monitoring (#219)
* feat:  use Https://github.com/ButterflyAPM to monitor each API request monitoring metrics

* feat: using DiagnosticSource and Butterfly.OpenTracing

* refactor:refactor Ocelot tracing, merge code into OcelotDiagnosticListener

* refactor: move OcelotHttpTracingHandler to Requester

* fix: Requester\HttpClientBuilder.cs(10,14): error CS0234: The type or namespace name 'Tracing' does not exist in the namespace

* feat: add test should_set_up_tracing

* feat : Remove extraneous code

* feat: remove unused DiagnosticSource diagnostic

* fix : test UseTracing

* add test should_call_scoped_data_repository_QosProviderError

* add test should_return_any_errors

* add test HttpClientHttpRequesterTest

*  it should keep it can not be deleted
2018-02-12 18:33:23 +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
6a20baeb97 Improving logging and request id (#189)
* hacking around to work out why logging and request id isnt working

* pass request id into logger so it can be structured, removed a bunch of debug logging we dont need because diagnostic trace gets it

* changed config dependency

* always have tracing available

* made it so we dont need to pass config into services.AddOcelot anymore with .net core 2.0

* add test

* lots of changes relating to logging and request ids, also updated documentation

* fixed failing test i missed
2018-01-06 16:39:05 +00:00
f082f7318a Raft round 2 (#182)
* brought in rafty

* moved raft classes into Ocelot and deleted from int project

* started to set up rafty in Ocelot

* RAFTY INSIDE OCELOT...WOOT

* more work adding rafty...just need to get auth working now

* rudimentary authenticated raft requests working

* asyn await stuff

* hacked rafty into the fileconfigurationcontroller...everything seems to be working roughly but I have a lot of refactoring to do

* updated to latest rafty that doesnt need an id

* hacky but all tests passing

* changed admin area set up to use builder not configuration.json, changed admin area auth to use client credentials

* missing code coverage

* ignore raft sectionf for code coverage

* ignore raft sectionf for code coverage

* back to normal filters

* try exclude attr

* missed these

* moved client secret to builder for authentication and updated docs

* lock to try and fix error accessing identity server created temprsa file on build server

* updated postman scripts and changed Ocelot to not always use type handling as this looked crap when manually accessing the configuration endpoint

* added rafty docs

* changes I missed

* added serialisation code we need for rafty to process commands when they proxy to leader

* moved controllers into their feature slices
2018-01-01 18:40:39 +00:00
6289992faa added Ocelot bulder to try and make adding Ocelot configuration more … (#159)
* added Ocelot bulder to try and make adding Ocelot configuration more idiomatic

* renamed tests
2017-11-22 07:07:59 +00:00
1d61e403ed changes to create load balancers and qos providers on first request to reroute and then check if they have changed on subsequent requests but not create again if they havent..quite a few breaking changes here. 2017-11-09 17:35:49 +00:00
163150a1d7 seperate startups for tests...updated configuration.json for manual tests and tidied a few more things up 2017-11-01 16:21:35 +00:00
3f2af85969 test passing with authentication being provided by the user and mapped to the re route in config 2017-11-01 15:25:55 +00:00
b28fc6694e tidy up and no longer hard code admin area...still one int test failing before we start looking at rebuilding auth stuff 2017-10-29 16:35:12 +00:00
1c98dcbca3 updated packages and project versions...12 errors! 2017-09-25 11:53:56 +01:00
cffb8b63d9 blasduihasd 2017-09-21 23:09:36 +01:00
c06b492b46 upgraded to netcoreapp2.0 2017-09-21 23:00:22 +01:00
c70a90f415 Fix more test-related build warnings 2017-07-18 10:20:59 +01:00
9a4a670e79 sorted int tests 2017-06-28 19:05:06 +01:00
ab953f28fd realised the user can just set the region..delete time 2017-06-28 08:17:48 +01:00
0fa759c76c first acceptance test failing.. 2017-06-27 19:07:55 +01:00
6cdf4e67df can now use tokens from ocelot a on ocelot b when using admin area 2017-06-23 15:17:40 +01:00
2d94884c6f trying to get cluster working 2017-06-23 11:25:23 +01:00
190c967655 Merge branch 'master' into develop 2017-06-10 15:20:37 +01:00
07671b8fdb Updated all IdentityServer packages. 2017-05-19 14:46:25 +01:00
944e96c4f8 update to latest xunit prerelease 2017-05-09 19:44:47 +01:00
0507806aae Rough first go at test coverage. Might need tidying up. 2017-05-06 17:53:44 +01:00
24f7b9a171 UpstreamHttpMethod property (of class FileReRoute) changes from string to List<string>. 2017-05-05 11:47:28 +01:00
be0918879c Change to not log loads of rubbish when running integration tests 2017-03-19 12:46:42 +00:00
a3b387aeb1 Renamed ScopeName to ApiName, ScopeSecret to ApiSecret, and
AdditionalScopes to Allowed Scoped in order to be more consistent with
Identity Server naming conventions.
2017-03-14 16:54:55 -04:00
d80b73a0d2 change to get appveyor to pick up all tests from http://stackoverflow.com/questions/42747868/vs-2017-not-discovering-tests-if-net-core 2017-03-12 22:35:32 +00:00
6f65d9bab0 upgraded to vs2017 2017-03-09 17:00:15 +00:00
f443575185 thread safe test passing on windows 2017-03-06 13:24:36 +00:00