Browse Source

Fix separate worker. (#1078)

* Fix separate worker.

* Fix names

* Fix reference

* Another attempt.

* Temporarily disable worker.

* Remove worker.
pull/1080/head
Sebastian Stehle 3 years ago
committed by GitHub
parent
commit
fdd2914c9f
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 14
      backend/src/Squidex/Config/Messaging/MessagingServices.cs
  2. 6
      tools/TestSuite/TestSuite.ApiTests/GraphQLSubscriptionTests.cs
  3. 23
      tools/TestSuite/docker-compose-base.yml
  4. 73
      tools/TestSuite/docker-compose.yml

14
backend/src/Squidex/Config/Messaging/MessagingServices.cs

@ -59,16 +59,16 @@ public static class MessagingServices
services.AddSingletonAs<UsageTrackerWorker>() services.AddSingletonAs<UsageTrackerWorker>()
.AsSelf().As<IMessageHandler>(); .AsSelf().As<IMessageHandler>();
}
services.AddSingletonAs<BackupJob>() services.AddSingletonAs<BackupJob>()
.As<IJobRunner>(); .As<IJobRunner>();
services.AddSingletonAs<RestoreJob>() services.AddSingletonAs<RestoreJob>()
.As<IJobRunner>(); .As<IJobRunner>();
services.AddSingletonAs<RuleRunnerJob>() services.AddSingletonAs<RuleRunnerJob>()
.As<IJobRunner>(); .As<IJobRunner>();
}
services.AddSingleton<IMessagingSerializer>(c => services.AddSingleton<IMessagingSerializer>(c =>
new SystemTextJsonMessagingSerializer(c.GetRequiredService<JsonSerializerOptions>())); new SystemTextJsonMessagingSerializer(c.GetRequiredService<JsonSerializerOptions>()));

6
tools/TestSuite/TestSuite.ApiTests/GraphQLSubscriptionTests.cs

@ -72,6 +72,9 @@ public class GraphQLSubscriptionTests : IClassFixture<ContentFixture>
subscriptionStream.Where(x => x.Data.ContentChanges.Id == contentId).Timeout(TimeSpan.FromSeconds(30)) subscriptionStream.Where(x => x.Data.ContentChanges.Id == contentId).Timeout(TimeSpan.FromSeconds(30))
.FirstOrDefaultAsync(); .FirstOrDefaultAsync();
// Wait a little bit for the subscription to propagate.
await Task.Delay(2000);
// STEP 2: Create Content. // STEP 2: Create Content.
await _.Contents.CreateAsync(new TestEntityData(), new ContentCreateOptions { Id = contentId }); await _.Contents.CreateAsync(new TestEntityData(), new ContentCreateOptions { Id = contentId });
@ -109,6 +112,9 @@ public class GraphQLSubscriptionTests : IClassFixture<ContentFixture>
subscriptionStream.Where(x => x.Data.AssetChanges.Id == assetId).Timeout(TimeSpan.FromSeconds(30)) subscriptionStream.Where(x => x.Data.AssetChanges.Id == assetId).Timeout(TimeSpan.FromSeconds(30))
.FirstOrDefaultAsync(); .FirstOrDefaultAsync();
// Wait a little bit for the subscription to propagate.
await Task.Delay(2000);
// STEP 2: Create asset. // STEP 2: Create asset.
var fileParameter = FileParameter.FromPath("Assets/SampleVideo_1280x720_1mb.mp4"); var fileParameter = FileParameter.FromPath("Assets/SampleVideo_1280x720_1mb.mp4");

23
tools/TestSuite/docker-compose-base.yml

@ -0,0 +1,23 @@
version: '3'
services:
# Base configuration
squidex_base:
image: squidex-local
environment:
- ASPNETCORE_URLS=http://+:5000
- EVENTSTORE__MONGODB__CONFIGURATION=mongodb://mongo
- GRAPHQL__CACHEDURATION=00:00:00
- IDENTITY__ADMINCLIENTID=root
- IDENTITY__ADMINCLIENTSECRET=xeLd6jFxqbXJrfmNLlO2j1apagGGGSyZJhFnIuHp4I0=
- IDENTITY__ADMINEMAIL=hello@squidex.io
- IDENTITY__ADMINPASSWORD=1q2w3e$$R
- IDENTITY__MULTIPLEDOMAINS=true
- RULES__RULESCACHEDURATION=00:00:00
- SCRIPTING__TIMEOUTEXECUTION=00:00:10
- SCRIPTING__TIMEOUTSCRIPT=00:00:10
- STORE__MONGODB__CONFIGURATION=mongodb://mongo
- TEMPLATES__LOCALURL=http://localhost:5000
- UI__HIDENEWS=true
- UI__HIDEONBOARDING=true
networks:
- internal

73
tools/TestSuite/docker-compose.yml

@ -7,94 +7,47 @@ services:
networks: networks:
- internal - internal
# Base configuration
squidex1: squidex1:
image: squidex-local extends:
file: docker-compose-base.yml
service: squidex_base
environment: environment:
- ASPNETCORE_URLS=http://+:5000
- ASSETS__RESIZERURL=http://resizer
- EVENTSTORE__MONGODB__CONFIGURATION=mongodb://mongo
- EVENTSTORE__MONGODB__DATABASE=squidex1 - EVENTSTORE__MONGODB__DATABASE=squidex1
- GRAPHQL__CACHEDURATION=00:00:00
- IDENTITY__ADMINCLIENTID=root
- IDENTITY__ADMINCLIENTSECRET=xeLd6jFxqbXJrfmNLlO2j1apagGGGSyZJhFnIuHp4I0=
- IDENTITY__ADMINEMAIL=hello@squidex.io
- IDENTITY__ADMINPASSWORD=1q2w3e$$R
- IDENTITY__MULTIPLEDOMAINS=true
- RULES__RULESCACHEDURATION=00:00:00
- SCRIPTING__TIMEOUTEXECUTION=00:00:10
- SCRIPTING__TIMEOUTSCRIPT=00:00:10
- STORE__MONGODB__CONFIGURATION=mongodb://mongo
- STORE__MONGODB__CONTENTDATABASE=squidex1_content - STORE__MONGODB__CONTENTDATABASE=squidex1_content
- STORE__MONGODB__DATABASE=squidex1 - STORE__MONGODB__DATABASE=squidex1
- TEMPLATES__LOCALURL=http://localhost:5000
- UI__HIDENEWS=true
- UI__HIDEONBOARDING=true
- URLS__BASEURL=http://localhost:8080 - URLS__BASEURL=http://localhost:8080
networks:
- internal
depends_on: depends_on:
- mongo - mongo
# Hosted on path and separate worker
squidex2: squidex2:
image: squidex-local extends:
file: docker-compose-base.yml
service: squidex_base
environment: environment:
- ASPNETCORE_URLS=http://+:5000 - CLUSTERING__WORKER=true
- ASSETS__RESIZERURL=http://resizer
- EVENTSTORE__MONGODB__CONFIGURATION=mongodb://mongo
- EVENTSTORE__MONGODB__DATABASE=squidex2 - EVENTSTORE__MONGODB__DATABASE=squidex2
- GRAPHQL__CACHEDURATION=00:00:00
- IDENTITY__ADMINCLIENTID=root
- IDENTITY__ADMINCLIENTSECRET=xeLd6jFxqbXJrfmNLlO2j1apagGGGSyZJhFnIuHp4I0=
- IDENTITY__ADMINEMAIL=hello@squidex.io
- IDENTITY__ADMINPASSWORD=1q2w3e$$R
- IDENTITY__MULTIPLEDOMAINS=true
- RULES__RULESCACHEDURATION=00:00:00
- SCRIPTING__TIMEOUTEXECUTION=00:00:10
- SCRIPTING__TIMEOUTSCRIPT=00:00:10
- STORE__MONGODB__ASSETSHARDCOUNT=20
- STORE__MONGODB__CONFIGURATION=mongodb://mongo
- STORE__MONGODB__CONTENTDATABASE=squidex2_content - STORE__MONGODB__CONTENTDATABASE=squidex2_content
- STORE__MONGODB__CONTENTSHARDCOUNT=20
- STORE__MONGODB__DATABASE=squidex2 - STORE__MONGODB__DATABASE=squidex2
- STORE__MONGODB__TEXTHARDCOUNT=20 - STORE__MONGODB__TEXTHARDCOUNT=20
- STORE__TYPE=MongoDB
- TEMPLATES__LOCALURL=http://localhost:5000
- UI__HIDENEWS=true
- UI__HIDEONBOARDING=true
- URLS__BASEPATH=squidex/ - URLS__BASEPATH=squidex/
- URLS__BASEURL=http://localhost:8081/squidex/ - URLS__BASEURL=http://localhost:8081/squidex/
networks:
- internal
depends_on: depends_on:
- mongo - mongo
# Separate datbases
squidex3: squidex3:
image: squidex-local extends:
file: docker-compose-base.yml
service: squidex_base
environment: environment:
- ASPNETCORE_URLS=http://+:5000
- ASSETS__RESIZERURL=http://resizer - ASSETS__RESIZERURL=http://resizer
- CONTENTS__OPTIMIZEFORSELFHOSTING=true - CONTENTS__OPTIMIZEFORSELFHOSTING=true
- EVENTSTORE__MONGODB__CONFIGURATION=mongodb://mongo
- EVENTSTORE__MONGODB__DATABASE=squidex3 - EVENTSTORE__MONGODB__DATABASE=squidex3
- GRAPHQL__CACHEDURATION=00:00:00
- IDENTITY__ADMINCLIENTID=root
- IDENTITY__ADMINCLIENTSECRET=xeLd6jFxqbXJrfmNLlO2j1apagGGGSyZJhFnIuHp4I0=
- IDENTITY__ADMINEMAIL=hello@squidex.io
- IDENTITY__ADMINPASSWORD=1q2w3e$$R
- IDENTITY__MULTIPLEDOMAINS=true
- RULES__RULESCACHEDURATION=00:00:00
- SCRIPTING__TIMEOUTEXECUTION=00:00:10
- SCRIPTING__TIMEOUTSCRIPT=00:00:10
- STORE__MONGODB__CONFIGURATION=mongodb://mongo
- STORE__MONGODB__CONTENTDATABASE=squidex3_content - STORE__MONGODB__CONTENTDATABASE=squidex3_content
- STORE__MONGODB__DATABASE=squidex3 - STORE__MONGODB__DATABASE=squidex3
- STORE__TYPE=MongoDB
- TEMPLATES__LOCALURL=http://localhost:5000
- UI__HIDENEWS=true
- UI__HIDEONBOARDING=true
- URLS__BASEURL=http://localhost:8082 - URLS__BASEURL=http://localhost:8082
networks:
- internal
depends_on: depends_on:
- mongo - mongo

Loading…
Cancel
Save