public void Setup(string data) { Migrate.Up(_connection.ConnectionString); _ndbUnitTest = new PostgresqlDbUnitTest(_connection.ConnectionString); _ndbUnitTest.ReadXmlSchema("Files/Schema.xsd"); if (!string.IsNullOrEmpty(data)) { _ndbUnitTest.ReadXml(data); } _ndbUnitTest.PerformDbOperation(DbOperationFlag.CleanInsertIdentity); }
/// <summary> /// Initializes the database and stuff. /// </summary> public static void Plumbing() { var clientId = SettingsManager.ClientSettings.AppConfiguration.ClientId; var baseUrl = String.Format("http://download{0}.inbox2.com/", String.IsNullOrEmpty(CommandLine.Current.Environment) ? String.Empty : "." + CommandLine.Current.Environment); Migrate.Up(typeof(ChannelConfig)); Migrate.Up(typeof(Conversation)); Migrate.Up(typeof(Message)); Migrate.Up(typeof(Document)); Migrate.Up(typeof(DocumentVersion)); Migrate.Up(typeof(Person)); Migrate.Up(typeof(Profile)); Migrate.Up(typeof(UserStatus)); Migrate.Up(typeof(UserStatusAttachment)); Migrate.Up(typeof(QueuedCommand)); Migrate.Up(typeof(FeedItem)); var appVersion = Assembly.GetExecutingAssembly().GetName().Version; var savedVersion = SettingsManager.ClientSettings.Version; Logger.Warn("Saved version {0}", LogSource.Startup, savedVersion); if (_isFirstRun || Environment.CommandLine.Contains("/firstrun")) { HttpServiceRequest.Post(baseUrl + "version/install", String.Format("clientId={0}&version={1}", clientId, appVersion)); } if (_isFirstRun == false && appVersion > savedVersion) { Logger.Debug("Upgrade detected, performing nescessary upgrade actions", LogSource.Startup); // Get all upgrades UpgradeActionBase.Upgrades.AddRange(typeof(Startup) .Assembly.GetTypes() .Where(t => t.IsSubclassOf(typeof(UpgradeActionBase))) .Select(t => (UpgradeActionBase)Activator.CreateInstance(t)) .Where(i => i.TargetVersion > savedVersion) .OrderBy(i => i.TargetVersion)); UpgradeActionBase.Upgrades.ForEach(i => i.Upgrade()); HttpServiceRequest.Post(baseUrl + "version/upgrade", String.Format("clientId={0}&from={1}&to={2}", clientId, savedVersion, appVersion)); } // Save current version SettingsManager.ClientSettings.Version = appVersion; }
public void Run() { _logger.LogInformation($"Running {typeof(App).FullName}"); // Setup dapper SimpleCRUD.SetDialect(SimpleCRUD.Dialect.PostgreSQL); // Setup database Migrate.Up(_dbConfig.ConnectionString); // Setup commands Setup <CreateCategoryCommand>(); Setup <CreatePodcastCommand>(); Setup <DeleteCategoryCommand>(); Setup <DeletePodcastCommand>(); Setup <PopulateCommand>(); }