123456789101112131415161718192021222324252627282930313233343536373839404142 |
- /**
- * Copyright 2013-2022 the PM2 project authors. All rights reserved.
- * Use of this source code is governed by a license that
- * can be found in the LICENSE file.
- */
- var url = require('url');
- // Inject custom modules
- var ProcessUtils = require('./ProcessUtils')
- ProcessUtils.injectModules()
- if (typeof(process.env.source_map_support) != "undefined" &&
- process.env.source_map_support !== "false") {
- require('source-map-support').install();
- }
- // Rename the process
- process.title = process.env.PROCESS_TITLE || 'node ' + process.env.pm_exec_path;
- if (process.connected &&
- process.send &&
- process.versions &&
- process.versions.node)
- process.send({
- 'node_version': process.versions.node
- });
- // Require the real application
- if (process.env.pm_exec_path) {
- if (ProcessUtils.isESModule(process.env.pm_exec_path) === true) {
- import(url.pathToFileURL(process.env.pm_exec_path));
- }
- else
- require('module')._load(process.env.pm_exec_path, null, true);
- }
- else
- throw new Error('Could not _load() the script');
- // Change some values to make node think that the user's application
- // was started directly such as `node app.js`
- process.mainModule = process.mainModule || {};
- process.mainModule.loaded = false;
- require.main = process.mainModule;
|