|
1 | 1 | namespace Gttsb.Core |
2 | 2 | { |
3 | | - internal sealed class GroupSyncer : IGroupSyncer |
| 3 | + public sealed class GroupSyncer : IGroupSyncer |
4 | 4 | { |
5 | 5 | private readonly IActiveDirectoryFacade _activeDirectoryFacade; |
6 | 6 | private readonly IInstalledGitHubFacade _gitHubFacade; |
7 | | - private readonly IEmailToCloudIdConverter _emailToGitHubIdConverter; |
| 7 | + private readonly AppOptions _appOptions; |
8 | 8 |
|
9 | | - public GroupSyncer(IActiveDirectoryFacade activeDirectoryFacade, IInstalledGitHubFacade gitHubFacade, IEmailToCloudIdConverter emailToCloudIdConverter) |
| 9 | + public GroupSyncer(IActiveDirectoryFacade activeDirectoryFacade, IInstalledGitHubFacade gitHubFacade, AppOptions appOptions) |
10 | 10 | { |
11 | 11 | _activeDirectoryFacade = activeDirectoryFacade; |
12 | 12 | _gitHubFacade = gitHubFacade; |
13 | | - _emailToGitHubIdConverter = emailToCloudIdConverter; |
| 13 | + _appOptions = appOptions; |
14 | 14 | } |
15 | 15 |
|
16 | 16 | public Task<GroupSyncResult> SyncronizeGroupsAsync(string gitHubOrg, IEnumerable<TeamDefinition> teams, bool createDeployment) => SyncronizeGroupsAsync(gitHubOrg, teams, true, createDeployment); |
@@ -140,14 +140,24 @@ private async Task<GroupSyncResult> SyncronizeGroupsAsync(string gitHubOrg, IEnu |
140 | 140 | m.Id, |
141 | 141 | m.DisplayName, |
142 | 142 | m.Email, |
143 | | - GitHubId = _emailToGitHubIdConverter.ToId(m.Email) |
| 143 | + GitHubId = m.PotentialGitHubId + _appOptions.GitHubIdAppend |
144 | 144 | }); |
145 | 145 |
|
146 | 146 | // Check if user is valid |
147 | 147 | var validUsersForTeam = new List<ValidGitHubId>(); |
148 | 148 | var usersWithSyncIssues = new List<GitHubUser>(); |
149 | 149 | foreach (var user in groupMembersWithGitHubIds) |
150 | 150 | { |
| 151 | + if(string.IsNullOrWhiteSpace(user.GitHubId)) |
| 152 | + { |
| 153 | + usersWithSyncIssues.Add(new GitHubUser |
| 154 | + ( |
| 155 | + Email: user.Email, |
| 156 | + GitHubId: new ValidGitHubId(user.GitHubId) |
| 157 | + )); |
| 158 | + continue; |
| 159 | + } |
| 160 | + |
151 | 161 | var validUser = await _gitHubFacade.DoesUserExistAsync(user.GitHubId); |
152 | 162 |
|
153 | 163 | if (validUser == null) |
|
0 commit comments