Exemple #1
0
        public override void Execute()
        {
            base.Execute();

            try
            {
                ReleaseRunner.IdentifyAndRemoveOldExtractionResults(Activator.RepositoryLocator, new PopupChecksUI("Checking Release Logs", true), _extractionConfiguration);
            }
            catch (Exception e)
            {
                ShowException("Error checking for stale extraction logs", e);
            }

            try
            {
                WordDataReleaseFileGenerator generator = new WordDataReleaseFileGenerator(_extractionConfiguration, Activator.RepositoryLocator.DataExportRepository);

                //null means leave word file on screen and dont save
                generator.GenerateWordFile(null);
            }
            catch (Exception e)
            {
                ExceptionViewer.Show(e);
            }
        }
Exemple #2
0
        public override void Execute()
        {
            base.Execute();

            try
            {
                ReleaseRunner.IdentifyAndRemoveOldExtractionResults(BasicActivator.RepositoryLocator, new AcceptAllCheckNotifier(), _extractionConfiguration);
            }
            catch (Exception e)
            {
                ShowException("Error checking for stale extraction logs", e);
            }

            try
            {
                WordDataReleaseFileGenerator generator = new WordDataReleaseFileGenerator(_extractionConfiguration, BasicActivator.RepositoryLocator.DataExportRepository);

                //null means leave word file on screen and dont save
                generator.GenerateWordFile(null);
            }
            catch (Exception e)
            {
                BasicActivator.ShowException("Failed to generate release document", e);
            }
        }
Exemple #3
0
        private void ReleaseAllConfigurations(ICheckNotifier notifier, params ExtractionConfiguration[] extractionConfigurations)
        {
            var releasePipeline = _repos.CatalogueRepository.GetAllObjects <Pipeline>().FirstOrDefault(p => p?.Destination?.Class == typeof(BasicDataReleaseDestination).FullName);

            try
            {
                //cleanup any old releases
                var project = extractionConfigurations.Select(ec => ec.Project).Distinct().Single();

                var folderProvider = new ReleaseFolderProvider();
                var dir            = folderProvider.GetFromProjectFolder(project);
                if (dir.Exists)
                {
                    dir.Delete(true);
                }
            }
            catch (Exception ex)
            {
                notifier.OnCheckPerformed(new CheckEventArgs("Could not detect/delete release folder for extractions", CheckResult.Warning, ex));
                return;
            }


            if (releasePipeline != null)
            {
                try
                {
                    var optsRelease = new ReleaseOptions()
                    {
                        Configurations = extractionConfigurations.Select(ec => ec.ID).Distinct().ToArray(),
                        Pipeline       = releasePipeline.ID
                    };

                    var runnerRelease = new ReleaseRunner(optsRelease);
                    runnerRelease.Run(_repos, new ThrowImmediatelyDataLoadEventListener(), notifier, new GracefulCancellationToken());
                }
                catch (Exception ex)
                {
                    notifier.OnCheckPerformed(new CheckEventArgs("Could not Release ExtractionConfiguration (nevermind)", CheckResult.Warning, ex));
                }
            }
        }