Skip to content
Snippets Groups Projects

BREAKING: Migrated the GraphDeployer to use the new API

2 files
+ 10
4
Compare changes
  • Side-by-side
  • Inline

Files

+ 9
4
@@ -6,6 +6,7 @@ using Coscine.GraphDeployer.Utils;
@@ -6,6 +6,7 @@ using Coscine.GraphDeployer.Utils;
using LibGit2Sharp;
using LibGit2Sharp;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
using Microsoft.Extensions.Options;
 
using Polly;
using VDS.RDF;
using VDS.RDF;
using static Coscine.GraphDeployer.Utils.CommandLineOptions;
using static Coscine.GraphDeployer.Utils.CommandLineOptions;
using Configuration = Coscine.ApiClient.Core.Client.Configuration;
using Configuration = Coscine.ApiClient.Core.Client.Configuration;
@@ -130,10 +131,14 @@ public class Deployer(ILogger<Deployer> logger, IOptionsMonitor<GraphDeployerCon
@@ -130,10 +131,14 @@ public class Deployer(ILogger<Deployer> logger, IOptionsMonitor<GraphDeployerCon
var content = VDS.RDF.Writing.StringWriter.Write(graph, rdfWriter);
var content = VDS.RDF.Writing.StringWriter.Write(graph, rdfWriter);
if (!opts.DummyMode)
if (!opts.DummyMode)
{
{
await _adminApi.UpdateMetadataGraphAsync(
// Retry the operation in case of failure up to 3 times using exponential backoff (2^retryAttempt seconds as the delay between retries)
graph.BaseUri.AbsoluteUri,
await Policy.Handle<Exception>().WaitAndRetry(3, (retryAttempt) => TimeSpan.FromSeconds(Math.Pow(2, retryAttempt))).Execute(async () =>
new MetadataUpdateAdminParameters(new RdfDefinitionForManipulationDto(content, formatEnum))
{
);
await _adminApi.UpdateMetadataGraphAsync(
 
graph.BaseUri.AbsoluteUri,
 
new MetadataUpdateAdminParameters(new RdfDefinitionForManipulationDto(content, formatEnum))
 
);
 
});
}
}
_logger.LogInformation("Deployed {graphName} successfully.", graphId);
_logger.LogInformation("Deployed {graphName} successfully.", graphId);
Loading