private void UpdateDefaultCredentials() { var path = Path.Combine(s_credentialsStoreRoot, DefaultCredentialsFileName); if (CurrentAccount?.AccountName != null) { var defaultCredentials = new DefaultCredentials { ProjectId = CurrentProjectId, AccountName = CurrentAccount?.AccountName, }; try { Debug.WriteLine($"Updating default account: {path}"); AtomicFileWrite(path, JsonConvert.SerializeObject(defaultCredentials)); } catch (IOException ex) { Debug.WriteLine($"Failed to update default credentials: {ex.Message}"); } } else { Debug.WriteLine($"Deleting default account: {path}"); try { File.Delete(path); } catch (IOException ex) { Debug.WriteLine($"Failed to delete the default credentials: {ex.Message}"); } } }
private DefaultCredentials LoadDefaultCredentials() { var path = Path.Combine(s_credentialsStoreRoot, DefaultCredentialsFileName); if (!File.Exists(path)) { return(null); } DefaultCredentials result = null; try { var contents = AtomicFileRead(path); result = JsonConvert.DeserializeObject <DefaultCredentials>(contents); } catch (JsonException ex) { Debug.WriteLine($"Failed to parse default credentials: {ex.Message}"); } catch (IOException ex) { Debug.WriteLine($"Failed to read default credentials: {ex.Message}"); } return(result); }
public CredentialsStore(Lazy <IFileSystem> fileSystem) { _fileSystem = fileSystem; _cachedCredentials = LoadAccounts(); DefaultCredentials defaultCredentials = LoadDefaultCredentials(); if (defaultCredentials != null) { ResetCredentials(defaultCredentials.AccountName, defaultCredentials.ProjectId); } }