refactor(datasync): remove deprecated SyncMode and SyncModeConfig

- Delete SyncMode.cs enum file
- Remove SyncModes property from PipelineConfig
- Remove SyncModeConfig and DestinationOverride records
- Remove WithMode(SyncMode) from IEtlPipelineBuilder
- Remove BuildWithSyncModes() and related methods from EtlPipelineFactory
- Remove syncModes sections from all pipelines in pipelines.json
- Update tests to use schedules-only configuration

All pipelines now require 'schedules' format (mass/daily/hourly).
WithUpdateType(UpdateTypes) is the only way to set update type.
This commit is contained in:
Joseph Doherty
2026-01-07 05:16:20 -05:00
parent 1618b6664d
commit c814a7294b
8 changed files with 122 additions and 670 deletions
@@ -5,8 +5,6 @@ namespace JdeScoping.DataSync.Configuration;
/// </summary>
public record PipelineConfig(
SourceConfig Source,
[property: Obsolete("Use Schedules property instead. SyncModes will be removed in a future version.")]
Dictionary<string, SyncModeConfig>? SyncModes,
PipelineSchedules? Schedules,
List<TransformerConfig>? Transformers,
DestinationConfig Destination,
@@ -25,22 +23,6 @@ public record ParameterConfig(
string Source = "offset",
string? Value = null);
/// <summary>
/// Sync mode configuration (legacy format).
/// </summary>
[Obsolete("Use ScheduleConfig instead. SyncModeConfig will be removed in a future version.")]
public record SyncModeConfig(
string? MinDtOffset,
bool PrePurge = false,
bool ReIndex = false,
string? UpdateWhen = null,
DestinationOverride? Destination = null);
public record DestinationOverride(
string? Type,
List<string>? MatchColumns,
List<string>? ExcludeFromUpdate);
public record TransformerConfig(
string Type,
List<string>? Columns,