mirror of
https://github.com/Snowflake-Labs/dlsync.git
synced 2025-12-18 00:51:27 +00:00
Updated config to handle null values
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
version: 1
|
||||
configTables:
|
||||
continueOnFailure: true
|
||||
continueOnFailure: false
|
||||
scriptExclusion:
|
||||
- ${EXAMPLE_DB}.${AUDIT_SCHEMA}.AUDIT_SEQ
|
||||
dependencyOverride:
|
||||
|
||||
@@ -22,20 +22,15 @@ public class ChangeManager {
|
||||
private ScriptRepo scriptRepo;
|
||||
private DependencyGraph dependencyGraph;
|
||||
private ParameterInjector parameterInjector;
|
||||
private boolean continueOnFailure = false;
|
||||
|
||||
public ChangeManager(Config config, ScriptSource scriptSource, ScriptRepo scriptRepo, DependencyGraph dependencyGraph, ParameterInjector parameterInjector) {
|
||||
this.config= config;
|
||||
this.continueOnFailure = config.isContinueOnFailure();
|
||||
this.scriptSource = scriptSource;
|
||||
this.scriptRepo = scriptRepo;
|
||||
this.dependencyGraph = dependencyGraph;
|
||||
this.parameterInjector = parameterInjector;
|
||||
}
|
||||
|
||||
public void setContinueOnFailure(boolean continueOnFailure) {
|
||||
this.continueOnFailure = continueOnFailure;
|
||||
}
|
||||
private void validateScript(Script script) {
|
||||
if(script instanceof MigrationScript && scriptRepo.isScriptVersionDeployed(script)) {
|
||||
log.error("Migration type script changed. Script for the object {} has changed from previous deployments.", script.getId());
|
||||
@@ -67,12 +62,13 @@ public class ChangeManager {
|
||||
parameterInjector.injectParameters(script);
|
||||
validateScript(script);
|
||||
scriptRepo.createScriptObject(script, onlyHashes);
|
||||
} catch (Exception e) {
|
||||
}
|
||||
catch (Exception e) {
|
||||
failedCount++;
|
||||
failedScripts.add(script.getId());
|
||||
log.error("Failed to deploy script {}: {}", script.getId(), e.getMessage());
|
||||
|
||||
if (!continueOnFailure) {
|
||||
if (!config.isContinueOnFailure()) {
|
||||
// throw the error as normal
|
||||
throw e;
|
||||
}
|
||||
@@ -85,7 +81,8 @@ public class ChangeManager {
|
||||
log.error("Failed scripts: {}", String.join(", ", failedScripts));
|
||||
endSyncError(ChangeType.DEPLOY, errorMsg);
|
||||
throw new RuntimeException(errorMsg);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
endSyncSuccess(ChangeType.DEPLOY, (long)sequencedScript.size());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,6 +23,6 @@ public class Config {
|
||||
|
||||
|
||||
public boolean isContinueOnFailure() {
|
||||
return continueOnFailure;
|
||||
return continueOnFailure != null && continueOnFailure;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user