Beispiel #1
0
        private static string GetEnvironmentValueFromSetting(string environment, IProjectSetting setting)
        {
            var environmentEnum = Environment.Dev;

            if (Enum.TryParse(environment, true, out environmentEnum))
            {
                switch (environmentEnum)
                {
                case Environment.Dev:
                    return(setting.DevValue);

                case Environment.Qa:
                    return(setting.QaValue);

                case Environment.Staging:
                    return(setting.StagingValue);

                case Environment.Live:
                    return(setting.LiveValue);

                default:
                    throw new ArgumentException(string.Format("Unknown enum value {0}", environment.ToString()));
                }
            }
            else
            {
                var mapping      = setting.OtherEnvironments.Single(e => e.Name == environment);
                var value        = mapping.Value;
                var defaultValue = string.Empty;

                if (Enum.TryParse(mapping.Target, true, out environmentEnum))
                {
                    switch (environmentEnum)
                    {
                    case Environment.Dev:
                        defaultValue = setting.DevValue;
                        break;

                    case Environment.Qa:
                        defaultValue = setting.QaValue;
                        break;

                    case Environment.Staging:
                        defaultValue = setting.StagingValue;
                        break;

                    case Environment.Live:
                        defaultValue = setting.LiveValue;
                        break;

                    default:
                        throw new ArgumentException(string.Format("Unknown enum value {0}", environment.ToString()));
                    }
                }
                return(value ?? defaultValue);
            }
            throw new ArgumentException(string.Format("Unknown enum value {0}", environment.ToString()));
        }
Beispiel #2
0
 private static T ApplyDefaultValueWhereNeeded <T>(IProjectSetting setting) where T : IProjectSetting
 {
     //we only check for null here as that means the element didnt have the value
     if (setting.DevValue == null)
     {
         setting.DevValue = setting.DefaultValue;
     }
     if (setting.QaValue == null)
     {
         setting.QaValue = setting.DefaultValue;
     }
     if (setting.StagingValue == null)
     {
         setting.StagingValue = setting.DefaultValue;
     }
     if (setting.LiveValue == null)
     {
         setting.LiveValue = setting.DefaultValue;
     }
     return((T)setting);
 }
Beispiel #3
0
        public override void SetStageConfigBasedOnProjectSetting(string stageKind, string stageName, IProjectSetting projectSetting)
        {
            base.SetStageConfigBasedOnProjectSetting(stageKind, stageName, projectSetting);
            if (projectSetting.TryGetConfig <IConfigWithExecutionDate>(stageKind, stageName, out var config) == false)
            {
                return;
            }

            T1Date = config.T1Date;
            T2Date = config.T2Date;
        }