Skip to content

Commit 520ccc7

Browse files
dspclaude
andcommitted
fix: ignoreChanges on all user-managed fields for GWS users
After creation/import we only care that the user exists and is in the right groups. All profile settings (name, recovery info, password, org unit, etc.) are left to users and admins to manage directly. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent f916271 commit 520ccc7

File tree

1 file changed

+65
-2
lines changed

1 file changed

+65
-2
lines changed

src/google.ts

Lines changed: 65 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,39 @@ MEMBERS.forEach((member) => {
8989
name: { familyName: member.lastName!, givenName: member.firstName! },
9090
orgUnitPath: mcpOrgUnit.orgUnitPath,
9191
},
92-
{ import: primaryEmail, dependsOn: [mcpOrgUnit], ignoreChanges: ['recoveryEmail', 'recoveryPhone'] }
92+
{
93+
import: primaryEmail,
94+
dependsOn: [mcpOrgUnit],
95+
ignoreChanges: [
96+
'recoveryEmail',
97+
'recoveryPhone',
98+
'password',
99+
'hashFunction',
100+
'changePasswordAtNextLogin',
101+
'orgUnitPath',
102+
'archived',
103+
'suspended',
104+
'isAdmin',
105+
'includeInGlobalAddressList',
106+
'ipAllowlist',
107+
'addresses',
108+
'aliases',
109+
'customSchemas',
110+
'emails',
111+
'externalIds',
112+
'ims',
113+
'keywords',
114+
'languages',
115+
'locations',
116+
'organizations',
117+
'phones',
118+
'posixAccounts',
119+
'relations',
120+
'sshPublicKeys',
121+
'websites',
122+
'name',
123+
],
124+
}
93125
);
94126
provisionedUsersByEmail[primaryEmail] = user;
95127
} else {
@@ -112,7 +144,38 @@ MEMBERS.forEach((member) => {
112144
changePasswordAtNextLogin: true,
113145
orgUnitPath: mcpOrgUnit.orgUnitPath,
114146
},
115-
{ dependsOn: [mcpOrgUnit] }
147+
{
148+
dependsOn: [mcpOrgUnit],
149+
ignoreChanges: [
150+
'recoveryEmail',
151+
'recoveryPhone',
152+
'password',
153+
'hashFunction',
154+
'changePasswordAtNextLogin',
155+
'orgUnitPath',
156+
'archived',
157+
'suspended',
158+
'isAdmin',
159+
'includeInGlobalAddressList',
160+
'ipAllowlist',
161+
'addresses',
162+
'aliases',
163+
'customSchemas',
164+
'emails',
165+
'externalIds',
166+
'ims',
167+
'keywords',
168+
'languages',
169+
'locations',
170+
'organizations',
171+
'phones',
172+
'posixAccounts',
173+
'relations',
174+
'sshPublicKeys',
175+
'websites',
176+
'name',
177+
],
178+
}
116179
);
117180
provisionedUsersByEmail[primaryEmail] = user;
118181

0 commit comments

Comments
 (0)