sysconfig.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.writeConfig = exports.readConfig = void 0;
  4. const tslib_1 = require("tslib");
  5. const utils_fs_1 = require("@ionic/utils-fs");
  6. const debug_1 = tslib_1.__importDefault(require("debug"));
  7. const path_1 = require("path");
  8. const cli_1 = require("./util/cli");
  9. const uuid_1 = require("./util/uuid");
  10. const debug = (0, debug_1.default)('capacitor:sysconfig');
  11. const SYSCONFIG_FILE = 'sysconfig.json';
  12. const SYSCONFIG_PATH = (0, path_1.resolve)(cli_1.ENV_PATHS.config, SYSCONFIG_FILE);
  13. async function readConfig() {
  14. debug('Reading from %O', SYSCONFIG_PATH);
  15. try {
  16. return await (0, utils_fs_1.readJSON)(SYSCONFIG_PATH);
  17. }
  18. catch (e) {
  19. if (e.code !== 'ENOENT') {
  20. throw e;
  21. }
  22. const sysconfig = {
  23. machine: (0, uuid_1.uuidv4)(),
  24. };
  25. await writeConfig(sysconfig);
  26. return sysconfig;
  27. }
  28. }
  29. exports.readConfig = readConfig;
  30. async function writeConfig(sysconfig) {
  31. debug('Writing to %O', SYSCONFIG_PATH);
  32. await (0, utils_fs_1.mkdirp)((0, path_1.dirname)(SYSCONFIG_PATH));
  33. await (0, utils_fs_1.writeJSON)(SYSCONFIG_PATH, sysconfig, { spaces: '\t' });
  34. }
  35. exports.writeConfig = writeConfig;