config.js 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. {% macro setup(values) %}
  2. const cfg_path = "/wiki/config.yml";
  3. const fs = require('fs-extra');
  4. const yaml = require('js-yaml');
  5. console.log(`Updating [${cfg_path}] file...`);
  6. if (!fs.existsSync(cfg_path)) {
  7. console.log(`File [${cfg_path}] does not exist.`);
  8. process.exit(1);
  9. }
  10. console.log(`File [${cfg_path}] exists!`);
  11. const data = yaml.safeLoad(fs.readFileSync(cfg_path, 'utf8'));
  12. data["bindIP"] = "0.0.0.0";
  13. data["port"] = {{ values.network.http_port.port_number }};
  14. if (!data["db"]) data["db"] = {};
  15. data["db"]["type"] = "postgres";
  16. data["db"]["host"] = "{{ values.consts.postgres_container_name }}";
  17. data["db"]["port"] = 5432;
  18. data["db"]["user"] = "{{ values.consts.db_user }}";
  19. data["db"]["pass"] = "{{ values.wiki_js.db_password }}";
  20. data["db"]["db"] = "{{ values.consts.db_name }}";
  21. if (!data["ssl"]) data["ssl"] = {};
  22. data["ssl"]["enabled"] = {{ "true" if values.network.certificate_id else "false" }};
  23. {% if values.network.certificate_id %}
  24. data["ssl"]["provider"] = "custom";
  25. data["ssl"]["format"] = "pem";
  26. data["ssl"]["port"] = {{ values.network.https_port.port_number }};
  27. data["ssl"]["key"] = "{{ values.consts.ssl_key_path }}";
  28. data["ssl"]["cert"] = "{{ values.consts.ssl_cert_path }}";
  29. {% endif %}
  30. fs.writeFileSync(cfg_path, yaml.safeDump(data));
  31. console.log("Done!\n\n");
  32. {% endmacro %}