public void FromOptions(JenkinsOptions options)
        {
            switch (options.FlubuToolType)
            {
            case FlubuToolType.GlobalTool:
                FlubuCommand = "flubu";
                break;

            case FlubuToolType.LocalTool:
            case FlubuToolType.CliTool:
                FlubuCommand = "dotnet flubu";
                break;
            }

            Options = options.Options;

            if (options.Environment != null && options.Environment.Count != 0)
            {
                Environment = options.Environment;
            }

            if (!options.CustomStagesBeforeTargets.IsNullOrEmpty())
            {
                Stages.AddRange(options.CustomStagesBeforeTargets);
            }
            else
            {
                Stages = new List <Stage>();
            }

            foreach (var targetName in options.TargetNames)
            {
                Stage stage = new Stage
                {
                    Name = targetName,
                };

                if (!string.IsNullOrEmpty(options.WorkingDirectory))
                {
                    stage.WorkingDirectory = options.WorkingDirectory;
                }

                var command = RuntimeInformation.IsOSPlatform(OSPlatform.Windows) ? "bat" : "sh";
                stage.Steps.Add($"{command} '{FlubuCommand} {targetName} --nd'");

                Stages.Add(stage);
            }

            if (!options.CustomStagesAfterTargets.IsNullOrEmpty())
            {
                Stages.AddRange(options.CustomStagesAfterTargets);
            }

            if (!options.JenkinsPosts.IsNullOrEmpty())
            {
                Post = options.JenkinsPosts;
            }
        }
 public StageListViewModel(IMediator mediator, IStageFacade StageFacade)
 {
     _mediator     = mediator;
     _stageFacade  = StageFacade;
     StageNew      = new RelayCommand(StageNewExecute);
     StageSelected = new RelayCommand <StageListModel>(StageSelectedExecute);
     mediator.Register <UpdateMessage <StageDetailModel> >(StageUpdateOrDeleteExecute);
     mediator.Register <DeleteMessage <StageDetailModel> >(StageUpdateOrDeleteExecute);
     Stages.AddRange(_stageFacade.GetAll());
 }
        /// <summary>
        /// Reloads <see cref="Stages"/> collection accordingly to selected <see cref="NoteStageType"/>
        /// </summary>
        private void ReloadStages()
        {
            Stages?.ForEach(x => x.IsSelected = false);

            Stages?.Clear();

            Stages?.AddRange(NoteService
                             .CurrentNotesAppSettings
                             .StagesList
                             .Where(x => x.StageType == NoteStageType));
        }
Beispiel #4
0
        public void FromOptions(JenkinsOptions options)
        {
            Options = options.Options;

            if (options.Environment != null && options.Environment.Count != 0)
            {
                Environment = options.Environment;
            }

            if (!options.CustomStagesBeforeTargets.IsNullOrEmpty())
            {
                Stages.AddRange(options.CustomStagesBeforeTargets);
            }
            else
            {
                Stages = new List <Stage>();
            }

            foreach (var targetName in options.TargetNames)
            {
                Stage stage = new Stage
                {
                    Name = targetName,
                };

                if (!string.IsNullOrEmpty(options.WorkingDirectory))
                {
                    stage.WorkingDirectory = options.WorkingDirectory;
                }

                stage.Steps.Add($"flubu {targetName} --nd");

                Stages.Add(stage);
            }

            if (!options.CustomStagesAfterTargets.IsNullOrEmpty())
            {
                Stages.AddRange(options.CustomStagesAfterTargets);
            }

            if (!options.JenkinsPosts.IsNullOrEmpty())
            {
                Post = options.JenkinsPosts;
            }
        }
Beispiel #5
0
        public EventDetailViewModel(
            IEventFacade eventFacade,
            IMediator mediator,
            IBandFacade bandFacade,
            IStageFacade stageFacade,
            IMessageDialogService messageDialogService)
        {
            _eventFacade          = eventFacade;
            _mediator             = mediator;
            _bandFacade           = bandFacade;
            _stageFacade          = stageFacade;
            _messageDialogService = messageDialogService;

            UpdateCommand = new RelayCommand(UpdateEventExecute, CanUpdateEvent);
            DeleteCommand = new RelayCommand(DeleteEventExecute, CanDeleteBand);

            Bands.AddRange(_bandFacade.GetAll());
            Stages.AddRange(_stageFacade.GetAll());
        }