Skip to content

Commit f208b75

Browse files
authored
Merge pull request #9 from skbkontur/a.dobrynin/update-elasticsearch.net-6.8
Bump elasticsearch.net to 6.8.9
2 parents fdb85a8 + 8d90060 commit f208b75

File tree

11 files changed

+67
-15
lines changed

11 files changed

+67
-15
lines changed

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
# Changelog
22

3+
## v1.5.X - 2021.11.23
4+
- Update Elasticsearch.NET to v6.8.9
5+
36
## v1.4.X - 2021.08.06
47
- Reporting pending tasks count by topic and name
58

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
using System;
2+
3+
using Elasticsearch.Net;
4+
5+
using GroboContainer.Core;
6+
7+
using SkbKontur.Cassandra.DistributedTaskQueue.Monitoring.Storage;
8+
9+
namespace SkbKontur.Cassandra.DistributedTaskQueue.FunctionalTests.Common
10+
{
11+
public static class ContainerExtensions
12+
{
13+
public static void ConfigureRtqElasticClient(this IContainer container)
14+
{
15+
var elasticUrl = Environment.GetEnvironmentVariable("ES_URL") ?? "http://localhost:9205";
16+
var connectionPool = new SingleNodeConnectionPool(new Uri(elasticUrl));
17+
var configuration = new ConnectionConfiguration(connectionPool).DisableDirectStreaming();
18+
container.Configurator.ForAbstraction<IRtqElasticsearchClient>().UseInstances(new RtqElasticsearchClient(configuration));
19+
}
20+
}
21+
}

Cassandra.DistributedTaskQueue.FunctionalTests.Common/TestRemoteTaskQueueContainerConfigurator.cs

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using System;
2+
using System.Linq;
23
using System.Net;
34

45
using GroboContainer.Core;
@@ -20,7 +21,8 @@ public static class TestRemoteTaskQueueContainerConfigurator
2021
{
2122
public static void ConfigureCassandra([NotNull] this IContainer container)
2223
{
23-
var localEndPoint = new IPEndPoint(IPAddress.Loopback, 9160);
24+
var cassandraAddress = Environment.GetEnvironmentVariable("CASSANDRA_ADDRESS") ?? "127.0.0.1";
25+
var localEndPoint = new IPEndPoint(GetIpV4Address(cassandraAddress), 9160);
2426
var cassandraClusterSettings = new CassandraClusterSettings
2527
{
2628
Endpoints = new[] {localEndPoint},
@@ -69,5 +71,13 @@ public static IContainer ConfigureRemoteTaskQueue([NotNull] this IContainer cont
6971
container.Configurator.ForAbstraction<IRtqTaskManager>().UseInstances(remoteTaskQueue);
7072
return container;
7173
}
74+
75+
private static IPAddress GetIpV4Address([NotNull] string hostNameOrIpAddress)
76+
{
77+
if (IPAddress.TryParse(hostNameOrIpAddress, out var res))
78+
return res;
79+
80+
return Dns.GetHostEntry(hostNameOrIpAddress).AddressList.First(address => !address.ToString().Contains(':'));
81+
}
7282
}
7383
}

Cassandra.DistributedTaskQueue.Monitoring.TestService/GroboControllerFactory.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ private static IContainer ConfigureContainer()
3838
container.ConfigureCassandra();
3939
ConfigureRemoteLock(container);
4040

41-
container.Configurator.ForAbstraction<IRtqElasticsearchClient>().UseInstances(new RtqElasticsearchClient(new Uri("http://localhost:9205")));
41+
container.ConfigureRtqElasticClient();
4242
container.Configurator.ForAbstraction<IRtqTaskCounterStateStorage>().UseType<NoOpRtqTaskCounterStateStorage>();
4343
var rtqTaskCounterSettings = new RtqTaskCounterSettings(eventFeedKey : "RtqTaskCounterEventFeed", rtqGraphitePathPrefix : "None")
4444
{

Cassandra.DistributedTaskQueue.Monitoring/Cassandra.DistributedTaskQueue.Monitoring.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
</PropertyGroup>
99

1010
<ItemGroup>
11-
<PackageReference Include="Elasticsearch.Net" Version="6.6.0" />
11+
<PackageReference Include="Elasticsearch.Net" Version="6.8.9" />
1212
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
1313
<PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
1414
<PackageReference Include="SkbKontur.EventFeeds" Version="1.1.2" />

Cassandra.DistributedTaskQueue.Monitoring/Indexer/ElasticAvailabilityChecker.cs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,9 @@ private bool IsAlive()
4747
{
4848
try
4949
{
50-
var response = elasticClient.Info<DynamicResponse>();
50+
var response = elasticClient.Ping<StringResponse>();
5151
if (!response.Success)
5252
return false;
53-
var legacyStatus = response.Body["status"];
54-
if (legacyStatus != null)
55-
return (int)legacyStatus == 200;
5653
return response.HttpStatusCode == 200;
5754
}
5855
catch (Exception e)

Cassandra.DistributedTaskQueue.Monitoring/Storage/RtqElasticsearchClient.cs

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,35 @@
11
using System;
2+
using System.Collections.Generic;
23

34
using Elasticsearch.Net;
45

56
using JetBrains.Annotations;
67

78
namespace SkbKontur.Cassandra.DistributedTaskQueue.Monitoring.Storage
89
{
10+
[PublicAPI]
911
public class RtqElasticsearchClient : ElasticLowLevelClient, IRtqElasticsearchClient
1012
{
11-
public RtqElasticsearchClient([NotNull, ItemNotNull] params Uri[] uris)
13+
public RtqElasticsearchClient()
14+
{
15+
}
16+
17+
public RtqElasticsearchClient(IConnectionConfigurationValues settings)
18+
: base(settings)
19+
{
20+
}
21+
22+
public RtqElasticsearchClient(string cloudId, BasicAuthenticationCredentials credentials)
23+
: base(cloudId, credentials)
24+
{
25+
}
26+
27+
public RtqElasticsearchClient(ITransport<IConnectionConfigurationValues> transport)
28+
: base(transport)
29+
{
30+
}
31+
32+
public RtqElasticsearchClient([NotNull, ItemNotNull] IEnumerable<Uri> uris)
1233
: base(new ConnectionConfiguration(new SniffingConnectionPool(uris)).DisableDirectStreaming())
1334
{
1435
}
Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,19 @@
1-
using System;
2-
using System.Reflection;
1+
using System.Reflection;
32

43
using GroboContainer.NUnitExtensions;
54
using GroboContainer.NUnitExtensions.Impl.TestContext;
65

76
using JetBrains.Annotations;
87

9-
using SkbKontur.Cassandra.DistributedTaskQueue.Monitoring.Storage;
8+
using SkbKontur.Cassandra.DistributedTaskQueue.FunctionalTests.Common;
109

1110
namespace SkbKontur.Cassandra.DistributedTaskQueue.Tests
1211
{
1312
public class WithRtqElasticsearchClient : GroboTestSuiteWrapperAttribute
1413
{
1514
public override sealed void SetUp([NotNull] string suiteName, [NotNull] Assembly testAssembly, [NotNull] IEditableGroboTestContext suiteContext)
1615
{
17-
suiteContext.Container.Configurator.ForAbstraction<IRtqElasticsearchClient>().UseInstances(new RtqElasticsearchClient(new Uri("http://localhost:9205")));
16+
suiteContext.Container.ConfigureRtqElasticClient();
1817
}
1918
}
2019
}

appveyor.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ deploy:
8585
- provider: NuGet
8686
server: https://nuget.org
8787
api_key:
88-
secure: y2RPf+gBBqffQVm8pg9qZcg99m7K8hsSa4z7VHvIE6t+kuO7r/oIqTVcryZzL93D
88+
secure: 3Myenol+seNdEnkmH7tadxQLsmOE7VWQSp6vQii4vt2dX1S7XwjNV4T24HQTUsrr
8989
skip_symbols: true
9090
on:
9191
SHOULD_PUBLISH_NUGET_PACKAGE: true

global.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"sdk": {
3-
"version": "5.0.401"
3+
"version": "5.0",
4+
"rollForward": "latestFeature"
45
}
56
}

0 commit comments

Comments
 (0)