mirror of
https://github.com/game-ci/unity-builder.git
synced 2026-02-03 07:29:07 +08:00
fixes
This commit is contained in:
99
dist/index.js
generated
vendored
99
dist/index.js
generated
vendored
@@ -766,6 +766,7 @@ const shared_workspace_locking_1 = __importDefault(__nccwpck_require__(71372));
|
||||
const follow_log_stream_service_1 = __nccwpck_require__(40266);
|
||||
const cloud_runner_result_1 = __importDefault(__nccwpck_require__(69567));
|
||||
const cloud_runner_options_1 = __importDefault(__nccwpck_require__(66965));
|
||||
const resource_tracking_1 = __importDefault(__nccwpck_require__(28819));
|
||||
class CloudRunner {
|
||||
static get isCloudRunnerEnvironment() {
|
||||
return process.env[`GITHUB_ACTIONS`] !== `true`;
|
||||
@@ -777,6 +778,8 @@ class CloudRunner {
|
||||
cloud_runner_logger_1.default.setup();
|
||||
cloud_runner_logger_1.default.log(`Setting up cloud runner`);
|
||||
CloudRunner.buildParameters = buildParameters;
|
||||
resource_tracking_1.default.logAllocationSummary('setup');
|
||||
await resource_tracking_1.default.logDiskUsageSnapshot('setup');
|
||||
if (CloudRunner.buildParameters.githubCheckId === ``) {
|
||||
CloudRunner.buildParameters.githubCheckId = await github_1.default.createGitHubCheck(CloudRunner.buildParameters.buildGuid);
|
||||
}
|
||||
@@ -1405,6 +1408,9 @@ class CloudRunnerOptions {
|
||||
static get asyncCloudRunner() {
|
||||
return CloudRunnerOptions.getInput('asyncCloudRunner') === 'true';
|
||||
}
|
||||
static get resourceTracking() {
|
||||
return CloudRunnerOptions.getInput('resourceTracking') === 'true';
|
||||
}
|
||||
static get useLargePackages() {
|
||||
return CloudRunnerOptions.getInput(`useLargePackages`) === `true`;
|
||||
}
|
||||
@@ -3063,6 +3069,7 @@ const garbage_collection_service_1 = __nccwpck_require__(53859);
|
||||
const task_service_1 = __nccwpck_require__(67205);
|
||||
const cloud_runner_options_1 = __importDefault(__nccwpck_require__(66965));
|
||||
const aws_client_factory_1 = __nccwpck_require__(30161);
|
||||
const resource_tracking_1 = __importDefault(__nccwpck_require__(28819));
|
||||
class AWSBuildEnvironment {
|
||||
constructor(buildParameters) {
|
||||
this.baseStackName = buildParameters.awsStackName;
|
||||
@@ -3115,6 +3122,8 @@ class AWSBuildEnvironment {
|
||||
}
|
||||
async runTaskInWorkflow(buildGuid, image, commands, mountdir, workingdir, environment, secrets) {
|
||||
process.env.AWS_REGION = __1.Input.region;
|
||||
resource_tracking_1.default.logAllocationSummary('aws workflow');
|
||||
await resource_tracking_1.default.logDiskUsageSnapshot('aws workflow (host)');
|
||||
aws_client_factory_1.AwsClientFactory.getECS();
|
||||
const CF = aws_client_factory_1.AwsClientFactory.getCloudFormation();
|
||||
aws_client_factory_1.AwsClientFactory.getKinesis();
|
||||
@@ -3648,6 +3657,7 @@ const cloud_runner_1 = __importDefault(__nccwpck_require__(79144));
|
||||
const remote_client_logger_1 = __nccwpck_require__(59412);
|
||||
const kubernetes_role_1 = __nccwpck_require__(88231);
|
||||
const cloud_runner_system_1 = __nccwpck_require__(4197);
|
||||
const resource_tracking_1 = __importDefault(__nccwpck_require__(28819));
|
||||
class Kubernetes {
|
||||
constructor(buildParameters) {
|
||||
this.buildGuid = '';
|
||||
@@ -3740,6 +3750,9 @@ class Kubernetes {
|
||||
async runTaskInWorkflow(buildGuid, image, commands, mountdir, workingdir, environment, secrets) {
|
||||
try {
|
||||
cloud_runner_logger_1.default.log('Cloud Runner K8s workflow!');
|
||||
resource_tracking_1.default.logAllocationSummary('k8s workflow');
|
||||
await resource_tracking_1.default.logDiskUsageSnapshot('k8s workflow (host)');
|
||||
await resource_tracking_1.default.logK3dNodeDiskUsage('k8s workflow (before job)');
|
||||
// Setup
|
||||
const id = __1.BuildParameters && __1.BuildParameters.shouldUseRetainedWorkspaceMode(this.buildParameters)
|
||||
? cloud_runner_1.default.lockedWorkspace
|
||||
@@ -6434,9 +6447,11 @@ const github_1 = __importDefault(__nccwpck_require__(83654));
|
||||
const build_parameters_1 = __importDefault(__nccwpck_require__(80787));
|
||||
const cli_1 = __nccwpck_require__(55651);
|
||||
const cloud_runner_options_1 = __importDefault(__nccwpck_require__(66965));
|
||||
const resource_tracking_1 = __importDefault(__nccwpck_require__(28819));
|
||||
class RemoteClient {
|
||||
static async setupRemoteClient() {
|
||||
cloud_runner_logger_1.default.log(`bootstrap game ci cloud runner...`);
|
||||
await resource_tracking_1.default.logDiskUsageSnapshot('remote-cli-pre-build (start)');
|
||||
if (!(await RemoteClient.handleRetainedWorkspace())) {
|
||||
await RemoteClient.bootstrapRepository();
|
||||
}
|
||||
@@ -6597,6 +6612,7 @@ class RemoteClient {
|
||||
// that read from the log file rather than stdout
|
||||
remote_client_logger_1.RemoteClientLogger.log(successMessage);
|
||||
cloud_runner_logger_1.default.log(successMessage);
|
||||
await resource_tracking_1.default.logDiskUsageSnapshot('remote-cli-post-build (end)');
|
||||
return new Promise((result) => result(``));
|
||||
}
|
||||
static async runCustomHookFiles(hookLifecycle) {
|
||||
@@ -7217,6 +7233,89 @@ FollowLogStreamService.errors = ``;
|
||||
FollowLogStreamService.DidReceiveEndOfTransmission = false;
|
||||
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 28819:
|
||||
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
|
||||
|
||||
"use strict";
|
||||
|
||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
||||
const cloud_runner_logger_1 = __importDefault(__nccwpck_require__(42864));
|
||||
const cloud_runner_options_1 = __importDefault(__nccwpck_require__(66965));
|
||||
const cloud_runner_1 = __importDefault(__nccwpck_require__(79144));
|
||||
const cloud_runner_system_1 = __nccwpck_require__(4197);
|
||||
class ResourceTracking {
|
||||
static isEnabled() {
|
||||
return (cloud_runner_options_1.default.resourceTracking ||
|
||||
cloud_runner_options_1.default.cloudRunnerDebug ||
|
||||
process.env['cloudRunnerTests'] === 'true');
|
||||
}
|
||||
static logAllocationSummary(context) {
|
||||
if (!ResourceTracking.isEnabled()) {
|
||||
return;
|
||||
}
|
||||
const buildParameters = cloud_runner_1.default.buildParameters;
|
||||
const allocations = {
|
||||
providerStrategy: buildParameters.providerStrategy,
|
||||
containerCpu: buildParameters.containerCpu,
|
||||
containerMemory: buildParameters.containerMemory,
|
||||
dockerCpuLimit: buildParameters.dockerCpuLimit,
|
||||
dockerMemoryLimit: buildParameters.dockerMemoryLimit,
|
||||
kubeVolumeSize: buildParameters.kubeVolumeSize,
|
||||
kubeStorageClass: buildParameters.kubeStorageClass,
|
||||
kubeVolume: buildParameters.kubeVolume,
|
||||
containerNamespace: buildParameters.containerNamespace,
|
||||
storageProvider: buildParameters.storageProvider,
|
||||
rcloneRemote: buildParameters.rcloneRemote,
|
||||
dockerWorkspacePath: buildParameters.dockerWorkspacePath,
|
||||
cacheKey: buildParameters.cacheKey,
|
||||
maxRetainedWorkspaces: buildParameters.maxRetainedWorkspaces,
|
||||
useCompressionStrategy: buildParameters.useCompressionStrategy,
|
||||
useLargePackages: buildParameters.useLargePackages,
|
||||
ephemeralStorageRequest: process.env['cloudRunnerTests'] === 'true' ? 'not set' : '2Gi',
|
||||
};
|
||||
cloud_runner_logger_1.default.log(`[ResourceTracking] Allocation summary (${context}):`);
|
||||
cloud_runner_logger_1.default.log(JSON.stringify(allocations, undefined, 2));
|
||||
}
|
||||
static async logDiskUsageSnapshot(context) {
|
||||
if (!ResourceTracking.isEnabled()) {
|
||||
return;
|
||||
}
|
||||
cloud_runner_logger_1.default.log(`[ResourceTracking] Disk usage snapshot (${context})`);
|
||||
await ResourceTracking.runAndLog('df -h', 'df -h');
|
||||
await ResourceTracking.runAndLog('du -sh .', 'du -sh .');
|
||||
await ResourceTracking.runAndLog('du -sh ./cloud-runner-cache', 'du -sh ./cloud-runner-cache');
|
||||
await ResourceTracking.runAndLog('du -sh ./temp', 'du -sh ./temp');
|
||||
await ResourceTracking.runAndLog('du -sh ./logs', 'du -sh ./logs');
|
||||
}
|
||||
static async logK3dNodeDiskUsage(context) {
|
||||
if (!ResourceTracking.isEnabled()) {
|
||||
return;
|
||||
}
|
||||
const nodes = ['k3d-unity-builder-agent-0', 'k3d-unity-builder-server-0'];
|
||||
cloud_runner_logger_1.default.log(`[ResourceTracking] K3d node disk usage (${context})`);
|
||||
for (const node of nodes) {
|
||||
await ResourceTracking.runAndLog(`k3d node ${node}`, `docker exec ${node} sh -c "df -h /var/lib/rancher/k3s 2>/dev/null || df -h / 2>/dev/null || true" || true`);
|
||||
}
|
||||
}
|
||||
static async runAndLog(label, command) {
|
||||
try {
|
||||
const output = await cloud_runner_system_1.CloudRunnerSystem.Run(command, true, true);
|
||||
const trimmed = output.trim();
|
||||
cloud_runner_logger_1.default.log(`[ResourceTracking] ${label}:\n${trimmed || 'no output'}`);
|
||||
}
|
||||
catch (error) {
|
||||
cloud_runner_logger_1.default.log(`[ResourceTracking] ${label} failed: ${error?.message || error}`);
|
||||
}
|
||||
}
|
||||
}
|
||||
exports["default"] = ResourceTracking;
|
||||
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 71372:
|
||||
|
||||
2
dist/index.js.map
generated
vendored
2
dist/index.js.map
generated
vendored
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user