auth0-deploy-cli 8.23.0 → 8.23.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [8.23.2] - 2025-12-18
11
+
12
+ ### Fixed
13
+
14
+ - Fix `customDomains` handler 409 for listing domains. [#1244]
15
+
16
+ ## [8.23.1] - 2025-12-18
17
+
18
+ ### Fixed
19
+
20
+ - Fix resolve race conditions in processChanges for handlers. [#1240]
21
+ - Fix client grants pagination to use checkpoint. [#1239]
22
+
10
23
  ## [8.23.0] - 2025-12-16
11
24
 
12
25
  ### Added
@@ -1568,7 +1581,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1568
1581
  [#1229]: https://github.com/auth0/auth0-deploy-cli/issues/1229
1569
1582
  [#1231]: https://github.com/auth0/auth0-deploy-cli/issues/1231
1570
1583
  [#1232]: https://github.com/auth0/auth0-deploy-cli/issues/1232
1571
- [Unreleased]: https://github.com/auth0/auth0-deploy-cli/compare/v8.23.0...HEAD
1584
+ [#1239]: https://github.com/auth0/auth0-deploy-cli/issues/1239
1585
+ [#1240]: https://github.com/auth0/auth0-deploy-cli/issues/1240
1586
+ [#1244]: https://github.com/auth0/auth0-deploy-cli/issues/1244
1587
+ [Unreleased]: https://github.com/auth0/auth0-deploy-cli/compare/v8.23.2...HEAD
1588
+ [8.23.2]: https://github.com/auth0/auth0-deploy-cli/compare/v8.23.1...v8.23.2
1589
+ [8.23.1]: https://github.com/auth0/auth0-deploy-cli/compare/v8.23.0...v8.23.1
1572
1590
  [8.23.0]: https://github.com/auth0/auth0-deploy-cli/compare/v8.22.0...v8.23.0
1573
1591
  [8.22.0]: https://github.com/auth0/auth0-deploy-cli/compare/v8.21.0...v8.22.0
1574
1592
  [8.21.0]: https://github.com/auth0/auth0-deploy-cli/compare/v8.20.4-beta.0...v8.21.0
@@ -95,7 +95,7 @@ class ClientGrantsHandler extends default_1.default {
95
95
  return this.existing;
96
96
  }
97
97
  const clientGrants = await (0, client_1.paginate)(this.client.clientGrants.list, {
98
- paginate: true,
98
+ checkpoint: true,
99
99
  });
100
100
  this.existing = clientGrants;
101
101
  // Always filter out the client we are using to access Auth0 Management API
@@ -22,7 +22,6 @@ export declare const schema: {
22
22
  };
23
23
  status: {
24
24
  type: string;
25
- enum: string[];
26
25
  };
27
26
  type: {
28
27
  type: string;
@@ -45,7 +45,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
45
45
  exports.schema = void 0;
46
46
  const default_1 = __importStar(require("./default"));
47
47
  const logger_1 = __importDefault(require("../../../logger"));
48
- const client_1 = require("../client");
49
48
  exports.schema = {
50
49
  type: 'array',
51
50
  items: {
@@ -59,7 +58,7 @@ exports.schema = {
59
58
  },
60
59
  domain: { type: 'string' },
61
60
  primary: { type: 'boolean' },
62
- status: { type: 'string', enum: ['pending_verification', 'ready', 'disabled', 'pending'] },
61
+ status: { type: 'string' },
63
62
  type: { type: 'string', enum: ['auth0_managed_certs', 'self_managed_certs'] },
64
63
  verification: { type: 'object' },
65
64
  tls_policy: {
@@ -121,9 +120,7 @@ class CustomDomainsHadnler extends default_1.default {
121
120
  if (this.existing) {
122
121
  return this.existing;
123
122
  }
124
- const customDomains = await (0, client_1.paginate)(this.client.customDomains.list, {
125
- checkpoint: true,
126
- });
123
+ const customDomains = await this.client.customDomains.list();
127
124
  this.existing = customDomains;
128
125
  return customDomains;
129
126
  }
@@ -100,23 +100,15 @@ class FlowVaultHandler extends default_1.default {
100
100
  return;
101
101
  const { del, update, create } = await this.calcChanges(assets);
102
102
  logger_1.default.debug(`Start processChanges for flow vault connections [delete:${del.length}] [update:${update.length}], [create:${create.length}]`);
103
- const changes = [{ del: del }, { create: create }, { update: update }];
104
- await Promise.all(changes.map(async (change) => {
105
- switch (true) {
106
- case change.del && change.del.length > 0:
107
- await this.deleteVaultConnections(change.del || []);
108
- break;
109
- case change.create && change.create.length > 0:
110
- await this.createVaultConnections(change.create);
111
- break;
112
- case change.update && change.update.length > 0:
113
- if (change.update)
114
- await this.updateVaultConnections(change.update);
115
- break;
116
- default:
117
- break;
118
- }
119
- }));
103
+ if (del.length > 0) {
104
+ await this.deleteVaultConnections(del);
105
+ }
106
+ if (create.length > 0) {
107
+ await this.createVaultConnections(create);
108
+ }
109
+ if (update.length > 0) {
110
+ await this.updateVaultConnections(update);
111
+ }
120
112
  }
121
113
  async createVaultConnection(conn) {
122
114
  if ('ready' in conn) {
@@ -403,27 +403,15 @@ class OrganizationsHandler extends default_1.default {
403
403
  allowDelete: !!this.config('AUTH0_ALLOW_DELETE'),
404
404
  });
405
405
  logger_1.default.debug(`Start processChanges for organizations [delete:${changes.del.length}] [update:${changes.update.length}], [create:${changes.create.length}]`);
406
- const myChanges = [
407
- { del: changes.del },
408
- { create: changes.create },
409
- { update: changes.update },
410
- ];
411
- await Promise.all(myChanges.map(async (change) => {
412
- switch (true) {
413
- case change.del && change.del.length > 0:
414
- await this.deleteOrganizations(change.del || []);
415
- break;
416
- case change.create && change.create.length > 0:
417
- await this.createOrganizations(changes.create);
418
- break;
419
- case change.update && change.update.length > 0:
420
- if (change.update)
421
- await this.updateOrganizations(change.update, existing);
422
- break;
423
- default:
424
- break;
425
- }
426
- }));
406
+ if (changes.del.length > 0) {
407
+ await this.deleteOrganizations(changes.del);
408
+ }
409
+ if (changes.create.length > 0) {
410
+ await this.createOrganizations(changes.create);
411
+ }
412
+ if (changes.update.length > 0) {
413
+ await this.updateOrganizations(changes.update, existing);
414
+ }
427
415
  }
428
416
  async getOrganizationEnabledConnections(organizationId) {
429
417
  const allOrganizationConnections = [];
@@ -118,23 +118,15 @@ class PhoneTemplatesHandler extends default_1.default {
118
118
  return;
119
119
  const { del, update, create } = await this.calcChanges(assets);
120
120
  logger_1.default.debug(`Start processChanges for phone templates [delete:${del.length}] [update:${update.length}], [create:${create.length}]`);
121
- const changes = [{ del: del }, { create: create }, { update: update }];
122
- await Promise.all(changes.map(async (change) => {
123
- switch (true) {
124
- case change.del && change.del.length > 0:
125
- await this.deletePhoneTemplates(change.del || []);
126
- break;
127
- case change.create && change.create.length > 0:
128
- await this.createPhoneTemplates(change.create);
129
- break;
130
- case change.update && change.update.length > 0:
131
- if (change.update)
132
- await this.updatePhoneTemplates(change.update);
133
- break;
134
- default:
135
- break;
136
- }
137
- }));
121
+ if (del.length > 0) {
122
+ await this.deletePhoneTemplates(del);
123
+ }
124
+ if (create.length > 0) {
125
+ await this.createPhoneTemplates(create);
126
+ }
127
+ if (update.length > 0) {
128
+ await this.updatePhoneTemplates(update);
129
+ }
138
130
  }
139
131
  async createPhoneTemplate(template) {
140
132
  const created = await this.client.branding.phone.templates.create(template);
@@ -230,28 +230,15 @@ class RolesHandler extends default_1.default {
230
230
  allowDelete: !!this.config('AUTH0_ALLOW_DELETE'),
231
231
  });
232
232
  logger_1.default.debug(`Start processChanges for roles [delete:${changes.del.length}] [update:${changes.update.length}], [create:${changes.create.length}]`);
233
- const myChanges = [
234
- { del: changes.del },
235
- { create: changes.create },
236
- { update: changes.update },
237
- ];
238
- await Promise.all(myChanges.map(async (change) => {
239
- switch (true) {
240
- case change.del && change.del.length > 0:
241
- if (change.del)
242
- await this.deleteRoles(change.del);
243
- break;
244
- case change.create && change.create.length > 0:
245
- await this.createRoles(changes.create);
246
- break;
247
- case change.update && change.update.length > 0:
248
- if (change.update)
249
- await this.updateRoles(change.update, existing);
250
- break;
251
- default:
252
- break;
253
- }
254
- }));
233
+ if (changes.del.length > 0) {
234
+ await this.deleteRoles(changes.del);
235
+ }
236
+ if (changes.create.length > 0) {
237
+ await this.createRoles(changes.create);
238
+ }
239
+ if (changes.update.length > 0) {
240
+ await this.updateRoles(changes.update, existing);
241
+ }
255
242
  }
256
243
  }
257
244
  exports.default = RolesHandler;
@@ -176,23 +176,15 @@ class TokenExchangeProfilesHandler extends default_1.default {
176
176
  const { del, update, create, conflicts } = await this.calcChanges(modifiedAssets);
177
177
  logger_1.default.debug(`Start processChanges for tokenExchangeProfiles [delete:${del.length}] [update:${update.length}], [create:${create.length}], [conflicts:${conflicts.length}]`);
178
178
  // Process changes in order: delete, create, update
179
- const changes = [{ del }, { create }, { update }];
180
- await Promise.all(changes.map(async (change) => {
181
- switch (true) {
182
- case change.del && change.del.length > 0:
183
- await this.deleteTokenExchangeProfiles(change.del || []);
184
- break;
185
- case change.create && change.create.length > 0:
186
- await this.createTokenExchangeProfiles(change.create);
187
- break;
188
- case change.update && change.update.length > 0:
189
- if (change.update)
190
- await this.updateTokenExchangeProfiles(change.update);
191
- break;
192
- default:
193
- break;
194
- }
195
- }));
179
+ if (del.length > 0) {
180
+ await this.deleteTokenExchangeProfiles(del);
181
+ }
182
+ if (create.length > 0) {
183
+ await this.createTokenExchangeProfiles(create);
184
+ }
185
+ if (update.length > 0) {
186
+ await this.updateTokenExchangeProfiles(update);
187
+ }
196
188
  }
197
189
  async createTokenExchangeProfile(profile) {
198
190
  const { id, created_at, updated_at, ...createParams } = profile;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "auth0-deploy-cli",
3
- "version": "8.23.0",
3
+ "version": "8.23.2",
4
4
  "description": "A command line tool for deploying updates to your Auth0 tenant",
5
5
  "main": "lib/index.js",
6
6
  "bin": {