index.js 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. const { downloadPreviousBuild, downloadPublicSuffixList } = require('./download-previous-build');
  2. const { buildCommon } = require('./build-common');
  3. const { buildAntiBogusDomain } = require('./build-anti-bogus-domain');
  4. const { buildAppleCdn } = require('./build-apple-cdn');
  5. const { buildCdnConf } = require('./build-cdn-conf');
  6. const { buildPhishingDomainSet } = require('./build-phishing-domainset');
  7. const { buildRejectDomainSet } = require('./build-reject-domainset');
  8. const { buildTelegramCIDR } = require('./build-telegram-cidr');
  9. const { buildChnCidr } = require('./build-chn-cidr');
  10. const { buildSpeedtestDomainSet } = require('./build-speedtest-domainset');
  11. const { buildInternalCDNDomains } = require('./build-internal-cdn-rules');
  12. const { buildInternalReverseChnCIDR } = require('./build-internal-reverse-chn-cidr');
  13. const { buildInternalChnDomains } = require('./build-internal-chn-domains');
  14. const { buildDomesticRuleset } = require('./build-domestic-ruleset');
  15. const { validate } = require('./validate-domainset');
  16. const { buildPublicHtml } = require('./build-public');
  17. (async () => {
  18. // download-previous-build
  19. const downloadPreviousBuildPromise = downloadPreviousBuild();
  20. const downloadPublicSuffixListPromise = downloadPublicSuffixList();
  21. // build:common
  22. const buildCommonPromise = downloadPreviousBuildPromise.then(() => buildCommon());
  23. // build:anti-bogus-domain
  24. const buildAntiBogusDomainPromise = downloadPreviousBuildPromise.then(() => buildAntiBogusDomain());
  25. // build:apple-cdn
  26. const buildAppleCdnPromise = downloadPreviousBuildPromise.then(() => buildAppleCdn());
  27. // build:cdn-conf
  28. const buildCdnConfPromise = Promise.all([
  29. downloadPreviousBuildPromise,
  30. downloadPublicSuffixListPromise
  31. ]).then(() => buildCdnConf());
  32. // build:phishing-domainset
  33. const buildPhilishingDomainsetPromise = downloadPreviousBuildPromise.then(() => buildPhishingDomainSet());
  34. // build:reject-domainset
  35. const buildRejectDomainSetPromise = Promise.all([
  36. downloadPreviousBuildPromise,
  37. downloadPublicSuffixListPromise,
  38. buildPhilishingDomainsetPromise
  39. ]).then(() => buildRejectDomainSet());
  40. // build:telegram-cidr
  41. const buildTelegramCIDRPromise = downloadPreviousBuildPromise.then(() => buildTelegramCIDR());
  42. // build:chn-cidr
  43. const buildChnCidrPromise = downloadPreviousBuildPromise.then(() => buildChnCidr());
  44. // build:speedtest-domainset
  45. const buildSpeedtestDomainSetPromise = downloadPreviousBuildPromise.then(() => buildSpeedtestDomainSet());
  46. // build:internal-cdn-rules
  47. const buildInternalCDNDomainsPromise = Promise.all([
  48. buildCommonPromise,
  49. buildCdnConfPromise
  50. ]).then(() => buildInternalCDNDomains());
  51. // build:internal-reverse-chn-cidr
  52. const buildInternalReverseChnCIDRPromise = buildInternalReverseChnCIDR();
  53. // build:internal-chn-domains
  54. const buildInternalChnDomainsPromise = buildInternalChnDomains();
  55. // build:domestic-ruleset
  56. const buildDomesticRulesetPromise = downloadPreviousBuildPromise.then(() => buildDomesticRuleset());
  57. await Promise.all([
  58. downloadPreviousBuildPromise,
  59. downloadPublicSuffixListPromise,
  60. buildCommonPromise,
  61. buildAntiBogusDomainPromise,
  62. buildAppleCdnPromise,
  63. buildCdnConfPromise,
  64. buildPhilishingDomainsetPromise,
  65. buildRejectDomainSetPromise,
  66. buildTelegramCIDRPromise,
  67. buildChnCidrPromise,
  68. buildSpeedtestDomainSetPromise,
  69. buildInternalCDNDomainsPromise,
  70. buildInternalReverseChnCIDRPromise,
  71. buildInternalChnDomainsPromise,
  72. buildDomesticRulesetPromise
  73. ]);
  74. await Promise.all([
  75. buildPublicHtml(),
  76. validate()
  77. ]);
  78. })();