public static void SaveTapAssetConfig(this BaseLoadTask baseTask, TapSettingJson tapSetting) { baseTask.LogInformation($"Saving {Consts.TapSettingFile} file"); try { var tapSettingsPath = baseTask.FindTopFileInProjectDir(Consts.TapSettingFile); var json = JsonConvert.SerializeObject(tapSetting, Formatting.Indented); File.WriteAllText(tapSettingsPath, json); baseTask.LogDebug($"{Consts.TapSettingFile} file saved"); } catch (Exception ex) { baseTask.Log.LogErrorFromException(ex); } }
public override bool Execute() { LogInformation($"Running {_taskName}"); var baseResult = base.Execute(); LogDebug($"Project name {ProjectName}"); LogDebug($"Build configuration {BuildConfiguration}"); TapAssetDirRelative = new TaskItem(Consts.TapAssetsDir); TapShouldContinue = bool.TrueString; _tapSetting = this.GetTapSetting(); if (_tapSetting == null) { //Change to warning, and return TapShouldContinue = false Log.LogError($"{Consts.TapSettingFile} file not set, please see solution root and complete"); return(false); } if (_tapSetting.BuildConfigs == null) { LogDebug("Added BuildConfigs list"); _tapSetting.BuildConfigs = new List <BuildConfigJson>(); } var thisBuildConfig = _tapSetting.BuildConfigs.FirstOrDefault(x => x.BuildConfiguration == BuildConfiguration && x.ProjectName == ProjectName); if (thisBuildConfig == null) { LogInformation($"Project {ProjectName} Build configuration {BuildConfiguration} not found, so adding to {Consts.TapSettingFile}"); _tapSetting.BuildConfigs.Add(new BuildConfigJson(ProjectName, BuildConfiguration)); this.SaveTapAssetConfig(_tapSetting); } else if (thisBuildConfig.Disabled == true) { LogInformation($"The Apps Pajamas is disabled in {Consts.TapSettingFile} for Project {ProjectName} in configuration {BuildConfiguration}], exiting"); TapShouldContinue = bool.FalseString; return(true); } return(true); }
public static TapSettingJson GetTapSetting(this BaseLoadTask baseTask) { baseTask.Log.LogMessage($"Loading {Consts.TapSettingFile} file"); try { var tapSettingsPath = baseTask.FindTopFileInProjectDir(Consts.TapSettingFile); TapSettingJson tapSetting = null; if (String.IsNullOrEmpty(tapSettingsPath)) { baseTask.Log.LogError($"{Consts.TapSettingFile} file not found"); return(null); } else { //test security file as well baseTask.GetSecurity(); var json = File.ReadAllText(tapSettingsPath); tapSetting = JsonConvert.DeserializeObject <TapSettingJson>(json); if (String.IsNullOrEmpty(tapSetting.TapAppId)) { baseTask.Log.LogError($"{Consts.TapSettingFile} TapAppId is 0, please complete TapAppId and restart build process"); return(null); } else { baseTask.LogDebug($"{Consts.TapSettingFile} file read, TapAppId '{ tapSetting.TapAppId}"); return(tapSetting); } } } catch (Exception ex) { baseTask.Log.LogErrorFromException(ex); } return(null); }