phetsims / perennial

Maintenance tools that won't change with different versions of chipper checked out
MIT License
2 stars 5 forks source link

Maintenance.js - option to build modified branches instead of all possible release branches #322

Open jessegreenberg opened 1 year ago

jessegreenberg commented 1 year ago

For a batch maintenance release I found this patch to Maintenance.js helpful to build all modified branches for my maintenance instance instead of all possible release branches.

@jonathanolson is this OK to commit? If not, feel free to close.

Subject: [PATCH] Use Checkbox directly, remove superclass, see https://github.com/phetsims/gravity-force-lab-basics/issues/324"
---
Index: js/common/Maintenance.js
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/js/common/Maintenance.js b/js/common/Maintenance.js
--- a/js/common/Maintenance.js  (revision 89ea3ce64cc6c5cfe2959dd52619891057cc1be9)
+++ b/js/common/Maintenance.js  (date 1684537417710)
@@ -158,10 +158,13 @@

     /**
      * Builds all release branches (so that the state of things can be checked). Puts in in perennial/build.
+     *
+     * @param {boolean} [onlyModifiedBranches] - only builds branches modified by the current maintenance object
      * @public
      */
-    static async buildAll() {
-      const releaseBranches = await Maintenance.getMaintenanceBranches();
+    static async buildAll( onlyModifiedBranches = false ) {
+      const maintenance = Maintenance.load();
+      const releaseBranches = onlyModifiedBranches ? maintenance.modifiedBranches : await Maintenance.getMaintenanceBranches();

       const failed = [];