Skip to content

Commit

Permalink
feat(tool): Add update rule version
Browse files Browse the repository at this point in the history
  • Loading branch information
azu committed Nov 8, 2017
1 parent 47b3bb6 commit 334b8ce
Showing 1 changed file with 19 additions and 2 deletions.
21 changes: 19 additions & 2 deletions tools/update-rule-preset.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,15 @@ const fs = require("fs");
const path = require("path");
const getPackages = require("./lib/package-list").getPackages;
const blacklistModules = ["textlint-report-helper-for-google-preset", "textlint-rule-preset-google"];
const updatePackage = (pkg, dependencies) => {
const updatePackageDepencencies = (pkg, dependencies) => {
const updatedDependencies = Object.assign({}, pkg.dependencies, dependencies);
return Object.assign({}, pkg, {
dependencies: updatedDependencies
});
};
const updatePackage = (pkg, updatablePkg) => {
return Object.assign({}, pkg, updatablePkg);
};
/**
* Update textlint-rule-preset-google
*/
Expand Down Expand Up @@ -58,12 +61,26 @@ module.exports = ${JSON.stringify(

const monorepoVersion = require("../lerna.json").version;
const packagesDirectory = path.join(__dirname, "../packages");
// each package version fixed

/**
* Version = lerna.version
*/
getPackages().forEach(packageDirectory => {
const packageJSONPath = path.join(packageDirectory, "package.json");
const pkg = JSON.parse(fs.readFileSync(packageJSONPath, "utf-8"));
const newPkg = updatePackage(pkg, {
version: monorepoVersion
});
fs.writeFileSync(packageJSONPath, JSON.stringify(newPkg, null, 2), "utf-8");
});

// package.json
console.info("Start to update package.json");
const rulePresetPkgPath = path.join(packagesDirectory, "textlint-rule-preset-google/package.json");
const rulePresetPkg = require(rulePresetPkgPath);
const ruleDependencies = createRuleDependencies(packageNames, monorepoVersion);
const newRulePresetPkg = updatePackage(rulePresetPkg, ruleDependencies);
const newRulePresetPkg = updatePackageDepencencies(rulePresetPkg, ruleDependencies);
fs.writeFileSync(rulePresetPkgPath, JSON.stringify(newRulePresetPkg, null, 2), "utf-8");
console.info("Updated package.json");
// src
Expand Down

0 comments on commit 334b8ce

Please sign in to comment.