public SqlServerDeployer(IScriptDeployerConfig config, IProject project, ISqlConnectionManager connectionManager, ILoggerSync logger) : base(config, project) { if (project == null) throw new ArgumentNullException("project"); if (connectionManager == null) throw new ArgumentNullException("connectionManager"); _connectionManager = connectionManager; _logger = logger ?? new NullLogger(); _patternLookup = new CatalogPatternLookup(); }
public Runner(IRunnerSettings settings, ILogger logger = null) { if (settings == null) throw new ArgumentNullException("settings"); _settings = settings; _logger = logger ?? new NullLogger(); var configPath = Path.Combine(Directory.GetCurrentDirectory(), "config.json"); using (var reader = new FileInfo(configPath).OpenText()) _config = JsonConvert.DeserializeObject<ScriptDeployerConfig>(reader.ReadToEnd()); }
private void DeployScripts(IScriptDeployerConfig config, IProject project, ISqlConnectionManager connectionManager) { using (var deployer = new SqlServerDeployer(config, project, connectionManager, _logger)) { if (deployer.CanProceed() == false) { throw new RunnerException("Cannot proceed! A more recent version has already been deployed.", RunnerResolution.StaleDeployment); } if (deployer.DeployScripts() == Returned.Failure) { throw new RunnerException("Deploy scripts failed."); } } }
public SqlServerDeployer(IScriptDeployerConfig config, IProject project, ISqlConnectionManager connectionManager, ILoggerSync logger) : base(config, project) { if (project == null) { throw new ArgumentNullException("project"); } if (connectionManager == null) { throw new ArgumentNullException("connectionManager"); } _connectionManager = connectionManager; _logger = logger ?? new NullLogger(); _patternLookup = new CatalogPatternLookup(); }
public ScriptFileDeployer(IScriptDeployerConfig config, IProject project, ISqlConnectionManager connectionManager, ILogger logger) : base(config, project) { if (project == null) throw new ArgumentNullException("project"); _connectionManager = connectionManager; _logger = logger ?? new NullLogger(); _patternLookup = new CatalogPatternLookup(); var fileName = string.Format("{0}_{1}_v{2}.sql", connectionManager.Server, project.Configuration.Project, project.Configuration.Version.Replace('.', '-')); var path = Path.Combine("G:\\", fileName); _writer = new StreamWriter(File.Create(path, 16384, FileOptions.Asynchronous)); _writer.WriteLine("-- Generated {0} on {1} by {2}", DateTime.Now, Environment.MachineName, Environment.UserName); }
public ScriptFileDeployer(IScriptDeployerConfig config, IProject project, ISqlConnectionManager connectionManager, ILogger logger) : base(config, project) { if (project == null) { throw new ArgumentNullException("project"); } _connectionManager = connectionManager; _logger = logger ?? new NullLogger(); _patternLookup = new CatalogPatternLookup(); var fileName = string.Format("{0}_{1}_v{2}.sql", connectionManager.Server, project.Configuration.Project, project.Configuration.Version.Replace('.', '-')); var path = Path.Combine("G:\\", fileName); _writer = new StreamWriter(File.Create(path, 16384, FileOptions.Asynchronous)); _writer.WriteLine("-- Generated {0} on {1} by {2}", DateTime.Now, Environment.MachineName, Environment.UserName); }
private void DeployScripts(IScriptDeployerConfig config, IProject project, ISqlConnectionManager connectionManager) { using(var deployer = new SqlServerDeployer(config, project, connectionManager, _logger)) { if (deployer.CanProceed() == false) throw new RunnerException("Cannot proceed! A more recent version has already been deployed.", RunnerResolution.StaleDeployment); if (deployer.DeployScripts() == Returned.Failure) throw new RunnerException("Deploy scripts failed."); } }
protected ScriptDeployerBase(IScriptDeployerConfig config, IProject project) { DeployerConfig = config; Project = project; }