@transcend-io/cli 4.131.0 → 4.132.1
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/README.md +2 -0
- package/build/codecs.d.ts +207 -0
- package/build/codecs.d.ts.map +1 -1
- package/build/codecs.js +29 -1
- package/build/codecs.js.map +1 -1
- package/build/constants.d.ts.map +1 -1
- package/build/constants.js +2 -0
- package/build/constants.js.map +1 -1
- package/build/enums.d.ts +2 -1
- package/build/enums.d.ts.map +1 -1
- package/build/enums.js +1 -0
- package/build/enums.js.map +1 -1
- package/build/graphql/fetchAllTeams.d.ts +27 -0
- package/build/graphql/fetchAllTeams.d.ts.map +1 -1
- package/build/graphql/fetchAllTeams.js.map +1 -1
- package/build/graphql/gqls/team.d.ts +2 -0
- package/build/graphql/gqls/team.d.ts.map +1 -1
- package/build/graphql/gqls/team.js +35 -1
- package/build/graphql/gqls/team.js.map +1 -1
- package/build/graphql/pullTranscendConfiguration.d.ts.map +1 -1
- package/build/graphql/pullTranscendConfiguration.js +18 -1
- package/build/graphql/pullTranscendConfiguration.js.map +1 -1
- package/build/graphql/syncConfigurationToTranscend.d.ts.map +1 -1
- package/build/graphql/syncConfigurationToTranscend.js +6 -1
- package/build/graphql/syncConfigurationToTranscend.js.map +1 -1
- package/build/graphql/syncTeams.d.ts +27 -0
- package/build/graphql/syncTeams.d.ts.map +1 -0
- package/build/graphql/syncTeams.js +104 -0
- package/build/graphql/syncTeams.js.map +1 -0
- package/build/tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.syncTeams = exports.updateTeam = exports.createTeam = void 0;
|
|
7
|
+
const bluebird_1 = require("bluebird");
|
|
8
|
+
const gqls_1 = require("./gqls");
|
|
9
|
+
const logger_1 = require("../logger");
|
|
10
|
+
const keyBy_1 = __importDefault(require("lodash/keyBy"));
|
|
11
|
+
const makeGraphQLRequest_1 = require("./makeGraphQLRequest");
|
|
12
|
+
const colors_1 = __importDefault(require("colors"));
|
|
13
|
+
const fetchAllTeams_1 = require("./fetchAllTeams");
|
|
14
|
+
/**
|
|
15
|
+
* Input to create a new team
|
|
16
|
+
*
|
|
17
|
+
* @param client - GraphQL client
|
|
18
|
+
* @param team - Input
|
|
19
|
+
*/
|
|
20
|
+
async function createTeam(client, team) {
|
|
21
|
+
const input = {
|
|
22
|
+
name: team.name,
|
|
23
|
+
description: team.description,
|
|
24
|
+
ssoTitle: team['sso-title'],
|
|
25
|
+
ssoDepartment: team['sso-department'],
|
|
26
|
+
ssoGroup: team['sso-group'],
|
|
27
|
+
scopes: team.scopes,
|
|
28
|
+
userEmails: team.users,
|
|
29
|
+
};
|
|
30
|
+
const { createTeam } = await (0, makeGraphQLRequest_1.makeGraphQLRequest)(client, gqls_1.CREATE_TEAM, {
|
|
31
|
+
input,
|
|
32
|
+
});
|
|
33
|
+
return createTeam.team;
|
|
34
|
+
}
|
|
35
|
+
exports.createTeam = createTeam;
|
|
36
|
+
/**
|
|
37
|
+
* Input to update teams
|
|
38
|
+
*
|
|
39
|
+
* @param client - GraphQL client
|
|
40
|
+
* @param input - Team input to update
|
|
41
|
+
* @param teamId - ID of team
|
|
42
|
+
*/
|
|
43
|
+
async function updateTeam(client, input, teamId) {
|
|
44
|
+
const { updateTeam } = await (0, makeGraphQLRequest_1.makeGraphQLRequest)(client, gqls_1.UPDATE_TEAM, {
|
|
45
|
+
input: {
|
|
46
|
+
id: teamId,
|
|
47
|
+
name: input.name,
|
|
48
|
+
description: input.description,
|
|
49
|
+
ssoTitle: input['sso-title'],
|
|
50
|
+
ssoDepartment: input['sso-department'],
|
|
51
|
+
ssoGroup: input['sso-group'],
|
|
52
|
+
scopes: input.scopes,
|
|
53
|
+
userEmails: input.users,
|
|
54
|
+
},
|
|
55
|
+
});
|
|
56
|
+
return updateTeam.team;
|
|
57
|
+
}
|
|
58
|
+
exports.updateTeam = updateTeam;
|
|
59
|
+
/**
|
|
60
|
+
* Sync the teams
|
|
61
|
+
*
|
|
62
|
+
* @param client - GraphQL client
|
|
63
|
+
* @param inputs - Inputs to create
|
|
64
|
+
* @returns True if run without error, returns false if an error occurred
|
|
65
|
+
*/
|
|
66
|
+
async function syncTeams(client, inputs) {
|
|
67
|
+
// Fetch existing
|
|
68
|
+
logger_1.logger.info(colors_1.default.magenta(`Syncing "${inputs.length}" teams...`));
|
|
69
|
+
let encounteredError = false;
|
|
70
|
+
// Fetch existing
|
|
71
|
+
const existingTeams = await (0, fetchAllTeams_1.fetchAllTeams)(client);
|
|
72
|
+
// Look up by name
|
|
73
|
+
const teamsByName = (0, keyBy_1.default)(existingTeams, 'name');
|
|
74
|
+
// Create new teams
|
|
75
|
+
const newTeams = inputs.filter((input) => !teamsByName[input.name]);
|
|
76
|
+
const updatedTeams = inputs.filter((input) => !!teamsByName[input.name]);
|
|
77
|
+
// Create new teams
|
|
78
|
+
await (0, bluebird_1.mapSeries)(newTeams, async (team) => {
|
|
79
|
+
try {
|
|
80
|
+
const newTeam = await createTeam(client, team);
|
|
81
|
+
teamsByName[newTeam.name] = newTeam;
|
|
82
|
+
logger_1.logger.info(colors_1.default.green(`Successfully created team "${team.name}"!`));
|
|
83
|
+
}
|
|
84
|
+
catch (err) {
|
|
85
|
+
encounteredError = true;
|
|
86
|
+
logger_1.logger.info(colors_1.default.red(`Failed to sync team "${team.name}"! - ${err.message}`));
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
// Update all teams
|
|
90
|
+
await (0, bluebird_1.mapSeries)(updatedTeams, async (input) => {
|
|
91
|
+
try {
|
|
92
|
+
const newTeam = await updateTeam(client, input, teamsByName[input.name].id);
|
|
93
|
+
teamsByName[newTeam.name] = newTeam;
|
|
94
|
+
logger_1.logger.info(colors_1.default.green(`Successfully updated team "${input.name}"!`));
|
|
95
|
+
}
|
|
96
|
+
catch (err) {
|
|
97
|
+
encounteredError = true;
|
|
98
|
+
logger_1.logger.info(colors_1.default.red(`Failed to sync team "${input.name}"! - ${err.message}`));
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
return !encounteredError;
|
|
102
|
+
}
|
|
103
|
+
exports.syncTeams = syncTeams;
|
|
104
|
+
//# sourceMappingURL=syncTeams.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"syncTeams.js","sourceRoot":"","sources":["../../src/graphql/syncTeams.ts"],"names":[],"mappings":"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"}
|