private static void ConfigGradle(UrlTemplate urlTemplate) { // Configure gradle if (Msdos.IsInstalled("gradle")) { var gradlePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile)); if (urlTemplate.ClearData) { logger.Info("Clearing proxy for gradle"); StringBuilder sb = new StringBuilder(); File.WriteAllText(Path.Combine(gradlePath, ".gradle.properties"), sb.ToString()); } else { logger.Info("Setting proxy for gradle"); StringBuilder sb = new StringBuilder(); sb.AppendLine($"systemProp.http.proxyHost=={urlTemplate.GetHost()}"); sb.AppendLine($"systemProp.http.proxyPort={urlTemplate.GetPort()}"); sb.AppendLine($"systemProp.http.nonProxyHosts={urlTemplate.GetProxyExceptions()}"); sb.AppendLine($"systemProp.https.proxyHost=={urlTemplate.GetHost()}"); sb.AppendLine($"systemProp.https.proxyPort={urlTemplate.GetPort()}"); sb.AppendLine($"systemProp.https.nonProxyHosts={urlTemplate.GetProxyExceptions()}"); File.WriteAllText(Path.Combine(gradlePath, ".gradle.properties"), sb.ToString()); } } }
private static string RenderConfigFileGradle(UrlTemplate urlTemplate) { StringBuilder sb = new StringBuilder(); sb.AppendLine($"systemProp.http.proxyHost=={urlTemplate.GetHost()}"); sb.AppendLine($"systemProp.http.proxyPort={urlTemplate.GetPort()}"); sb.AppendLine($"systemProp.http.nonProxyHosts={urlTemplate.GetProxyExceptions()}"); sb.AppendLine($"systemProp.https.proxyHost=={urlTemplate.GetHost()}"); sb.AppendLine($"systemProp.https.proxyPort={urlTemplate.GetPort()}"); sb.AppendLine($"systemProp.https.nonProxyHosts={urlTemplate.GetProxyExceptions()}"); return(sb.ToString()); }
private static void ConfigAndroidSdk(UrlTemplate urlTemplate) { // Configure android sdk var androidSdkPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile), ".android"); if (Directory.Exists(androidSdkPath)) { if (urlTemplate.ClearData) { logger.Info("Clearing proxy for Android SDK"); if (File.Exists(Path.Combine(androidSdkPath, "androidtool.cfg"))) { File.Delete(Path.Combine(androidSdkPath, "androidtool.cfg")); } } else { logger.Info("Setting proxy for Android SDK"); StringBuilder sb = new StringBuilder(); sb.AppendLine($"http.proxyHost={urlTemplate.GetHost()}"); sb.AppendLine($"http.proxyPort={urlTemplate.GetPort()}"); File.WriteAllText(Path.Combine(androidSdkPath, "androidtool.cfg"), sb.ToString()); } } }
private static void ConfigWindowsCredential(UrlTemplate urlTemplate) { if (urlTemplate.ClearData) { if (!string.IsNullOrEmpty(urlTemplate.GetHost())) { logger.Info("Clearing proxy windows credentials"); using (var credentials = new Credential()) { logger.Info("Clearing Windows and Generic credentials"); credentials.Target = urlTemplate.GetProxy(true); credentials.Delete(); } } } else { if (urlTemplate.MustBeAuthenticated) { // Configure Windows and Generic credentials using (var credentials = new Credential()) { logger.Info("Setting Windows and Generic credentials"); credentials.Password = urlTemplate.GetProxyPassword(); credentials.Target = urlTemplate.GetProxy(true); credentials.Username = urlTemplate.GetProxyUsername(true); credentials.PersistanceType = PersistanceType.LocalComputer; credentials.Type = CredentialType.Generic; credentials.Save(); credentials.Type = CredentialType.DomainPassword; credentials.Save(); } } } }