@rage-against-the-pixel/unity-cli 1.0.0
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/LICENSE +21 -0
- package/README.md +63 -0
- package/dist/android-sdk.d.ts +7 -0
- package/dist/android-sdk.js +144 -0
- package/dist/android-sdk.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +298 -0
- package/dist/index.js.map +1 -0
- package/dist/license-client.d.ts +25 -0
- package/dist/license-client.js +411 -0
- package/dist/license-client.js.map +1 -0
- package/dist/logging.d.ts +44 -0
- package/dist/logging.js +147 -0
- package/dist/logging.js.map +1 -0
- package/dist/unity-editor.d.ts +26 -0
- package/dist/unity-editor.js +333 -0
- package/dist/unity-editor.js.map +1 -0
- package/dist/unity-hub.d.ts +73 -0
- package/dist/unity-hub.js +902 -0
- package/dist/unity-hub.js.map +1 -0
- package/dist/unity-project.d.ts +13 -0
- package/dist/unity-project.js +87 -0
- package/dist/unity-project.js.map +1 -0
- package/dist/unity-version.d.ts +14 -0
- package/dist/unity-version.js +186 -0
- package/dist/unity-version.js.map +1 -0
- package/dist/utilities.d.ts +44 -0
- package/dist/utilities.js +291 -0
- package/dist/utilities.js.map +1 -0
- package/package.json +47 -0
|
@@ -0,0 +1,411 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.LicensingClient = exports.LicenseType = void 0;
|
|
37
|
+
const os = __importStar(require("os"));
|
|
38
|
+
const fs = __importStar(require("fs"));
|
|
39
|
+
const path = __importStar(require("path"));
|
|
40
|
+
const child_process_1 = require("child_process");
|
|
41
|
+
const logging_1 = require("./logging");
|
|
42
|
+
const unity_hub_1 = require("./unity-hub");
|
|
43
|
+
const utilities_1 = require("./utilities");
|
|
44
|
+
var LicenseType;
|
|
45
|
+
(function (LicenseType) {
|
|
46
|
+
LicenseType["personal"] = "personal";
|
|
47
|
+
LicenseType["professional"] = "professional";
|
|
48
|
+
LicenseType["floating"] = "floating";
|
|
49
|
+
})(LicenseType || (exports.LicenseType = LicenseType = {}));
|
|
50
|
+
class LicensingClient {
|
|
51
|
+
unityHub = new unity_hub_1.UnityHub();
|
|
52
|
+
licenseClientPath;
|
|
53
|
+
licenseVersion;
|
|
54
|
+
logger = logging_1.Logger.instance;
|
|
55
|
+
constructor(licenseVersion = undefined) {
|
|
56
|
+
this.licenseVersion = licenseVersion;
|
|
57
|
+
}
|
|
58
|
+
async init() {
|
|
59
|
+
try {
|
|
60
|
+
await fs.promises.access(this.unityHub.executable, fs.constants.R_OK);
|
|
61
|
+
await fs.promises.access(this.unityHub.rootDirectory, fs.constants.R_OK);
|
|
62
|
+
}
|
|
63
|
+
catch (error) {
|
|
64
|
+
await this.unityHub.Install();
|
|
65
|
+
}
|
|
66
|
+
const licensingClientExecutable = process.platform === 'win32' ? 'Unity.Licensing.Client.exe' : 'Unity.Licensing.Client';
|
|
67
|
+
const licenseClientPath = await (0, utilities_1.ResolveGlobToPath)([this.unityHub.rootDirectory, '**', licensingClientExecutable]);
|
|
68
|
+
this.licenseClientPath = licenseClientPath;
|
|
69
|
+
await fs.promises.access(this.licenseClientPath, fs.constants.X_OK);
|
|
70
|
+
return this.licenseClientPath;
|
|
71
|
+
}
|
|
72
|
+
getUnityCommonDir() {
|
|
73
|
+
const result = process.env['UNITY_COMMON_DIR'];
|
|
74
|
+
if (result) {
|
|
75
|
+
return result;
|
|
76
|
+
}
|
|
77
|
+
const platform = os.platform();
|
|
78
|
+
switch (platform) {
|
|
79
|
+
case 'win32': {
|
|
80
|
+
const programData = process.env['PROGRAMDATA'] || 'C:\\ProgramData';
|
|
81
|
+
return path.join(programData, 'Unity');
|
|
82
|
+
}
|
|
83
|
+
case 'darwin': {
|
|
84
|
+
return '/Library/Application Support/Unity';
|
|
85
|
+
}
|
|
86
|
+
case 'linux': {
|
|
87
|
+
const dataHome = process.env['XDG_DATA_HOME'] || path.join(os.homedir(), '.local', 'share');
|
|
88
|
+
return path.join(dataHome, 'unity3d', 'Unity');
|
|
89
|
+
}
|
|
90
|
+
default:
|
|
91
|
+
throw new Error(`Failed to determine Unity common directory for platform: ${platform}`);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
getExitCodeMessage(exitCode) {
|
|
95
|
+
switch (exitCode) {
|
|
96
|
+
case 0:
|
|
97
|
+
return 'OK';
|
|
98
|
+
case 1:
|
|
99
|
+
return 'Invalid arguments';
|
|
100
|
+
case 2:
|
|
101
|
+
return 'Invalid credentials';
|
|
102
|
+
case 3:
|
|
103
|
+
return 'Organization ID is missing';
|
|
104
|
+
case 4:
|
|
105
|
+
return 'Package Access Control List file download failed';
|
|
106
|
+
case 5:
|
|
107
|
+
return 'Context initialization failed';
|
|
108
|
+
case 6:
|
|
109
|
+
return 'Replication service initialization failed';
|
|
110
|
+
case 7:
|
|
111
|
+
return 'Orchestrator initialization failed';
|
|
112
|
+
case 8:
|
|
113
|
+
return 'Floating service initialization failed';
|
|
114
|
+
case 9:
|
|
115
|
+
return 'Package service initialization failed';
|
|
116
|
+
case 10:
|
|
117
|
+
return 'Access token initialization failed';
|
|
118
|
+
case 11:
|
|
119
|
+
return 'Multi client pipe server start failed';
|
|
120
|
+
case 12:
|
|
121
|
+
return 'License activation generation failed';
|
|
122
|
+
case 13:
|
|
123
|
+
return 'Syncing entitlements failed';
|
|
124
|
+
case 14:
|
|
125
|
+
return 'No valid entitlement found';
|
|
126
|
+
case 15:
|
|
127
|
+
return 'License update failed';
|
|
128
|
+
case 16:
|
|
129
|
+
return 'Unable to get list of user seats';
|
|
130
|
+
case 17:
|
|
131
|
+
return 'Seat activation or deactivation failed';
|
|
132
|
+
case 18:
|
|
133
|
+
return 'Getting entitlements failed';
|
|
134
|
+
case 19:
|
|
135
|
+
return 'Acquiring license failed';
|
|
136
|
+
case 20:
|
|
137
|
+
return 'Renewing floating lease failed';
|
|
138
|
+
case 21:
|
|
139
|
+
return 'Returning floating lease failed';
|
|
140
|
+
default:
|
|
141
|
+
return `Unknown Error`;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
async patchBinary(src, dest, searchValue, replaceValue) {
|
|
145
|
+
const data = await fs.promises.readFile(src);
|
|
146
|
+
let modified = false;
|
|
147
|
+
for (let i = 0; i <= data.length - searchValue.length; i++) {
|
|
148
|
+
if (data.subarray(i, i + searchValue.length).equals(searchValue)) {
|
|
149
|
+
replaceValue.copy(data, i);
|
|
150
|
+
modified = true;
|
|
151
|
+
i += searchValue.length - 1;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
if (!modified) {
|
|
155
|
+
throw new Error('Could not find the search value');
|
|
156
|
+
}
|
|
157
|
+
await fs.promises.writeFile(dest, data);
|
|
158
|
+
}
|
|
159
|
+
async patchLicenseVersion() {
|
|
160
|
+
if (!this.licenseVersion) {
|
|
161
|
+
// check if the UNITY_EDITOR_PATH is set. If it is, use it to determine the license version
|
|
162
|
+
const unityEditorPath = process.env['UNITY_EDITOR_PATH'];
|
|
163
|
+
if (unityEditorPath) {
|
|
164
|
+
const versionMatch = unityEditorPath.match(/(\d+)\.(\d+)\.(\d+)/);
|
|
165
|
+
if (!versionMatch) {
|
|
166
|
+
this.licenseVersion = '6.x'; // default to 6.x if version cannot be determined
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
switch (versionMatch[1]) {
|
|
170
|
+
case '4':
|
|
171
|
+
this.licenseVersion = '4.x';
|
|
172
|
+
break;
|
|
173
|
+
case '5':
|
|
174
|
+
this.licenseVersion = '5.x';
|
|
175
|
+
break;
|
|
176
|
+
default:
|
|
177
|
+
this.licenseVersion = '6.x'; // default to 6.x for any other
|
|
178
|
+
break;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
if (!this.licenseVersion) {
|
|
183
|
+
this.licenseVersion = '6.x'; // default to 6.x if not set
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
if (this.licenseVersion === '6.x') {
|
|
187
|
+
return;
|
|
188
|
+
}
|
|
189
|
+
if (this.licenseVersion !== '5.x' && this.licenseVersion !== '4.x') {
|
|
190
|
+
this.logger.warn(`Warning: Specified license version '${this.licenseVersion}' is unsupported, skipping`);
|
|
191
|
+
return;
|
|
192
|
+
}
|
|
193
|
+
if (!this.licenseClientPath) {
|
|
194
|
+
this.licenseClientPath = await this.init();
|
|
195
|
+
}
|
|
196
|
+
const clientDirectory = path.dirname(this.licenseClientPath);
|
|
197
|
+
const patchedDirectory = path.join(os.tmpdir(), `UnityLicensingClient-${this.licenseVersion.replace('.', '_')}`);
|
|
198
|
+
if (await fs.promises.mkdir(patchedDirectory, { recursive: true }) === undefined) {
|
|
199
|
+
this.logger.info('Unity Licensing Client was already patched, reusing');
|
|
200
|
+
}
|
|
201
|
+
else {
|
|
202
|
+
let found = false;
|
|
203
|
+
for (const fileName of await fs.promises.readdir(clientDirectory)) {
|
|
204
|
+
if (fileName === 'Unity.Licensing.EntitlementResolver.dll') {
|
|
205
|
+
await this.patchBinary(path.join(clientDirectory, fileName), path.join(patchedDirectory, fileName), Buffer.from('6.x', 'utf16le'), Buffer.from(this.licenseVersion, 'utf16le'));
|
|
206
|
+
found = true;
|
|
207
|
+
}
|
|
208
|
+
else {
|
|
209
|
+
await fs.promises.symlink(path.join(clientDirectory, fileName), path.join(patchedDirectory, fileName));
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
if (!found) {
|
|
213
|
+
throw new Error('Could not find Unity.Licensing.EntitlementResolver.dll in the unityhub installation');
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
this.licenseClientPath = path.join(patchedDirectory, path.basename(this.licenseClientPath));
|
|
217
|
+
const unityCommonDir = this.getUnityCommonDir();
|
|
218
|
+
const legacyLicenseFile = path.join(unityCommonDir, `Unity_v${this.licenseVersion}.ulf`);
|
|
219
|
+
await fs.promises.mkdir(unityCommonDir, { recursive: true });
|
|
220
|
+
try {
|
|
221
|
+
await fs.promises.symlink(path.join(patchedDirectory, 'Unity_lic.ulf'), legacyLicenseFile);
|
|
222
|
+
}
|
|
223
|
+
catch (error) {
|
|
224
|
+
if (error && error.code === 'EEXIST') {
|
|
225
|
+
await fs.promises.unlink(legacyLicenseFile);
|
|
226
|
+
await fs.promises.symlink(path.join(patchedDirectory, 'Unity_lic.ulf'), legacyLicenseFile);
|
|
227
|
+
}
|
|
228
|
+
else {
|
|
229
|
+
throw error;
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
process.env['UNITY_COMMON_DIR'] = patchedDirectory;
|
|
233
|
+
}
|
|
234
|
+
async exec(args) {
|
|
235
|
+
await this.patchLicenseVersion();
|
|
236
|
+
if (!this.licenseClientPath) {
|
|
237
|
+
this.licenseClientPath = await this.init();
|
|
238
|
+
}
|
|
239
|
+
let output = '';
|
|
240
|
+
let exitCode = 0;
|
|
241
|
+
function processOutput(data) {
|
|
242
|
+
const chunk = data.toString();
|
|
243
|
+
output += chunk;
|
|
244
|
+
}
|
|
245
|
+
this.logger.startGroup(`\x1b[34m${this.licenseClientPath} ${args.join(' ')}\x1b[0m`);
|
|
246
|
+
await fs.promises.access(this.licenseClientPath, fs.constants.R_OK | fs.constants.X_OK);
|
|
247
|
+
try {
|
|
248
|
+
exitCode = await new Promise((resolve, reject) => {
|
|
249
|
+
fs.accessSync(this.licenseClientPath, fs.constants.R_OK | fs.constants.X_OK);
|
|
250
|
+
const child = (0, child_process_1.spawn)(this.licenseClientPath, args, {
|
|
251
|
+
stdio: ['ignore', 'pipe', 'pipe']
|
|
252
|
+
});
|
|
253
|
+
process.once('SIGINT', () => child.kill('SIGINT'));
|
|
254
|
+
process.once('SIGTERM', () => child.kill('SIGTERM'));
|
|
255
|
+
child.stdout.on('data', processOutput);
|
|
256
|
+
child.stderr.on('data', processOutput);
|
|
257
|
+
child.on('error', (error) => reject(error));
|
|
258
|
+
child.on('close', (code) => {
|
|
259
|
+
process.stdout.write('\n');
|
|
260
|
+
resolve(code === null ? 0 : code);
|
|
261
|
+
});
|
|
262
|
+
});
|
|
263
|
+
}
|
|
264
|
+
finally {
|
|
265
|
+
const maskedOutput = this.maskSerialInOutput(output);
|
|
266
|
+
const splitLines = maskedOutput.split(/\r?\n/);
|
|
267
|
+
for (const line of splitLines) {
|
|
268
|
+
if (line === undefined || line.length === 0) {
|
|
269
|
+
continue;
|
|
270
|
+
}
|
|
271
|
+
this.logger.info(line);
|
|
272
|
+
}
|
|
273
|
+
this.logger.endGroup();
|
|
274
|
+
if (exitCode !== 0) {
|
|
275
|
+
const message = this.getExitCodeMessage(exitCode);
|
|
276
|
+
throw new Error(`License command failed with exit code ${exitCode}: ${message}`);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
return output;
|
|
280
|
+
}
|
|
281
|
+
maskSerialInOutput(output) {
|
|
282
|
+
return output.replace(/([\w-]+-XXXX)/g, (_, serial) => {
|
|
283
|
+
const maskedSerial = serial.slice(0, -4) + `XXXX`;
|
|
284
|
+
this.logger.mask(maskedSerial);
|
|
285
|
+
return serial;
|
|
286
|
+
});
|
|
287
|
+
}
|
|
288
|
+
async Version() {
|
|
289
|
+
await this.exec(['--version']);
|
|
290
|
+
}
|
|
291
|
+
async Activate(licenseType, servicesConfig = undefined, serial = undefined, username = undefined, password = undefined) {
|
|
292
|
+
let activeLicenses = await this.showEntitlements();
|
|
293
|
+
if (activeLicenses.includes(licenseType)) {
|
|
294
|
+
this.logger.info(`License of type '${licenseType}' is already active, skipping activation`);
|
|
295
|
+
return;
|
|
296
|
+
}
|
|
297
|
+
switch (licenseType) {
|
|
298
|
+
case LicenseType.floating: {
|
|
299
|
+
if (!servicesConfig) {
|
|
300
|
+
throw new Error('Services config path is required for floating license activation');
|
|
301
|
+
}
|
|
302
|
+
let servicesPath;
|
|
303
|
+
switch (process.platform) {
|
|
304
|
+
case 'win32':
|
|
305
|
+
servicesPath = path.join(process.env.PROGRAMDATA || '', 'Unity', 'config');
|
|
306
|
+
break;
|
|
307
|
+
case 'darwin':
|
|
308
|
+
servicesPath = path.join('/Library', 'Application Support', 'Unity', 'config');
|
|
309
|
+
break;
|
|
310
|
+
case 'linux':
|
|
311
|
+
servicesPath = path.join('/usr', 'share', 'unity3d', 'config');
|
|
312
|
+
break;
|
|
313
|
+
default:
|
|
314
|
+
throw new Error(`Unsupported platform: ${process.platform}`);
|
|
315
|
+
}
|
|
316
|
+
const servicesConfigPath = path.join(servicesPath, 'services-config.json');
|
|
317
|
+
await fs.promises.writeFile(servicesConfigPath, Buffer.from(servicesConfig, 'base64'));
|
|
318
|
+
return;
|
|
319
|
+
}
|
|
320
|
+
default: { // personal and professional license activation
|
|
321
|
+
if (!username) {
|
|
322
|
+
const encodedUsername = process.env.UNITY_USERNAME_BASE64;
|
|
323
|
+
if (!encodedUsername) {
|
|
324
|
+
throw Error('Username is required for Unity License Activation!');
|
|
325
|
+
}
|
|
326
|
+
username = Buffer.from(encodedUsername, 'base64').toString('utf-8');
|
|
327
|
+
}
|
|
328
|
+
const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
|
329
|
+
if (username.length === 0 || !emailRegex.test(username)) {
|
|
330
|
+
throw Error('Username must be your Unity ID email address!');
|
|
331
|
+
}
|
|
332
|
+
if (!password) {
|
|
333
|
+
const encodedPassword = process.env.UNITY_PASSWORD_BASE64;
|
|
334
|
+
if (!encodedPassword) {
|
|
335
|
+
throw Error('Password is required for Unity License Activation!');
|
|
336
|
+
}
|
|
337
|
+
password = Buffer.from(encodedPassword, 'base64').toString('utf-8');
|
|
338
|
+
}
|
|
339
|
+
if (password.length === 0) {
|
|
340
|
+
throw Error('Password is required for Unity License Activation!');
|
|
341
|
+
}
|
|
342
|
+
await this.activateLicense(licenseType, username, password, serial);
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
async Deactivate(licenseType) {
|
|
347
|
+
if (licenseType === LicenseType.floating) {
|
|
348
|
+
return;
|
|
349
|
+
}
|
|
350
|
+
const activeLicenses = await this.showEntitlements();
|
|
351
|
+
if (activeLicenses.includes(licenseType)) {
|
|
352
|
+
await this.returnLicense(licenseType);
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
async showEntitlements() {
|
|
356
|
+
const output = await this.exec([`--showEntitlements`]);
|
|
357
|
+
const matches = output.matchAll(/Product Name: (?<license>.+)/g);
|
|
358
|
+
const licenses = [];
|
|
359
|
+
for (const match of matches) {
|
|
360
|
+
if (match.groups?.license) {
|
|
361
|
+
switch (match.groups.license) {
|
|
362
|
+
case 'Unity Pro':
|
|
363
|
+
if (!licenses.includes(LicenseType.professional)) {
|
|
364
|
+
licenses.push(LicenseType.professional);
|
|
365
|
+
}
|
|
366
|
+
break;
|
|
367
|
+
case 'Unity Personal':
|
|
368
|
+
if (!licenses.includes(LicenseType.personal)) {
|
|
369
|
+
licenses.push(LicenseType.personal);
|
|
370
|
+
}
|
|
371
|
+
break;
|
|
372
|
+
default:
|
|
373
|
+
throw Error(`Unsupported license type: ${match.groups.license}`);
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
return licenses;
|
|
378
|
+
}
|
|
379
|
+
async activateLicense(licenseType, username, password, serial = undefined) {
|
|
380
|
+
const args = [
|
|
381
|
+
`--activate-ulf`,
|
|
382
|
+
`--username`, username,
|
|
383
|
+
`--password`, password
|
|
384
|
+
];
|
|
385
|
+
if (serial !== undefined && serial.length > 0) {
|
|
386
|
+
serial = serial.trim();
|
|
387
|
+
args.push(`--serial`, serial);
|
|
388
|
+
const maskedSerial = serial.slice(0, -4) + `XXXX`;
|
|
389
|
+
this.logger.mask(maskedSerial);
|
|
390
|
+
}
|
|
391
|
+
if (licenseType === LicenseType.personal) {
|
|
392
|
+
args.push(`--include-personal`);
|
|
393
|
+
}
|
|
394
|
+
await this.exec(args);
|
|
395
|
+
const activeLicenses = await this.showEntitlements();
|
|
396
|
+
if (!activeLicenses.includes(licenseType)) {
|
|
397
|
+
throw new Error(`Failed to activate license of type '${licenseType}'`);
|
|
398
|
+
}
|
|
399
|
+
this.logger.info(`Successfully activated license of type '${licenseType}'`);
|
|
400
|
+
}
|
|
401
|
+
async returnLicense(licenseType) {
|
|
402
|
+
await this.exec([`--return-ulf`]);
|
|
403
|
+
const activeLicenses = await this.showEntitlements();
|
|
404
|
+
if (activeLicenses.includes(licenseType)) {
|
|
405
|
+
throw new Error(`Failed to return license of type '${licenseType}'`);
|
|
406
|
+
}
|
|
407
|
+
this.logger.info(`Successfully returned license of type '${licenseType}'`);
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
exports.LicensingClient = LicensingClient;
|
|
411
|
+
//# sourceMappingURL=license-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"license-client.js","sourceRoot":"","sources":["../src/license-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export declare enum LogLevel {
|
|
2
|
+
DEBUG = "debug",
|
|
3
|
+
CI = "ci",
|
|
4
|
+
INFO = "info",
|
|
5
|
+
WARN = "warn",
|
|
6
|
+
ERROR = "error"
|
|
7
|
+
}
|
|
8
|
+
export declare class Logger {
|
|
9
|
+
logLevel: LogLevel;
|
|
10
|
+
private _ci;
|
|
11
|
+
static instance: Logger;
|
|
12
|
+
private constructor();
|
|
13
|
+
/**
|
|
14
|
+
* Logs a message to the console.
|
|
15
|
+
* @param level The log level for this message.
|
|
16
|
+
* @param message The message to log.
|
|
17
|
+
* @param optionalParams Additional parameters to log.
|
|
18
|
+
*/
|
|
19
|
+
log(level: LogLevel, message: any, optionalParams?: any[]): void;
|
|
20
|
+
/**
|
|
21
|
+
* Starts a log group. In CI environments that support grouping, this will create a collapsible group.
|
|
22
|
+
*/
|
|
23
|
+
startGroup(message: any, optionalParams?: any[], logLevel?: LogLevel): void;
|
|
24
|
+
/**
|
|
25
|
+
* Ends a log group. In CI environments that support grouping, this will end the current group.
|
|
26
|
+
*/
|
|
27
|
+
endGroup(): void;
|
|
28
|
+
/**
|
|
29
|
+
* Logs a message with CI level.
|
|
30
|
+
* @param message
|
|
31
|
+
* @param optionalParams
|
|
32
|
+
*/
|
|
33
|
+
ci(message: any, ...optionalParams: any[]): void;
|
|
34
|
+
debug(message: any, ...optionalParams: any[]): void;
|
|
35
|
+
info(message: any, ...optionalParams: any[]): void;
|
|
36
|
+
warn(message: any, ...optionalParams: any[]): void;
|
|
37
|
+
error(message: any, ...optionalParams: any[]): void;
|
|
38
|
+
private shouldLog;
|
|
39
|
+
/**
|
|
40
|
+
* Masks a string in the console output in CI environments that support it.
|
|
41
|
+
* @param message The string to mask.
|
|
42
|
+
*/
|
|
43
|
+
mask(message: string): void;
|
|
44
|
+
}
|
package/dist/logging.js
ADDED
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Logger = exports.LogLevel = void 0;
|
|
4
|
+
var LogLevel;
|
|
5
|
+
(function (LogLevel) {
|
|
6
|
+
LogLevel["DEBUG"] = "debug";
|
|
7
|
+
LogLevel["CI"] = "ci";
|
|
8
|
+
LogLevel["INFO"] = "info";
|
|
9
|
+
LogLevel["WARN"] = "warn";
|
|
10
|
+
LogLevel["ERROR"] = "error";
|
|
11
|
+
})(LogLevel || (exports.LogLevel = LogLevel = {}));
|
|
12
|
+
class Logger {
|
|
13
|
+
logLevel = LogLevel.INFO;
|
|
14
|
+
_ci;
|
|
15
|
+
static instance = new Logger();
|
|
16
|
+
constructor() {
|
|
17
|
+
if (process.env.GITHUB_ACTIONS) {
|
|
18
|
+
this._ci = 'GITHUB_ACTIONS';
|
|
19
|
+
this.logLevel = process.env.ACTIONS_STEP_DEBUG === 'true' ? LogLevel.DEBUG : LogLevel.CI;
|
|
20
|
+
}
|
|
21
|
+
Logger.instance = this;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Logs a message to the console.
|
|
25
|
+
* @param level The log level for this message.
|
|
26
|
+
* @param message The message to log.
|
|
27
|
+
* @param optionalParams Additional parameters to log.
|
|
28
|
+
*/
|
|
29
|
+
log(level, message, optionalParams = []) {
|
|
30
|
+
if (this.shouldLog(level)) {
|
|
31
|
+
switch (this._ci) {
|
|
32
|
+
case 'GITHUB_ACTIONS': {
|
|
33
|
+
switch (level) {
|
|
34
|
+
case LogLevel.DEBUG: {
|
|
35
|
+
message.toString().split('\n').forEach((line) => {
|
|
36
|
+
process.stdout.write(`::debug::${line}\n`, ...optionalParams);
|
|
37
|
+
});
|
|
38
|
+
break;
|
|
39
|
+
}
|
|
40
|
+
case LogLevel.CI:
|
|
41
|
+
case LogLevel.INFO: {
|
|
42
|
+
process.stdout.write(`${message}\n`, ...optionalParams);
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
default: {
|
|
46
|
+
process.stdout.write(`::${level}::${message}\n`, ...optionalParams);
|
|
47
|
+
break;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
break;
|
|
51
|
+
}
|
|
52
|
+
default: {
|
|
53
|
+
const clear = '\x1b[0m';
|
|
54
|
+
const stringColor = {
|
|
55
|
+
[LogLevel.DEBUG]: '\x1b[35m', // Purple
|
|
56
|
+
[LogLevel.INFO]: clear, // No color / White
|
|
57
|
+
[LogLevel.CI]: clear, // No color / White
|
|
58
|
+
[LogLevel.WARN]: '\x1b[33m', // Yellow
|
|
59
|
+
[LogLevel.ERROR]: '\x1b[31m', // Red
|
|
60
|
+
}[level] || clear; // Default to no color / White
|
|
61
|
+
process.stdout.write(`${stringColor}${message}${clear}\n`, ...optionalParams);
|
|
62
|
+
break;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Starts a log group. In CI environments that support grouping, this will create a collapsible group.
|
|
69
|
+
*/
|
|
70
|
+
startGroup(message, optionalParams = [], logLevel = LogLevel.INFO) {
|
|
71
|
+
switch (this._ci) {
|
|
72
|
+
case 'GITHUB_ACTIONS': {
|
|
73
|
+
// if there is newline in message, only use the first line for group title
|
|
74
|
+
// then print the rest of the lines inside the group in cyan color
|
|
75
|
+
const firstLine = message.toString().split('\n')[0];
|
|
76
|
+
const restLines = message.toString().split('\n').slice(1);
|
|
77
|
+
const cyan = '\x1b[36m';
|
|
78
|
+
const clear = '\x1b[0m';
|
|
79
|
+
process.stdout.write(`::group::${firstLine}\n`, ...optionalParams);
|
|
80
|
+
restLines.forEach(line => {
|
|
81
|
+
process.stdout.write(`${cyan}${line}${clear}\n`, ...optionalParams);
|
|
82
|
+
});
|
|
83
|
+
break;
|
|
84
|
+
}
|
|
85
|
+
default: {
|
|
86
|
+
// No grouping in standard console
|
|
87
|
+
this.log(logLevel, message, optionalParams);
|
|
88
|
+
break;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Ends a log group. In CI environments that support grouping, this will end the current group.
|
|
94
|
+
*/
|
|
95
|
+
endGroup() {
|
|
96
|
+
switch (this._ci) {
|
|
97
|
+
case 'GITHUB_ACTIONS': {
|
|
98
|
+
process.stdout.write(`::endgroup::\n`);
|
|
99
|
+
break;
|
|
100
|
+
}
|
|
101
|
+
default: {
|
|
102
|
+
break; // No grouping in standard console
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Logs a message with CI level.
|
|
108
|
+
* @param message
|
|
109
|
+
* @param optionalParams
|
|
110
|
+
*/
|
|
111
|
+
ci(message, ...optionalParams) {
|
|
112
|
+
this.log(LogLevel.CI, message, optionalParams);
|
|
113
|
+
}
|
|
114
|
+
debug(message, ...optionalParams) {
|
|
115
|
+
this.log(LogLevel.DEBUG, message, optionalParams);
|
|
116
|
+
}
|
|
117
|
+
info(message, ...optionalParams) {
|
|
118
|
+
this.log(LogLevel.INFO, message, optionalParams);
|
|
119
|
+
}
|
|
120
|
+
warn(message, ...optionalParams) {
|
|
121
|
+
this.log(LogLevel.WARN, message, optionalParams);
|
|
122
|
+
}
|
|
123
|
+
error(message, ...optionalParams) {
|
|
124
|
+
this.log(LogLevel.ERROR, message, optionalParams);
|
|
125
|
+
}
|
|
126
|
+
shouldLog(level) {
|
|
127
|
+
if (level === LogLevel.CI) {
|
|
128
|
+
return true;
|
|
129
|
+
}
|
|
130
|
+
const levelOrder = [LogLevel.DEBUG, LogLevel.INFO, LogLevel.WARN, LogLevel.ERROR];
|
|
131
|
+
return levelOrder.indexOf(level) >= levelOrder.indexOf(this.logLevel);
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Masks a string in the console output in CI environments that support it.
|
|
135
|
+
* @param message The string to mask.
|
|
136
|
+
*/
|
|
137
|
+
mask(message) {
|
|
138
|
+
switch (this._ci) {
|
|
139
|
+
case 'GITHUB_ACTIONS': {
|
|
140
|
+
process.stdout.write(`::add-mask::${message}\n`);
|
|
141
|
+
break;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
exports.Logger = Logger;
|
|
147
|
+
//# sourceMappingURL=logging.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logging.js","sourceRoot":"","sources":["../src/logging.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export interface EditorCommand {
|
|
2
|
+
args: string[];
|
|
3
|
+
projectPath?: string;
|
|
4
|
+
}
|
|
5
|
+
export declare class UnityEditor {
|
|
6
|
+
editorPath: string;
|
|
7
|
+
editorRootPath: string;
|
|
8
|
+
private procInfo;
|
|
9
|
+
private pidFile;
|
|
10
|
+
private logger;
|
|
11
|
+
private autoAddNoGraphics;
|
|
12
|
+
constructor(editorPath: string);
|
|
13
|
+
/**
|
|
14
|
+
* Get the full path to a Unity project template based on the provided template name or regex pattern.
|
|
15
|
+
* @param template The name or regex pattern of the template to find.
|
|
16
|
+
* @returns The full path to the matching template file.
|
|
17
|
+
* @throws Error if the template directory does not exist, no templates are found, or no matching template is found.
|
|
18
|
+
*/
|
|
19
|
+
GetTemplatePath(template: string): string;
|
|
20
|
+
Run(command: EditorCommand): Promise<void>;
|
|
21
|
+
GetLogsDirectory(projectPath: string | undefined): string;
|
|
22
|
+
GenerateLogFilePath(projectPath: string | undefined, prefix?: string | undefined): string;
|
|
23
|
+
private exec;
|
|
24
|
+
private tryKillEditorProcess;
|
|
25
|
+
static GetEditorRootPath(editorPath: string): string;
|
|
26
|
+
}
|